← 实验室 · 可解释性

机制可解释性:打开大模型的黑箱

探索中首发 #可解释性#SAE#安全

我们每天都在用大模型,但几乎不知道它内部是怎么得出答案的。机制可解释性(mechanistic interpretability)想做的,是像逆向工程一个程序一样,搞清楚神经网络内部的具体计算过程。

为什么难:叠加现象

最直接的想法是看单个神经元:这个神经元激活了,是不是代表“猫”?

实际情况是,大部分神经元是多义的:同一个神经元可能在猫、汽车和某种代码语法上都激活。原因被称为“叠加”(superposition):模型要表示的概念远多于神经元数量,于是把很多概念压缩着叠在同一组神经元上,每个概念对应的是一个方向,而不是一个神经元。

所以单看神经元是读不懂的,需要先把叠加在一起的概念拆开。

稀疏自编码器(SAE)

SAE 是目前拆解叠加最主流的工具:

  1. 取模型某一层的激活向量
  2. 训练一个自编码器,把它映射到一个维度大得多的隐空间,再重建回来
  3. 加稀疏约束:每次只允许少量隐单元激活

训练好之后,隐空间里每个单元(称为一个“特征”)往往对应一个人能理解的概念,比如“DNA 序列”“法律文本”“讽刺语气”,甚至“代码中的安全漏洞”。

Anthropic 在 2023 年的 Towards Monosemanticity 里先在小模型上验证了这一点,2024 年的 Scaling Monosemanticity 把方法扩展到了生产级模型 Claude 3 Sonnet,找到了数百万个可解释特征。

找到特征之后能做什么

观察

看模型处理一段输入时,哪些特征被激活。这能帮助理解模型为什么给出某个回答,比如是否激活了“谄媚”“欺骗”相关的特征。

干预

人为放大或抑制某个特征,观察行为变化。Anthropic 演示过放大“金门大桥”特征后,模型在任何话题上都会扯到金门大桥。这说明特征不只是相关,而是因果性地影响输出。

追踪电路

更进一步,把多个特征之间的连接关系画出来,形成“电路”,解释模型完成一个任务(比如多步推理、押韵)的完整路径。这是目前的研究前沿。

局限

  • 重建不完美:SAE 没法百分之百还原原始激活,丢失的部分里可能有重要信息
  • 特征不一定是模型“真正”使用的单位:它是一种分解方式,不是唯一正确答案
  • 成本高:在大模型上训练 SAE 需要大量算力和存储
  • 离实用还有距离:能解释局部现象,但还不能完整审计一个模型

目前的判断

  1. 可解释性是 AI 安全的长期基础设施。 只靠行为测试无法排除模型在特定条件下做出意外行为,读懂内部机制是更根本的保障。
  2. 工程价值正在出现。 特征级干预可能成为比提示词和微调更精细的行为控制手段。
  3. 开源工具链在快速成熟,个人研究者已经可以在中小模型上做有意义的实验。

接下来要做的

  • 用开源 SAE 工具在一个小模型(如 GPT-2 small)上训练并浏览特征
  • 复现一次特征干预:找到一个情感特征并放大,观察生成文本变化

参考

  • Elhage et al. Toy Models of Superposition. 2022
  • Bricken et al. Towards Monosemanticity: Decomposing Language Models With Dictionary Learning. 2023
  • Templeton et al. Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet. 2024