先锋 趋势 方法 投研 作者
拆解神经网络机制:Goodfire 的 Lee Sharkey 谈基于参数的可解释性
返回节目精读

拆解神经网络机制:Goodfire 的 Lee Sharkey 谈基于参数的可解释性

摘要

  • Goodfire 的核心判断是,可解释性必须识别神经网络实际使用的计算,而不只是中间激活中呈现的概念。 Lee Sharkey 认为,参数、架构和非线性共同实现了模型学到的算法,而激活有时只是“顺带出现”。如果参数分解能够扩展,就可能为监控、能力移除和提取模型发现的知识提供更可操作的地图。

  • 稀疏自编码器可以揭示模型表示的概念,却可能漏掉对这些概念进行变换的可复用函数。 一周中的每一天可能分布在一个平面上,其中一次旋转就能实现“下一天”,不需要为7天分别学习7套变换;类似地,模加法也可以通过角度和三角运算编码。以特征为中心的系统,可能要耗费巨大的表示容量去描述每一组输入输出,而模型实际执行的只是一个简单操作。

  • 基于归因的参数分解(APD),把稠密神经网络视为许多专门化专家被“揉”在一起,再尝试将它们拆开。 它的损失函数同时平衡忠实性——各组件之和等于原始参数;最小性——每个输入只需少量组件;简洁性——每个组件应为低秩并覆盖尽可能少的层。该方法在小型问题上有效,但由于每个模型组件都包含完整参数副本,计算和内存开销极大。

  • APD 更深层的问题在于,它的优化目标可能误判真正重要的机制。 Top-k 选择制造了不连续的开关:参数只发生极小变化,就可能激活完全不同的组件;而梯度归因衡量的是局部敏感度,不是因果必要性。一个已经饱和的注意力机制,恰恰可能因为注意力过强而拥有接近0的梯度,尽管它在机制上不可或缺。

  • 随机参数分解(SPD)用秩1子组件取代完整网络组件,每个子组件读取一个激活方向,再写入另一个方向。 这些原子单元成本低得多,之后还可以重新组合成高秩或跨层机制;例如,旋转二维的一周表示可能需要两个这样的组件。Lee 预计计算本身也处于叠加状态,因此一个矩阵所需的秩1子组件数量可能超过其激活维度。

  • SPD 通过随机遮蔽每一个子组件,并训练一个小型函数预测各组件可以被多安全地削弱,从而学习因果重要性。 重要性为1意味着组件始终全量开启;重要性为0则允许其强度在0到1之间随机变化,重构误差会告诉预测器这种自由度何时放错了位置。由于所有组件都保持随机激活并获得梯度,SPD 避免了 APD 中的沉默组件、top-k 不连续性,以及很大一部分所谓“垃圾桶”病变。

  • 该方法尚未产出一套唯一正确的神经机制字典,Lee 也明确拒绝这种表述。 研究人员仍需判断秩1片段如何组合成具有语义意义的计算、分解应在何处停止,以及因果重要性是否会病态地呈现为碎片化数值。“我们都在试图把一个本质连续的对象离散化”,因此,重构质量、接近二元的​​重要性值,以及有已知真值的玩具任务,只能作为证据,而不是一套标准分解的证明。

  • 商业价值和安全价值都很大,但能否扩展仍是决定性问题。 Goodfire 融资5,000万美元后,Lee 的团队获得的私营部门算力资源可能超过 Apollo 的慈善模式;实验也已从百万参数语言模型推进到“个位数十亿参数”规模。潜在回报包括参数级遗忘、基于函数的跨场景欺骗监控,以及用“网络自身思考的术语”解释科学模型;但它们能否胜过更简单的梯度引导或基于激活的工具,仍待验证。

精读

1. Goodfire 为参数可解释性提供了资金更充足的归宿

  • Lee 在 Apollo 的团队把机制可解释性视为检测欺骗的一条路径,不完全依赖模型输出,而是试图“读懂前沿系统的思想”。Apollo 最终决定加码评测,机制可解释性团队因而失去了同样匹配的组织环境。

  • 这并不意味着 Lee 与 Apollo 决裂:他说自己仍支持 Apollo,也在一定程度上继续参与其中。他还在转型前约6个月牵线认识了 Goodfire 后来的联合创始人 Tom McGrath 和 Eric Ho,因此按他的说法,自己在 Goodfire 的创始故事中扮演的是“B 角色”。

  • 从 Apollo 转到 Goodfire 的共有3人:Lee、Dan Braun 和 Lucius Bushnaq。

  • Nathan 面向投资者的观察是,Goodfire 融资5,000万美元,既能支持人才,也能覆盖这些方法所需的高昂算力;Apollo 的慈善资金模式则难以做到这一点。Lee 的回应十分明确:“没错,100%。”

2. 激活暴露变量,参数实现算法

  • 传统的激活分解会收集中间状态,并将其拆成与概念相关的片段。参数分解的哲学目标相近,但它瞄准的是反复变换输入的权重、架构和非线性——也就是 Lee 所说“我们真正想理解的东西”。

  • 网络处理猫的图像和埃菲尔铁塔的图像时,可能调用不同的机器子集。参数分解要寻找的是这些专门化模块:执行特定计算任务的机制,而不只是毛发、胡须、眼睛或最终的“猫”概念等表示。

  • Lee 给出的清晰区分是:一边是“识别计算中使用的变量”,另一边是识别计算本身。激活工具确实已经深入黑箱,但它们标记的中间结果之间,每一次变换仍然是另一个更小的黑箱。

3. 激活内部的可区分性不等于模型实际使用了它

  • Lee 用猫的例子进一步说明了这个哲学问题:研究人员可能在激活空间中区分处于不同姿势的猫,但网络下游的机制可能把这些猫一视同仁。数据中存在细粒度差异,并不意味着这种差异就是学习算法中的变量。

  • 他提出的标准是计算性的:只要模型会围绕某个变量执行不同计算,这个变量才算对模型具有基础意义。也就是说,应当“把计算置于表示之前”,而不是把所有可恢复的方向或聚类都视为网络真正有意义地使用了的对象。

  • Nathan 的总结是,要理解模型为何表现出某种行为,既需要中间结果,也需要连接这些结果的函数。若目标进一步升级为预测或改变行为,就更难绕开这些变换。

4. 多维特征指向可复用操作

  • 2022年末启动、2023年加速发展的稀疏编码研究显示,表示会跨层分布,其结构也比单一激活方向丰富。Lee 的假设是,一个平面或更高维特征之所以存在,可能正因为它是对应多维计算的输入。

  • 一周中的每一天是最典型的例子:7天不一定对应7个互不相关的向量,而可能沿着一个平面周围大致等距的7个方向分布。这样,一次旋转就能实现通用的“下一天”函数,不必为每个工作日分别学习一套映射。

  • Nathan 将其与模加法的 grokking 结果联系起来:输入先被转换成角度,再通过三角运算组合,最后映射回答案。一个寻找独立稀疏方向的 SAE,可能只能恢复出碎片,无法让这个循环算法变得清晰可见。

  • Lee 保留了一个重要的复杂性:两种表示可以并存。句子补全任务可能需要单独的 Monday 方向,而“Tuesday 之后的那一天”则更适合共享旋转;参数分解应当揭示只在有用场景中被激活的算法步骤,而不是强行采用一套普适基底。

5. 以特征为中心的工具可能为简单函数挥霍容量

  • Lee 的恒等变换思想实验揭示了这种错配:如果100万个输入特征原样传递到100万个输出特征,SAE 或 transcoders 可能需要记录100万个输入输出对应关系,尽管实际计算只是一个紧凑指令:保留该表示。

  • 旋转也存在同样的低效。transcoder 预测下一层激活,因此可能分别编码每个被变换的特征;参数分解则试图恢复那个在大量可能输入上执行共享变换的单一对象。

  • Lee 并未声称参数空间是唯一道路。基于激活的方法同样可以瞄准计算,包括多维或跨层方法;他的较窄主张是,参数分解把可复用函数,而不只是低频出现的方向,置于首要位置。

6. 稠密网络可能是伪装的专家混合

  • Nathan 将激活叠加延伸为计算叠加:网络包含的计算可能多于神经元数量,每个计算分散在多个单元中。Lee 认同这种分布可以抑制干扰:当不同机制的触发输入很少同时出现时,它们可以共享机器资源。

  • 最直观的类比是一个混合专家模型,其中各个专家已经合并进同一组权重。参数分解试图进行“模型拆分”——把一个能做很多事的网络拆成多个各自只做一件事的更小网络,或者拆成“尽可能少的功能组合”。

  • Nathan 将其想象成在架构的宽度和深度之外增加高度:垂直切片中包含简单子网络,给定输入只会调用其中稀疏的一部分。Lee 接受了这一图景,但将问题落到了第3个维度:某一层、某个神经元维度上究竟承载着哪种计算?

7. APD 在忠实性、最小性和简洁性之间取平衡

  • APD 是此前以 Apollo 名义发表的方法,它创建形状与目标模型相同的参数组件,并训练这些组件之和去复现原始参数。这一忠实性约束把扩张后的分解牢牢系在原网络上,尽管各组件是随机初始化的。

  • 最小性要求分解后的模型在每个输入上只用尽可能少的组件复现原始行为。这相当于计算空间中的稀疏激活:猫相关提示可能需要一组机制,另一条无关提示则调用另一组。

  • 简洁性用于防止最简单的答案——把整个原始模型都分配给一个组件。APD 会惩罚高秩矩阵以及跨越多层的组件,推动每个组件只包含“尽可能少的计算机器”。

  • Nathan 的扩展性思想实验暴露了成本:如果把一个10亿参数模型拆成100万个完整尺寸的组件,就意味着约1千万亿个参数槽位。已发表工作仍更接近“叠加的玩具模型”阶段,在这一阶段,受控算法让恢复效果可以被量化。

8. 高维优化可以同时满足出人意料的约束

  • Lee 假设,普通训练本身已经学会了稀疏计算,只是这些计算并不位于人类可以直接检查的神经元基底中。因此,参数分解要寻找的是能让这些计算变得稀疏的基底,就像其他研究通过稀疏约束让训练好的网络算法在视觉上更简单。

  • 为什么同一个优化器能够同时满足忠实性、最小性和简洁性?Lee 的直觉是,更大的模型拥有更多让目标函数达到正确结果的路径,因为优化会同时在“参数空间的许多不同方向”上搜索;这与人类在低维空间中的直觉相悖。

  • 借用 Ilya Sutskever 的话,Lee 说:“网络就是想学习。”但他马上补充了现实限制:APD “极其粗糙”,难以调参;可行的联合优化,并不意味着所选算法具备扩展性,也不意味着它用起来舒服。

9. 忠实的参数求和不保证得到看起来忠实的机制

  • Nathan 质疑 APD 的忠实性标准:一个活跃组件可能学会一套新计算,而一个很少被选中的“垃圾桶”吸收维持所有组件之和等于原始权重所需的偏移量。这样得到的行为虽然能够正确重构,但每个恢复出来的机制未必像原模型的因果组织。

  • Lee 将其与真正的神经网络退化区分开来。在 ReLU 前放大一个权重、再反向缩小下一层权重,可以保留同一套算法;而一个过参数化的 MNIST 网络中,也可能存在与它遇到的所有激活都正交的参数方向,因此可以安全地消融。

  • 语言模型可能参数化程度没那么高,真正的垃圾参数更少,但 Lee 承认 Nathan 对 APD 的担忧“相当合理”。他不知道这种病变是否实际出现,也不知道其他损失函数是否会隐性地抑制它;SPD 将给出更清晰的结构性答案。

10. Top-k 选择和梯度归因让 APD 变得不稳定

  • APD 会针对每个输入选择归因值最高的 k 个组件,使优化过程不连续。参数只要发生极小更新,就可能用另一个组件替换当前入选组件,突然实现一套不同函数,这对梯度下降并不友好。

  • k 的取值以及大量损失权重之间的相互作用,都变成高度敏感的超参数。Lee 的问题不只是需要找到一个有效区间;改变某项设置,就可能因为归因偏差改变表面上的最优解,让训练方向变得不可预测。

  • 梯度归因还会把局部敏感度与因果重要性混为一谈。处于局部性能峰值附近的组件,梯度可能接近0,于是被误判为不重要。如果注意力对一个 token 基本为1、对其他 token 为0,负责该行为的机制显然至关重要,但饱和状态会让权重的小幅扰动几乎不改变注意力,产生接近0的梯度。

  • 这些概念问题又叠加了 APD 的蛮力成本:每个组件都类似一个完整模型,需要大量参数副本和内存。后续方法需要更便宜的原子单元、连续的学习信号,以及更接近“整个网络无法失去什么”的度量。

11. SPD 将机制拆成秩1的读写操作

  • SPD 是 Goodfire 的新方法,用随机初始化、局限于单个矩阵和单层的秩1子组件,取代每个完整尺寸的参数组件。更高秩或跨层机制之后再通过分组恢复,在保留 APD 目标的同时,避免组件尺寸“坦率说荒谬”。

  • 一个秩1矩阵只读取其右奇异向量定义的激活方向,并只写入其左奇异向量定义的方向。当激活与它的读取方向重叠时,该组件才会发挥作用;Lee 还指出,如果某个方向对下游没有影响,这样的组件也可能什么都不做。

  • 这些原子单元可以表达从一个方向到另一个方向的简单旋转和缩放。在一个平面内旋转一周变量,可能需要两个秩1片段,每个维度对应一个,这使尚未解决的分组步骤成为关键问题,而不是锦上添花。

  • SPD 使用的秩1子组件数量可以超过原始矩阵的维度,就像叠加状态下表示数量可以超过神经元数量。Lee 仍预计子组件数量可能少于 SAE 的 latent,因为所有子组件之和必须等于原始参数,这构成了“某种上限”;但他强调,这仍需由实验证明。

12. 随机遮罩学习因果重要性,而不是敏感度

  • SPD 增加了一个学习型因果重要性函数,针对每个输入和子组件询问:“它有多容易被消融?”输出位于0到1之间:重要性为1时,组件被强制完全开启;重要性为0时,遮罩可以在0到1之间随机变化。

  • 错误的重要性值会通过因果效应暴露出来。如果一个不可或缺的子组件获得0.5的重要性,那么在0.5到1之间随机削弱就会损害重构;经过重参数化的随机采样会让梯度回传到重要性预测器,直到它学会该组件必须保持更强。

  • 预测器不需要是另一个大型模型。在论文中,一个约16到128个参数的阈值网络使用激活与每个子组件右奇异向量之间的重叠程度,实质上是在衡量该组件有多少可读取的信息。

  • 训练结束后,可以丢弃重要性网络,将所有子组件求和,恢复出接近原始模型的结果。也可以利用它识别某个目标分布上实际使用的组件子集,从而得到更小的任务专用参数集;Lee 将其归为未来工作。

13. SPD 行为更稳定,但语义分组仍未解决

  • 与 APD 不同,SPD 没有永久沉默、未进入 top-k 的组件:所有组件都在随机激活,因此梯度会持续触达每个子组件。一个抵消偏移的垃圾组件也会被随机暴露并扰动激活,使隐藏抵消的成本更高,优化过程更连续。

  • 以计算为先的分解也可能抵抗病态的特征拆分。一个更大的 SAE 可能把“以 E 开头的单词”替换成“elephant”和其他所有以 E 开头单词的独立特征;Lee 认为,如果网络算法从未把 elephant 单独处理,这种拆分反而更不可解释。

  • 他谨慎地没有宣称已经解决稀疏字典学习。也许存在理想的 SAE 规模,也许其他变体更适合识别计算变量;一些受尊敬的研究者也认为 SPD 存在问题:“我不想给人留下印象”,好像这就是可解释性的最终答案。

  • 一个玩具实验将 W_out 拆成50个子组件,结果显示它们似乎组成了一个覆盖整个矩阵的秩50组件。研究人员通过改变分解强度,观察重构损失和因果重要性来推断分组,后者最好接近0或1;但 Lee 更深层的回答是,没有哪一种分组是唯一正确的:“我们都在试图把一个本质连续的对象离散化。”

14. 扩展性将决定遗忘、监控和科学应用能否兑现

  • 已知机制的玩具问题提供了令人鼓舞的恢复测试:在真值已知的问题上,SPD 恢复出了预期机制。语言模型扩展才是决定性实验。团队先退回到百万参数模型以获得进展,也尝试了“个位数十亿参数”规模的系统;即使完成初步隔离,组件仍可能拥有过高秩,难以直接理解。

  • 遗忘是参数空间最直接的应用。如果恢复出的向量实现了能力 X,研究人员就可以直接修改这个向量,而不必把激活特征重新翻译回权重;不过 Lee 明确表示,尚不能确定这是否优于梯度下降引导的移除方法。

  • 监控可能更适合追踪函数,而不是输入方向。欺骗可以在许多情境和激活向量中产生,但同一个共享机制可能负责执行欺骗变换;SPD 或许能够标记“网络何时使用了函数 X”,而不是寻找一个单一的欺骗方向。

  • 科学模型提供了最广阔的可能性:从在训练任务上超越人类的系统中提取知识,并用“网络自身思考的术语”进行推理。Lee 将此作为希望,而非结果;参数机制是否比激活工具拥有更好的泛化能力,“仍有待观察”。