跳到正文
原文
arXiv· arXiv:2501.18823· Gonçalo Paulo, Stepan Shabalin, Nora Belrose·本站收录· 原文发表

Transcoder 在可解释性上优于稀疏自编码器

Transcoders Beat Sparse Autoencoders for Interpretability

论文速读

可解释性

据论文 PDF 整理(AI 生成),以原文为准

skip transcoder在Pythia 160M、k=32的fuzzing为86.4%,高于SAE的74.6%。

问题
SAE 压缩中间激活,不直接拟合 MLP 等组件的功能。作者比较同一模型上的 transcoder 与 SAE,并用仿射跳跃连接降低重建误差。
方法
在 MLP 层训练 SAE、sparse transcoder 与 skip transcoder。后者在 TopK 稀疏瓶颈外加仿射跳跃项,以均方误差拟合 MLP 输出,无辅助损失。用 Llama 3.1 70b 做自动可解释性评分。
实验与结果
Table 1 中 SST 的可解释性分数高于 SAE,贴回后 CE 增幅更低;pythia-160m 上不带 skip 的 transcoder 则 CE 增幅更高。SAEBench 里 SST 方差解释更高,探测与吸收有高有低。
局限与可以继续做的
作者未做电路分析,也未能迁移 unlearning 与概念擦除。skip 连接的机制留作后续。实验含 Pythia 160M/410m、Llama 3.2 1B、Gemma 2 2B 的 MLP,以及 SAEBench 的重建、探测和吸收。
实验设置Pythia 160M、Pythia 410m 等 · Pile、RedPajama v2 等 · fuzzing、detection 等
被测模型
Pythia 160MPythia 410mLlama 3.2 1BGemma 2 2B
基准
PileRedPajama v2FineWebOpenWebTextSAEBench
指标
fuzzingdetectionsimulationCE loss increasevariance explainedsparse probingabsorption score
AI 导读Gonçalo Paulo、Stepan Shabalin 和 Nora Belrose 在 arXiv 发布的论文对比了 transcoder 与稀疏自编码器(SAE)提取的特征,两者在同一模型和同一数据上训练,结果显示 transcoder 特征的可解释性显著更高。作者还提出 skip transcoder,在 transcoder 架构上加入仿射跳跃连接,重建损失更低,且对可解释性没有影响。SAE 的做法是把网络激活映射到稀疏的高维隐空间再重建激活,transcoder 则改为根据某个组件的输入重建其输出。

Gonçalo Paulo、Stepan Shabalin 和 Nora Belrose 在 arXiv 发布的论文对比了 transcoder 与稀疏自编码器(SAE)提取的特征,两者在同一模型和同一数据上训练,结果显示 transcoder 特征的可解释性显著更高。作者还提出 skip transcoder,在 transcoder 架构上加入仿射跳跃连接,重建损失更低,且对可解释性没有影响。SAE 的做法是把网络激活映射到稀疏的高维隐空间再重建激活,transcoder 则改为根据某个组件的输入重建其输出。

深度解读

6个问题,点开问题读完整回答

  1. 这篇论文试图解决什么问题?

    作者用 skip transcoder 拟合 MLP 的输入输出,称其比 SAE 更可解释,贴回后损失增幅更低。

    如何在拟合网络组件功能的同时,得到比 SAE 更可解释的稀疏特征。

    • 场景:作者引用 Guo et al. (2025),称大模型已在许多任务上达到人类水平推理;可解释性要理解内部机制,以改善安全与可靠性。单个神经元的自然语言解释难以应对多义性(Arora et al., 2018; Elhage et al., 2022)。
    • 现有不足:SAE 把激活映射到稀疏高维 latent 再重建。作者指出它侧重压缩中间激活,而不是建模前馈模块等组件的功能。Transcoder 拟合组件的输入输出,但稀疏激活使每种模式对应低秩线性变换;ReLU MLP 的多面体对应较高秩线性函数(Black et al., 2022)。
    • 做法:在同一模型与数据上比较 SAE、sparse transcoder(ST)和 skip transcoder(SST)。SST 给 transcoder 加仿射跳跃连接,用来缓解秩限制。
    • 作者的主张:摘要称 transcoder 特征比 SAE 更可解释,SST 降低重建损失且不影响可解释性。贡献列表称,在至多 2B 参数的模型上,SST 在重建与可解释性权衡上 Pareto 支配 SAE。作者建议从 MLP 输出上的 SAE 转向 (skip) transcoder。
  2. 有哪些相关研究?

    相关工作涵盖神经元解释、SAE、transcoder 与稀疏特征基准;作者将本文定位为组件级稀疏编码。

    引言讨论相关工作,正文没有单独的 Related Work 节。

    • 神经元与多义性
      • Olah et al. (2020)、Gurnee et al. (2023; 2024):为单个神经元生成自然语言解释。
      • Arora et al. (2018)、Elhage et al. (2022):多数神经元是多义的,会在语义不同的上下文中激活。
      • Bills et al. (2023):用 LLM 给神经元解释打分。Bricken et al. (2023a) 把类似做法用于 SAE,即 automated interpretability(autointerp)。
    • 稀疏自编码器
      • Bricken et al. (2023a)、Templeton et al. (2024b)、Gao et al. (2024):用 SAE 把激活分解为可解释特征。稀疏来自惩罚(Rajamanoharan et al., 2024)、约束(Gao et al., 2024; Bussmann et al., 2024)或信息瓶颈(Ayonrinde et al., 2024)。
      • Paulo et al. (2024):SAE 特征在 autointerp 上好于神经元,包括只分析一层 top-k 最活跃神经元的情形。本文的解释与打分沿用该流程。
      • 作者指出 SAE 的问题是压缩中间激活,而不是建模组件的功能行为。
    • Transcoder 与电路
      • Li et al. (2023)、Templeton et al. (2024a) 提出 transcoder。论文称 Dunefsky et al. (2024) 首次做了严格评估,并称其能学到组件行为的输入不变描述,用于细粒度电路分析,补充 Conmy et al. (2023)。
      • Black et al. (2022) 描述 ReLU MLP 的多面体与较高秩线性函数。作者用这一点说明 transcoder 的低秩困难,不是在批评该文。
      • Marks et al. (2024) 讨论稀疏特征电路;作者后文称线性跳跃连接可以忠实地纳入电路发现。
    • 评测与层间特征
      • Gao et al. (2024)、Karvonen et al. (2024)、Juang et al. (2024):稀疏特征评测基准。Chanin et al. (2024) 讨论 feature absorption,并认为一般特征被具体特征吸收是不可取的。
      • Engels et al. (2024):把重建误差视为未被 latent 捕获的 “dark matter”。
      • Balagansky et al. (2024):相邻 residual stream 层上的 SAE 学到很相似的特征,相邻 FFN 上的 SAE 学到不相交的特征。作者用此支持在 FFN 上训练 transcoder。

    基线与基准:基线是 SAE,以及 Pythia 160M 上的 ST。自动可解释性用 Paulo et al. (2024);重建、sparse probing 与 absorption 用 SAEBench(Karvonen et al., 2024)。语料为 Pile、RedPajama v2、FineWeb、OpenWebText。

    作者把 transcoder 定位为近似组件的输入输出函数,而不是重建激活;skip 连接用来缓解秩限制。作者建议可解释性研究从 MLP 输出上的 SAE 转向 (skip) transcoder。

  3. 论文如何解决这个问题?

    Skip transcoder 在 TopK 瓶颈外加仿射跳跃连接,用均方误差拟合 MLP 输出。

    在 MLP 上训练三类稀疏编码器,并用 skip transcoder(SST) 在 transcoder 上加仿射跳跃连接,以拟合组件的输入输出。

    问题设定

    • SAE:编码器把激活投到稀疏高维 latent,解码器再重建激活。
    • Transcoder:用稀疏瓶颈近似目标组件(如 MLP)的输入到输出函数,而不是重建中间激活。
    • 秩限制:作者称 ReLU MLP 把输入分成多面体,每个多面体对应较高秩线性函数;transcoder 的稀疏激活使每种激活模式对应低秩线性变换。
    • SST 的角色:用仿射跳跃连接缓解这一限制。论文未报告该连接的 SVD 分析,并把它留作后续。

    Skip transcoder

    • 形式:论文给出

    f(x) = W2 TopK(W1 x + b1) + Wskip x + b2 即稀疏瓶颈的解码输出,再加上输入的仿射项。

    • 初始化:W2 与 W_skip 零初始化,b2 取 MLP 输出的经验均值,因此训练开始时是常数函数。
    • ST:不带跳跃项的 sparse transcoder。作者未在正文单独写出不含 W_skip 的公式。
    • 残余流形式:结论称,把单位矩阵加到 skip 连接上,可以把 FFN 上的 SST 变成 “residual stream transcoder”。论文未报告这一转换后的实验数字。

    训练

    • 位置与损失:在 MLP 层上训练。损失是 coder 输出与 MLP 输出的均方误差,无辅助损失项。
    • 稀疏:采用 Gao et al. (2024) 的 TopK,直接规定活跃 latent 数,不必调 L1。作者称这与先前 transcoder 工作不同。实验中的 k 为 32、64、128。
    • 数据与优化:Pythia 上的 coder 用 Pile 前 8B token;Llama 3.2 1B 与 Gemma 2 2B 用 RedPajama v2 的 8B token。Adam,序列长度 2049,batch 为 64 条序列。
    • 哪些模型有 ST:方法节写 Pythia 160M 上训练 SAE、ST、SST,Llama 3.2 1B 与 Gemma 2 2B 上训练 SAE 与 SST。Pythia 410m 出现在复现实验中,方法节未单独写其配置。

    评测协议

    • 解释:用 Paulo et al. (2024) 的流程。在 10M token 上收集激活,Pythia 来自 Pile,Llama 与 Gemma 来自 FineWeb。Llama 3.1 70b 观看 40 个激活样本(十个分位各 4 个,每段 32 token,活跃 token 被标出)后生成解释。
    • 打分:scorer 也是 Llama 3.1 70b。detection 与 fuzzing 用 50 个激活样本(十个分位各 5 个)和 50 个非激活样本。simulation 用同样的 50 个激活样本,做法按 Bills et al. (2023)。论文未给出三项分数的计算公式或阈值。
    • 贴回:把 coder 换进原模型,计算交叉熵损失增幅。Figure 1 把 autointerp 定义为约 500 个 latent 的 fuzzing 与 detection 的平均(图注写 c.a. 500)。
    • SAEBench:方差解释和 CE 增幅在 OpenWebText 的 500K token 上计算。sparse probing 看编码器能否保留情感、语言检测等分类所需信息。absorption 统计一般字母特征被具体特征吸收的频率。
  4. 论文做了哪些实验?

    Table 1 中 SST 的三项可解释性分数均高于同设置 SAE,贴回后 CE 增幅也更低。

    实验设置

    • 模型:Pythia 160M、Pythia 410m、Llama 3.2 1B(表中 llama-1b)、Gemma 2 2B(表中 gemma-2-2b)。解释与打分都是 Llama 3.1 70b。
    • 训练:MLP 层,与 MLP 输出的均方误差,无辅助损失,TopK。k 取 32、64、128。Pythia 用 Pile 前 8B token,Llama 与 Gemma 用 RedPajama v2 的 8B token。Adam,序列长度 2049,batch 64。Table 1 里除 pythia-160m 外,ST 列为未报告。
    • 字典宽度:Figure 1 给出 32768、65536、131072。Table 1 的 Size 在抽取文本中为 215、216、217,与 2^15、2^16、2^17 的上标排版一致,分别等于这三个宽度。
    • 自动可解释性:激活采集 10M token。fuzzing 与 detection 用 500 个 latent,simulation 用 50 个。论文未给出打分阈值,也未报告重复次数。
    • 贴回与 SAEBench:Table 1 图注称 CE 增幅用 0.5M token,未在图注中写语料名。方法节称方差解释和 CE 增幅由 SAEBench 在 OpenWebText 的 500K token 上计算。sparse probing 包括情感与语言检测。
    • 未写明项:论文未说明 Table 1 的分数来自哪一层 MLP。不要把 Table 1 的 CE 数字和附录按层数字当成同一次测量。

    主结果

    据 Table 1。Fuzzing、Detection、CE 增幅为百分数;Simulation 表头无百分号。

    表格较宽,可左右滑动

    模型与宽度KFuzzing SAE/ST/SSTDetection SAE/ST/SSTSimulation SAE/ST/SSTCE增幅% SAE/ST/SST
    pythia-160m, 2^153274.6/85.4/86.470.2/78.7/80.90.28/0.46/0.471.10/1.23/0.73
    pythia-160m, 2^166471.8/83.7/86.967.2/77.5/81.10.30/未报告/0.420.79/1.46/0.59
    pythia-410m, 2^163278.4/未报告/89.572.7/未报告/83.80.35/未报告/0.510.49/未报告/0.43
    llama-1b, 2^173277.2/未报告/85.771.7/未报告/79.40.34/未报告/0.441.50/未报告/1.00
    gemma-2-2b, 2^173280.5/未报告/84.675.8/未报告/79.60.35/未报告/0.441.60/未报告/0.53
    • 作者的总括:作者称在所研究的情形中,SST 的自动可解释性分数更高,贴回后 CE 增幅更低。Table 1 五行里,SST 的 fuzzing、detection、simulation 都高于同行 SAE,CE 增幅都低于 SAE。
    • ST 的例外:两行有 ST 数字时,ST 的可解释性分数高于 SAE,但 CE 增幅高于 SAE,为 1.23% 对 1.10%,以及 1.46% 对 0.79%。摘要称跳跃连接降低重建损失、不影响可解释性;这两行里 SST 的 fuzzing 与 detection 仍高于 ST。作者未单独解释 ST 的 CE 增幅。
    • Figure 1:图注称 32768、65536、131072 三种宽度上,SST 的模型损失增幅更低、平均 autointerp 更高,相对 transcoder 和 SAE 是 Pareto 改进。65536 只有 k=32 和 64。图注未写模型名;纯文本没有各点刻度。

    SAEBench 的重建、探测与吸收

    • 重建:Table 2 的 gemma-2-2b 上,SST 的 variance explained 在 L10、L14、L18、L22 为 67.1%、72.4%、81.7%、73.2%,SAE 为 16.5%、17.0%、20.9%、21.6%。ΔNLL(%)SST 四层都是 0.5,SAE 为 1.1、1.1、2.1、1.6。Table 3、Table 4 中 SST 的 variance explained 也不低于同行 SAE。Table 3 里 ST 在 L2–L10 低于 SAE,例如 L4 为 74.3 对 75.9;L0 三者为 99.4、99.4、99.9。
    • sparse probing:作者称 SST 与 SAE 相近,后期层 SST 以小幅度胜出,并称 transcoder 并未以压缩 residual stream 为目标,仍能接近 SAE,这令他们意外。表格有反例:Table 2 已报告层上 SAE 更高,L10 为 71.5 对 70.6,L14 为 80.0 对 76.0,L18 为 78.9 对 75.2;L22 的 SST 未报告,SAE 为 76.1。Table 4 的 L8 为 SAE 72.2、SST 69.9,L14 为 71.1 对 75.3。Table 3 的 L0 为 SAE 71.9、ST 66.1、SST 69.3,L10 为 69.0、71.0、73.7。
    • 吸收:作者称 SAE 与 transcoder 的吸收行为相似,结果噪声大,并认为这不太会成为问题,因为有与本文正交、似乎能改善吸收的方法。高低都有:Table 4 L0 为 SAE 80.7±12.7、SST 4.7±2.8,L14 为 0.1±0.4 对 52.0±19.9;Table 2 L18 为 26.3±23.7 对 53.3±19.6。引言称吸收与 sparse probing 的质量更好;与第 3 节和这些表不一致时,以表为准。作者未解释单个层的高低。

    解释泛化与特征密度

    • Figure 2:图注称 detection 与 fuzzing 上 ST、SST 高于 SAE,SAE 的分布更宽;左图的点是平均分。低分位上解释准确率仍然更高。正文称准确率随激活变小下降得更慢,假阳性率更低,并认为这些 latent 可能在整个激活分布上表示更单义的概念。纯文本看不到刻度。
    • Figure 3:附录 B 比较 feature density 与 consistent activation heuristic,层为 pythia-160m Layer 6、llama-1b Layer 12、gemma-2-2b Layer 12。作者称 ST 与 SST 密度相近,高密度特征更少、低密度特征更多,并称已有方法可去掉低密度特征,而没有正则高密度特征的方法。纯文本看不到点的位置。第 5 节称 feature density 图没有显示出差别,并据此认为 SAE 与 SST 在机制层面相似。

    其他消融与分析

    • Figure 1 含活跃 latent 32、64、128;宽度 65536 只有 32 和 64。Table 1 未报告 k=128。
    • pythia-160m、k=64 的 ST simulation 在 Table 1 为未报告。
    • Table 2 L22 的 SST sparse probing、Table 4 L12 的 SAE sparse probing 为未报告。
    • Table 4 中 SST 的 ΔNLL 不高于 SAE;L2、L12、L14 两者相同,为 1.5、2.0、2.0。
  5. 有什么可以进一步探索的点?

    作者把电路分析、skip 连接的作用,以及未能迁移的遗忘类评测列为后续。

    作者指出的局限与后续方向

    • skip 连接的机制:第 2 节把用 SVD 等方式深入分析 skip 连接留作未来工作。第 5 节称,后续可以把 skip 连接与 MLP 的学习得到或解析得到的仿射近似比较;作者认为跳跃项让 transcoder 不必重复翻译线性映射,从而专注于重要特征。
    • 电路分析:第 5 节写明没有做 Dunefsky et al. (2024) 那种电路实验。作者预期 SST 因重建误差更低而更利于重建电路,并认为跳跃连接不太可能妨碍基于梯度的电路发现,依据是 Marks et al. (2024) 可以把线性跳跃连接纳入电路发现。
    • 转向与擦除基准:第 5 节称 transcoder 特征或许可用于 steering,但作者未能把 Karvonen et al. (2024) 的 unlearning 与 concept erasure 基准迁移过来,因为那些基准要求 latent 包含任意 residual stream 位置的全部信息。
    • 不改善特征学习:第 5 节称 transcoder 并不像 Gao et al. (2024) 一类新架构那样改善 SAE 的特征学习;它们只改变目标,不能减轻训练中的低效。吸收可以和 SAE 一样出现。作者提到 Matryoshka SAE(Bussman et al., 2024; Nabeshima, 2024)或许对 SAE 和 SST 都有帮助。
    • 不能直接训练在残余流上:第 4 节称,相对 SAE 的唯一 downside 是 SAE 可直接训练在 residual stream 上,transcoder 需要针对具体组件,通常是前馈层。作者同时给出把单位矩阵加进 skip 连接的转换,并称这把两类稀疏编码接起来。

    实验覆盖范围

    • 被测模型为 Pythia 160M、Pythia 410m、Llama 3.2 1B、Gemma 2 2B。方法节写明 Pythia 160M 的 MLP 上有 SAE、ST、SST,Llama 3.2 1B 与 Gemma 2 2B 上有 SAE 与 SST。
    • Pythia 上的 coder 用 Pile 前 8B token,另两个模型用 RedPajama v2 的 8B token;Adam,序列长度 2049,batch 64;k 为 32、64、128;损失为与 MLP 输出的均方误差,无辅助损失(第 2.1 节)。
    • 自动可解释性由 Llama 3.1 70b 生成解释并打分;fuzzing 与 detection 用 500 个 latent,simulation 用 50 个;激活采集 10M token;Table 1 的 CE 增幅用 0.5M token。SAEBench 的方差解释与 CE 增幅用 OpenWebText 的 500K token(第 2.2 节)。
    • 附录 A 报告 SAEBench 的 core、sparse probing 与 absorption,层见表 2–4。Figure 1 的字典宽度为 32768、65536、131072;图注未写模型名。
    • 论文未报告 Table 1 分数对应的 MLP 层、实验重复次数和打分阈值,也未在 Table 1 报告 k=128。
  6. 总结一下论文的主要内容

    作者称 skip transcoder 在可解释性与贴回损失上优于 MLP 输出上的 SAE,建议转向前者。

    作者比较 MLP 上的 SAE 与两类 transcoder,主张可解释性研究转向拟合组件功能的稀疏编码。

    • 问题:SAE 重建中间激活,不直接描述 MLP 的输入输出。Transcoder 用稀疏瓶颈近似该映射,但稀疏激活对应低秩变换。
    • 方法:SST 在 TopK 瓶颈外加仿射跳跃连接。W2 与 W_skip 零初始化,b2 为 MLP 输出均值,开训时是常数函数。损失是 coder 输出与 MLP 输出的均方误差,无辅助损失。k 为 32、64、128。解释与打分用 Llama 3.1 70b。
    • 主结果:Table 1 中,SST 的 fuzzing、detection、simulation 高于同设置 SAE,贴回后 CE 增幅更低。pythia-160m、k=32 时,SAE 的 fuzzing 为 74.6%,SST 为 86.4%;CE 增幅分别为 1.10% 与 0.73%。同一行不带 skip 的 ST,CE 增幅为 1.23%,高于 SAE。
    • 其他测量:gemma-2-2b 的 L18 上,variance explained 为 SST 81.7%、SAE 20.9%(Table 2)。sparse probing 与吸收的高低因模型和层而异;作者称探测相近、吸收噪声大。Figure 1 图注称 SST 在三种字典宽度上同时有更低的损失增幅和更高的平均 autointerp。
    • 作者结论:实验提示应把重心从 MLP 输出上的 SAE 转到 (skip) transcoder。作者认为唯一 downside 是 transcoder 需针对具体组件;把单位矩阵加到 skip 上可得到 residual stream 形式。依据 Balagansky et al. (2024) 关于相邻 FFN 特征不相交的结果,作者建议若要训练多个 coder,应在 FFN 上训练 transcoder,而不是在 residual stream 上训练 SAE。
阅读原文arxiv.org