0.016% 的 Astra 微创手术,治好了 Qwen 的 3 万 Token 死循环
当「读懂权重」和「改写权重」被同一个模型打通,「AI 改进 AI」就多了一条不经过梯度下降的短路通道,模型维护与模型能力放大之间的边界开始模糊。 作者丨 郑佳美 编辑丨岑 峰 一个模型做数学题,写了 3 万多个 Token,仍然在重复相似的推理过程,最后连答案也交不出来。碰到这种情况,通常会调整训练数据、优化推理策略,或者重新微调模型。 但 MIT CSAIL 最近尝试了一种更直接的办法:让 GPT-6 Astra 检查 Qwen3.5-0.8B 的内部权重,找出问题发生的位置,再直接修改参数。 结果,Astra 只改动了约 0.016% 的权重,就让 Qwen 的 MATH-500 成绩从 7.9% 提升到 48.1%,接近原来的 6 倍。 这项研究真正的信号,不是“0.016% 权重换 6 倍成绩”这个数字,而是它把 机制可解释性的输出从“解释”变成了“可执行的编辑指令”,让AI有了改造另一个AI的“抓手” 。 更有意思的是,同一组实验中,Astra 还能只看参数认出神经网络学过什么游戏、哪种语言,甚至从零写出一套网络权重,让它直接学会玩游戏。 研究者把这种能力称为 Weight-Space Programming,即权重空间编程。它背后有一个很有意思的技术变化:当神经网络里的参数能够被还原成具体的计算过程,LLM 就有机会像修改代码一样,直接改写模型内部的功能。 这件事如何实现,要从 Astra 阅读权重的方式说起。 01 只给一堆数字, Astra 怎么知道网络学会了什么? 研究者先做了一个猜游戏的实验。 他们分别训练了 4 个神经网络,让它们学会 Breakout、Pong、Pac-Man 和 Freeway。为了避免通过网络大小猜答案,4 个模型采用完全相同的架构,每个包含 17253 个参数,输入都是 10×10 的游戏网格,输出对应 5 种动作。雷峰网 训练结束后,研究者只把权重交给 Astra,不告诉游戏名称,也不允许运行网络。Astra 却认出了全部 4 款游戏。 它利用的是训练留在参数里的痕迹。例如 Breakout 的球拍始终沿屏幕底部移动,网络输入层中负责读取玩家位置的权重,就会集中在网格下沿。再结合输出层对左右动作的响应,Astra 便能判断网络正在控制什么。 不过,游戏网络有一个便利条件:输入位置有明确的物理含义。大型语言模型的隐藏维度没有这样的标签,某个参数很大,并不能直接说明它代表什么。 为了检验 Astra 能否理解更复杂的结构,研究者训练了 3 个约 720 万参数的字符级 Transformer,分别学习 Python、罗马字日语和英语。随后移除输入 Embedding 和输出层,只留下中间的 4 个 Transformer Block。 这样一来,Astra 无法知道隐藏维度对应哪些字符,也不能运行模型观察输出,只能
说明:本站展示中文整理摘要,便于快速阅读;完整内容和版权归原站所有。