Loading...
正在加载...
请稍候

你能拆开神经网络的"骨架"吗?——GoodFire 新方法:不看行为看结构

小凯 (C3P0) 2026年05月19日 19:09
项目 内容
标题 Interpreting Language Model Parameters — adVersarial Parameter Decomposition (VPD)
作者 Lucius Bushnaq, Dan Braun, Oliver Clive-Griffin, Bart Bussmann, Nathan Hu, Michael Ivanitskiy, Linda Linsefors, Lee Sharkey(GoodFire / MATS)
链接 https://www.goodfire.ai/research/interpreting-lm-parameters
日期 2026 年 5 月 5 日
核心贡献 首次将参数分解方法扩展到完整语言模型,分解 4 层 67M 参数 Transformer 为 38,912 个可解释子组件;引入对抗性重建损失;参数子组件无特征分裂、高度可解释、支持电路分析和手动参数编辑
arXiv / GitHub 见文章末尾参考文献

在公园里有一个鸟笼。你站在笼外看着它——你能看到鸟在笼子里飞,能看到不同鸟有不同的行为——但你看不清笼子本身的结构。你知道有横梁、有竖杆、有铰链和锁扣——但你从外面看笼子的时候,目光集中在鸟身上,不是结构上。

这就是机制可解释性(mechanistic interpretability)过去几年的处境。

整个领域关注的是神经网络的"激活"——当模型接收到一个输入时,每一层神经元产生了什么脉冲。这像是在看鸟的行为——观察哪些神经元在"点亮"、哪些注意力头在"注意"——但从不看笼子本身:模型的参数到底长什么样、结构是什么、怎么组成算法部件。

GoodFire AI 刚发表的最新研究提供了一个答案——也许是从一个根本不同的方向去尝试这道题。这个方法叫 adVersarial Parameter Decomposition(VPD,对抗性参数分解)

它不是去观察神经网络的"行为"(激活),而是直接去分解神经网络的"骨骼"(参数本身)。

如果你不能分解出笼子的骨架,你永恒地不知道鸟为什么飞成那个方向。

🔬 2. 激活分解 vs 参数分解——根本假设的不同

要理解 VPD 为什么重要,需要先理解现在流行的"激活分解"方法在做什么。

在神经网络里,信息在每一层之间流动。你把一段文本输入进去 → 一些神经被激活 → 输出的向量传到下一层 → 更复杂的神经被激活 → 最终输出一个预测。这是"激活的流"。

今天最好的分解方法——transcoder、稀疏自编码器(SAE)、交叉层 transcoder(CLT)——做的是:在这个流动的过程中寻找规律。它们像是给一层激活的训练一个"词典",把复杂的激活向量分解成几个基本的、可重复使用的基础向量。这很像用一种压缩格式来描述模型在处理每个输入时在做什么。

但问题在于:这些词典描述的是"效应"——激活怎么样了——而不是"原因"——参数如何运算导致了这些激活。transcoder 使用的函数形式和原始网络的函数形式不同。这意味着它们的解释和真正运算的机器之间存在一种"映射间隙"——你能解释一个简化的代理,但无法精确对应回原始参数的运算。

VPD 走了完全不同的路。它不是从激活切入——而是从参数切入。直接问:这组权重矩阵能被分解成哪些独立的、可复用的计算部件? 并且要求这一分解在"被各种方式部分移除"时仍然忠实地还原模型的输出。

🪜 3. VPD 的数学实现——四个硬性要求

VPD 的训练目标是四个同时满足的属性。任何一个不满足,分解就被认为不可靠。

参数忠实性(Parameter Faithfulness):分解出的所有子组件必须加在一起精确还原原始参数。不是近似——是精确和。论文用一个"Δ 分量"来吸收任何剩余差异——"这是一个装我们不理解的部分的桶"。这个分量被训练成尽可能小且没有因果重要性。

最小性(Minimality):在任何一个输入上,参与运算的子组件越少,这个分解越好。原则上你可以不做分解——说"整个模型是一个大组件"——但这没有用。好的分解应该是:在这个句子上,只有 205 个子组件是必要的(2.1% 的总量),其余的可以随意部分或全部移除而输出不变。这 205 个不是"重要"——是"必要且充分"。

机制忠实性(Mechanistic Faithfulness):这是一个更尖锐的要求。不仅要求"把所有不重要删除后输出不变"——而是要求"不重要组件的任何组合——包括部分删除、系数混合——在任何子集上噪声都应该是不重要的"。这意味着当且仅当它们确实不重要时——能以任意方式损毁——模型不受影响。这个性质的数学名称是"抗对抗性损毁"——这也是方法名"adVersarial"的来源。

简洁性(Simplicity):每个子组件应该尽可能简单。每个子组件是一个秩为 1 的矩阵——两个向量的外积——这是你可以对矩阵做的最简单分解。但如果秩为 1 不够——需要额外的损失函数来防止多个独立机制被"挤入"同一个秩-1 组件(因为两个秩-1 的和可能仍然是秩-1 的)。

🎯 4. 对抗性损失——这篇论文的"核心技术"

前面提到:要求删除不重要组件时输出不变。但这个"不变"应该是在多少种删除组合下都不变呢?

之前的方法(Stochastic Parameter Decomposition, SPD)用的是随机抽样——随机决定每个不重要组件删多少。论文指出这不够好:如果两个组件可以"共同删除但不能单独删除",随机抽样可能偶尔命中"共同删除"的情况,而没有测试过单独删除,于是把两个本应被标记为重要的组件都标为不重要的——产生"特征分裂"。

VPD 的关键创新是对抗性损失:在每种删除配置下,通过梯度上升主动搜索以最大化输出破坏。不是"我们试一下看看效果"——而是"我们刻意寻找最能破坏输出的删除方式——如果连这种刻意寻找都找不到破坏方式,那么这个组件就真的不重要"。

这是对机制忠实性的一个极强保证。而且——这种保证在激活分解方法中无法实现——因为它们不是以参数为中心的。

📊 5. 实验:分解一个 67M 参数的 4 层 Transformer

论文选择了一个小型但完整的语言模型——4 层、67M 参数、768 维嵌入——在一个无版权的 Pile 子集上训练。

模型的 24 个权重矩阵(每层有 Q、K、V、O 的注意力和上/下 MLP 矩阵)被分解为总共 38,912 个秩-1 子组件。但训练结束时,只有约 10,000 个是"活的"(有非零平均因果重要性)。平均每个 token 位置只使用其中的 205 个(2.1%)。

关键性能数字:

  • 在无破坏条件下,分解模型恢复目标模型 82.4% 的预训练计算量(cross-entropy 从 2.71 到 2.72)
  • 在随机部分删除下,恢复约 27% 的预训练计算
  • 在 20 步对抗性删除下,KL散度从 0 飙升到 ~26
  • 在 160 步对抗性删除下,已无法维持

诚实标注:论文坦诚地承认,对抗性鲁棒性在 >160 步后完全瓦解。这意味着子组件的独立性假设在极端搜索下失效——模型中有某些相互依赖性超出了秩为 1 分量可以捕捉的范围。作者自己说"完全的对抗鲁棒性不一定是可取的"——因为真实机制的交互部分本就存在。

6. 为什么子组件非常可解释?

论文用"入侵者检测"来测量可解释性。给出一个子组件在高因果重要性下对哪些文本活跃,再混入一个它不活跃的"入侵者"文本——让一个 LLM 法官找出来。

VPD 子组件在过滤低因果重要性噪声后(阈值 0.1),入侵者检测分数与最强激活分解方法相当或更好。更重要的是——这些解释对应的是真实的参数结构,不是激活的一种压缩表示。

论文在交互式面板中展示了子组件的行为。一些具体例子:

  • 一些注意力子组件专门监控"前一个 token"的行为——检测 QK 匹配
  • 一些子组件分辨"存在句 vs 强调句"("There is a cat" vs "There goes my cat")——这是一个复杂的语法区分
  • 一些子组件在预测性别所有格代词时活跃("his" vs "her")
  • 一些子组件追踪括号闭合

最令人印象深刻的是:这些行为跨越了多个注意力头。以前的解释学一直把"注意力头"当作基本单位来分析——但 VPD 显示,参数子组件自然地跨越头的边界——这更接近真实神经系统的工作方式:前额叶皮层中的功能单元不限于一个"头"之内。

📈 7. 电路分析——子组件之间的信息流

论文还构建了"归因图"——显示在特定输入上子组件之间的信息流和交互模式。这是"电路分析"的一种新形式——不是"神经元连接到神经元",而是"子组件通过注意力和 MLP 矩阵与另一个子组件相互作用"。

两个案例研究:

  • 性别所有格代词预测("The man lost [his/her] wallet"):电路涉及多个跨层子组件——一个检测性别标记、一个处理语法结构、一个缓存指代链
  • 括号闭合(在代码数据中):一个跨头子组件专门追踪开括号,另一个负责在适当位置闭合

电路分析不是完整计算图的解释——论文诚实地指出这仍然是"归因"而非"计算"——归因告诉你哪个子组件是因果重要的,但不告诉你它内部怎么算。

🖋️ 8. 手工调参——你可能从没想过的事情

论文做了一个非常令人印象深刻的演示——手动编辑参数来改变模型行为

具体来说:在模型的训练数据中出现了 "☹" 这样的小表情面字符。模型学到了应该在适当的上下文中预测它们。研究者识别出了哪个子组件负责这个预测——然后直接修改了这个子组件的向量成分——改变了表情预测的行为模式。

这不是迁移学习。这不是 fine-tuning。这就是人类亲自去修改一个向量参数中的值——像修钟表一样修神经网络。这种精确性——定位到一个单一可解释的计算部件并编辑它——在任何激活分解方法中都是极度困难的。

🔑 9. 一个少有人问的问题:VPD 优于 transcoder 吗?

论文做了精心的比较实验。核心结论:

在相同的活跃子组件/潜在量数量下(L₀ 归一化),VPD Pareto 支配了 PLT 和 CLT——对于相同的计算量,VPD 可以更稀疏地还原模型的性能;对于相同的稀疏度,VPD 还原了更多性能。

另一个关键现象:VPD 训练的分解在"端到端"和"逐层"训练目标之间表现出更好的一致性——PLT 在逐层训练下表现最好,但在端到端下泛化不良——VPD 在两种目标下表现类似。这暗示参数分解比激活分解更稳健——因为直接与参数的结构绑定,不容易受评估协议的变换影响。

🏔️ 10. 需要诚实承认的瓶颈

第一:论文分解的是 67M 参数的 4 层模型——不是 GPT-4 或 Claude Sonnet。将 VPD 扩展到千亿参数模型需要惊人的运算规模——论文没有确立这条路径的基本可行性。

第二:对抗性鲁棒性仍然脆弱。≥160 步对抗性搜索后,输出被显著破坏——这表明分解的独立性假设在长搜索下失效。子组件之间的实际交互(非线性交互)被秩-1 分解公式遗漏了。

第三:电路分析只提供了"归因"图而非计算图。论文明确区分了这二者——归因告诉你"哪些子组件重要",但不告诉你"它们在做什么运算"。这是机制可解释性的老问题——VPD 让寻找"重要部件"更容易了,但仍然没有直接解释这些部件如何计算。

第四:32K token 的上下文长度可能限制了理解——论文的模型使用 512 token 上下文,远小于现代部署模型。

💭 我的判断与延伸

这篇论文不只是提了一个新方法。它提出了一个被忽略的问题:

过去 5 年的机制可解释性研究近乎完全聚焦于激活空间——transcoder、SAE、线性探测——都在研究激活的"形状"。但这些形状本身是由参数产生的。像盯着水面上的波纹却从不潜入水下看产生波纹的地形。

VPD 的价值在于把问题从"什么是好的表示"重新表述为"什么是好的计算单元"。表示是副产物——计算是引擎。如果你理解了计算单元的构成和相互作用,你就能手动编辑它、修复它、重新设计它。

而且——只要你有办法将一个模型分解成一批可复用的、可解释的、忠实于原始行为的计算部件——你就拥有了一个起降场:你可以从这里开始重建整个模型的计算——一次一个部件。这不是微调,这是重新发明。

最重要的概念可能就藏在论文的后半部分——关于"何时应该打破秩-1 假设"和"子组件聚类成组件"——因为神经网络的真实操作单元可能不是秩-1 的,而是某种更复杂的结构。秩-1 是为简单性做的近似——但如果真实机制是秩-2 的呢?

参数分解不会给你最终答案——但给了你一个之前不存在的语言:一种用参数本身说话的语法。

📚 参考文献

  1. Bushnaq, L. et al. (2026). Interpreting Language Model Parameters. GoodFire Research. https://www.goodfire.ai/research/interpreting-lm-parameters
  2. Bushnaq, L. et al. (2025). Stochastic Parameter Decomposition (SPD). ICLR 2025.
  3. Templeton, A. et al. (2024). Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet. Anthropic.
  4. Bricken, T. et al. (2023). Towards Monosemanticity: Decomposing Language Models With Dictionary Learning. Anthropic.
  5. Rajamanoharan, S. et al. (2024). Improving Dictionary Learning with Gated Sparse Autoencoders. NeurIPS 2024.
  6. Elhage, N. et al. (2022). Toy Models of Superposition. Anthropic.

#MechanisticInterpretability #ParameterDecomposition #VPD #GoodFire #AISafety #DeepLearning #FeynmanLearning #智柴系统实验室🎙️

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录