像 GPT‑4 这样的大语言模型 (LLM) 功能极其强大,但仍然高度不透明。我们可以观察它们的输入和输出,但隐藏层中复杂的内部计算——模型的“思维过程”——在很大程度上仍是谜团。我们如何才能开始理解模型学到的概念,从蓝色这样的简单想法,到法律推理风险评估等抽象概念?

这一挑战位于机制可解释性 (mechanistic interpretability) 的核心。一个有前景的工具是稀疏自编码器 (Sparse Autoencoder,SAE) 。 SAE 充当模型内部语言的“词典”: 它将复杂的激活分解为少量可解释的特征。一个高质量的词典可以揭示有意义的内部特征,让我们不仅能理解模型的推理过程,还可能引导它的行为。

然而,训练 SAE 历来十分困难。它们往往难以学得有效特征,会出现从未激活的“死”潜变量,并在大规模训练时变得不稳定。OpenAI 的论文 《Scaling and evaluating sparse autoencoders》 (缩放与评估稀疏自编码器) 直接针对这些问题提出解决方案。作者们给出了一个稳健的训练配方,使 SAE 能够扩展到前所未有的规模——包括一个在 GPT‑4 激活上训练、拥有 1600 万潜变量的自编码器。他们还推导出清晰的 缩放定律 (scaling laws) , 并提出评估所发现特征质量的新方法。

本文将解析这些创新: 训练方案如何运作,缩放定律揭示了什么,以及为何评估特征质量正成为可解释性研究的核心。


背景: 为什么稀疏自编码器至关重要

一个自编码器 (autoencoder) 由两部分组成:

  • 编码器 (encoder) , 将输入向量 \(x \in \mathbb{R}^d\) 压缩为潜变量 \(z\);
  • 解码器 (decoder) , 从这些潜变量中重构原始输入,得到 \(\hat{x}\)。

在可解释性研究中,自编码器的目的不是压缩数据,而是寻找一个高维的特征词典 (dictionary of features) ——即*过完备表示 (overcomplete representation) *,其中潜变量维度 \(n\) 大于输入维度 \(d\)。由于每个输入仅应激活其中少量特征,研究人员会施加稀疏性约束 (sparsity constraint)

经典方法是在重构损失中加入一个 \(L_1\) 惩罚项:

\[ L = \|x - \hat{x}\|_2^2 + \lambda \|z\|_1 \]

这鼓励大多数激活接近零,从而得到稀疏表示。

一个标准的 ReLU 自编码器架构。编码器将输入 x 映射到潜变量 z,解码器从 z 重构 x。

一个典型的 ReLU 自编码器同时优化重构与稀疏性目标。在两者之间取得平衡十分微妙且常常不稳定。

虽然这种方法可行,但存在两个主要缺陷:

  1. 超参数脆弱性。 稀疏权重 \(\lambda\) 需精细调节: 过高会破坏重构,过低则损失稀疏性。
  2. 死潜变量。 许多潜变量完全停止激活。在大规模条件下,可能多达 90% 的潜变量变得无效。

这些问题导致早期 SAE 规模较小、可靠性不足,无法捕捉大型 LLM 中的丰富特征。


更佳的 SAE 训练方案

OpenAI 的研究提出了一种训练方法,克服了上述问题,并能干净地扩展至数百万潜变量。成功的关键在于两个理念: 直接稀疏性控制潜变量再生

1. 使用 TopK 实现直接稀疏性控制

作者们不再通过 \(L_1\) 惩罚间接强制稀疏性,而采用一种称为 TopKk‑稀疏激活函数:

\[ z = \text{TopK}(W_{\text{enc}}(x - b_{\text{pre}})) \]

对每个输入向量,编码器计算一组预激活值,只保留其中最大的 \(k\) 个,其余全部置零。这样保证了严格的稀疏性,并无需调整 \(\lambda\)。

优势:

  • 显式控制。 稀疏性由 \(k\) 直接设定,而非难以调节的系数。
  • 无激活收缩。 与 \(L_1\) 惩罚不同,TopK 不会减小非零激活的幅度。
  • 更优重构。 实验显示,在给定稀疏度下,它始终产生更低的均方误差 (MSE) ,且随模型规模扩大表现更佳。

TopK 与其他激活函数的比较。(a) 在固定潜变量数量下,TopK (紫色星号) 在重构‑稀疏性权衡中表现更优。(b) 随潜变量数量增长,TopK 与 ReLU 的差距明显扩大。

TopK 在不同稀疏度水平下均提升重构质量,并在更大的自编码器中优势更显著。

2. 复活死潜变量

死潜变量浪费容量与计算。OpenAI 团队发现在训练中可通过以下两种方法协同防止潜变量死亡:

  • 权重绑定初始化 (tied initialization) : 编码器权重初始化为解码器权重的转置,使自编码器从稳定状态开始训练,促进早期激活。
  • 辅助损失 (AuxK) : 当某个潜变量被视作“死亡” (长期不激活) 时,模型重新分配该潜变量用于重构残差 \(e = x - \hat{x}\)。这一辅助目标为死潜变量提供了新的梯度来源。

以上技巧结合能几乎消除死潜变量,即使在最大规模模型中亦然。

减少死亡潜变量的方法。蓝色曲线: 无缓解措施 (几乎所有潜变量死亡) 。橙色: 仅使用 AuxK。绿色: 仅使用权重绑定初始化。红色: 两者结合后死亡潜变量几乎为零。

结合权重绑定初始化与 AuxK 能使几乎所有潜变量在训练过程中保持活跃。


稀疏自编码器的缩放定律

凭借稳定的训练基础,作者得以研究 SAE 的缩放规律——类似于 LLM 的缩放定律。结果显示,重构损失与计算量、潜变量数和稀疏度之间呈现清晰的幂律关系。

在 GPT‑4 激活上训练的 TopK 自编码器的缩放定律。 (左) 最优重构损失与计算量关系。 (右) 收敛后的最终损失随总潜变量数 n 与活跃潜变量数 k 的变化。

左: 重构损失随计算量稳定降低。右: 联合缩放定律揭示 n 与 k 的综合作用。

作者拟合出以下收敛损失公式:

\[ L(n,k) = \exp(\alpha + \beta_k \log k + \beta_n \log n + \gamma \log k \log n) + \exp(\zeta + \eta \log k) \]

增加词典规模 \(n\) 与稀疏度 \(k\) 均改善重构质量;负交互项 \(\gamma\) 表示两者互相强化——词典越大,较高稀疏度收益越显著。

随模型规模的扩展

如预期,底层 LLM 越复杂,重构难度越大。更大的模型需要比例更大的 SAE 以维持相同重构精度。

更大的 GPT‑4 系列模型在固定 k 条件下需更多潜变量以获得等效 MSE。

更大的基础模型需更大自编码器,这与 LLM 预训练的缩放规律一致。


评估超越重构的潜变量质量

仅靠重构损失无法衡量特征的有用性可解释性。论文提出四项指标,用于评估潜变量质量与可解释性。

1. 下游任务损失

理想的 SAE 应能重构对语言建模至关重要的内部激活。研究者将重构后的激活替换回 GPT‑4 中,并测量下一词预测损失的增量。

在 GPT‑2 small 上比较不同激活函数的下游任务损失。TopK (紫色) 在给定 MSE 下产生更小损失。

TopK 最好地保持了下游性能——其重构保留任务相关信息。

即使是最大的 SAE (1600 万潜变量) ,也维持了 GPT‑4 的性能,等效于仅减少约 10% 计算量的模型,表现出高度保真度。

2. 用线性探针恢复已知特征

为了验证自编码器能否发现可辨识概念,研究团队建立了 61 个二分类任务 (如主题分类、语言识别) ,并在单个潜变量上训练逻辑回归探针。

探针损失与 logit‑diff 稀疏度随总潜变量数 n 与活跃潜变量数 k 的变化。增加 n 普遍改善两项指标。

更多潜变量带来更好探针得分与更稀疏的因果效应。

更大的自编码器更容易恢复假定特征,表明规模提升改善可解释性。

3. 可解释性: 精确率与召回率

可解释性可能误导人: 一个解释看似合理却缺乏精确性。为此,研究者使用 Neuron‑to‑Graph (N2G) 自动系统,为每个特征生成基于词元模式的解释,并量化精确率与召回率。

N2G 解释的定性示例。(a) 对“prank”有高精确率和良好召回率;(b) 低精确率且召回率差。

好的特征应具有具体且可靠的解释,而非泛泛关联。

结果显示,更大、更稀疏的 SAE 产生更精确且召回率更高的解释。

4. 消融效应的稀疏性

最后,研究者依次消融每个潜变量,测量其移除对模型输出 logits 的影响是否局部。直观上,解耦且单义的特征应有高度局部化效应。

结果表明,增加总潜变量 \(n\) 与适度增加 \(k\) 能生成更稀疏、更可解释的因果效应;当 \(k\) 接近 \(d_{model}\) 时进入密集区,特征开始混合、丧失清晰度。


理解 TopK 的有效性

除了实验结果,论文还解释了 TopK 优于传统稀疏激活的原因。

防止激活收缩

加 \(L_1\) 惩罚会压低激活幅度,降低重构质量。为检验此现象,作者在训练后“精炼”激活: 重新优化激活大小并冻结解码器。

ReLU 与 TopK 的精炼分析比较。(a) ReLU 的分布变化证实了收缩。(b,c) 精炼提升重构与下游损失,但差距仍部分存在。

ReLU 激活在精炼后增大——这是先前收缩的证据。TopK 完全避免此问题。

TopK 激活没有这种偏差,证明移除 \(L_1\) 项能获得更准确的激活幅度与更优整体性能。

渐进且灵活的编码

标准 TopK 可能“过拟合”训练时的稀疏度 \(k\)。为实现不同稀疏度水平的灵活解码,作者设计了 Multi‑TopK : 在训练中同时使用多个 \(k\) 值组合损失。其结果是一种渐进式编码,可在不同稀疏区间下保持良好重构,无论活跃潜变量数量固定或自适应,都能维持保真度。

在测试时使用 TopK(k) 或 JumpReLU(θ) 改变稀疏度。Multi‑TopK 能在不同 k 值间平滑泛化。

Multi‑TopK 实现渐进式编码——在不同稀疏度水平下均保持稳健重构。


启示与未来方向

这项研究为规模化的机制可解释性奠定了强大基础。

关键结论:

  1. 可扩展且稳定的训练。 TopK 激活、权重绑定初始化与 AuxK 使 SAE 可靠并显著减少死潜变量。
  2. 可预测的缩放规律。 重构损失在计算量、潜变量数与稀疏度间遵循精确幂律。
  3. 大规模提升可解释性。 更大的 SAE 不仅重构更好,还能发现与已知概念一致的特征,解释清晰,对模型输出产生稀疏且可理解的影响。

OpenAI 团队证明,SAE 可在像 GPT‑4 这样的前沿模型上成功扩展至数百万潜变量,为构建全面的概念词典铺平道路——未来或能详尽描绘大型模型所掌握的一切。

该工作也揭示了未来挑战: 改进解释算法、优化训练效率、探索专家混合 (mixture‑of‑experts) 和自适应稀疏机制。但迄今取得的进展已是迈向解构黑箱、真正理解先进 AI 系统内部思维的关键一步。