文章

机制可解释性图解:从 Transformer 架构基础到前沿电路

从残差流、注意力头和 MLP 出发,系统梳理 probing、activation patching、Lens、SAE 与电路研究的证据边界和方法选择。

机制可解释性图解:从 Transformer 架构基础到前沿电路

这一篇讲什么

机制可解释性(Mechanistic Interpretability,简称 MI)想做的事情只有一句话:不满足于观察模型说了什么,而是打开模型内部,搞清楚它是通过怎样具体的计算步骤得到这个输出的。这篇把这个领域拆成三层来讲:先是读懂内部结构必须知道的前置知识(残差流、注意力头、MLP层、层与层的分工),然后是目前几种主流研究方法各自的原理、代表性结论和精读清单(probing、activation patching、logit lens 系列、SAE、以及 Anthropic 的电路研究脉络),最后给一份”这个问题该用哪个方法”的实用向导和入门路线图。

全文尽量用真实的计算结构本身来解释——向量怎么相加、矩阵怎么投影、哪一步是线性的哪一步不是——而不是借助不精确的比喻。建议先看”方法全景”建立整体地图,再从”架构基础”开始顺序往下读;如果你已经熟悉 transformer 内部结构,可以直接跳到任何一个方法小节。

i

和前两篇的关系

如果你还没读过《模型真的”知道自己不知道”吗》和《SAE 与论文公式可视化精讲》这两篇,本文的 SAE 小节是浓缩版,建议需要时点回去看完整版;本文其余内容(probing、patching、lens 家族、Anthropic 电路脉络等)是全新展开,两篇不重复。

0
Landscape

方法全景:先建立一张地图

机制可解释性的方法虽然五花八门,但可以先用一条线索把它们粗略分成两大阵营:只看不动手的观察类方法,和动手改一改再看变化的干预类方法。这个区分很重要,因为它直接决定了一个方法能证明什么——观察类方法只能告诉你”某个信息在这里能被读出来”,干预类方法才能告诉你”模型确实在用这个信息做判断”。

观察类(Observational)

冻结模型权重,只读取或解码激活值,不改变模型的计算过程本身。

  • Probing —— 训练一个分类器,看某个属性能不能从激活值里被线性解码出来
  • Logit Lens / Tuned Lens —— 把中间层的残差流提前投影到词表空间,看”这一层觉得答案是什么”
  • SAE / 电路的”找特征”部分 —— 把叠加在一起的激活值分解成一堆更单一的方向

干预类(Interventional / Causal)

在前向传播过程中主动替换、擦除或添加某个激活值,观察输出如何变化。

  • Activation Patching / 因果追踪 —— 把一次”干净”运行里的激活值移植进另一次运行,测试它是否足以改变输出
  • Steering / 激活加法 —— 把一个方向直接加进残差流,测试它是否足以改变行为
  • 因果抽象 / DAS —— 系统性地寻找模型内部的哪个子空间”实现”了一个假设中的高层算法

Anthropic 的”电路追踪”(circuit tracing)和最新的 J-Lens 之类方法,其实是把两个阵营接起来:先用 SAE 式的方法把激活值分解成单一特征(观察类的活),再用类似 patching 的归因方法搞清楚这些特征怎么互相连接、影响最终输出(干预类的活)。下面从最基础的架构知识讲起,逐步搭建起理解这些方法所需要的全部背景。

1
Prerequisites

架构基础:从可解释性的视角重新看 transformer

下面不是一份通用的”transformer 是什么”教程,而是专门挑出机制可解释性研究者实际会用到的几个结构性事实——后面每一种方法,几乎都是在利用其中某一条。

残差流:所有层共享的同一条”通道”

一个 transformer 的核心对象不是某一层,而是残差流(residual stream):从 token 进入模型的那一刻起,就有一条向量在逐层向后传递;每一个注意力层、每一个 MLP 层做的事情,都只是从这条流里”读出”一份拷贝去计算,然后把计算结果加回去——不覆盖、不删除,只做加法。(Elhage et al., 2021)

残差流示意:每一层只对它做"读"和"加"两件事

最左侧 Embed 把 token 变成流里的第一个向量;最右侧 Unembed 把最后的向量变回词表上的分布。中间每一层的 Attn / MLP 都只从流上取值计算、再把结果加回流里——这也是后面 Logit Lens、Direct Logit Attribution 等方法能成立的根本原因:整条流量从头到尾都活在同一个坐标空间里。

这件事之所以重要,是因为它让残差流几乎成了一个纯线性的对象——这在神经网络里并不常见(哪怕是 ResNet,跳连接上通常也还带着归一化之类的非线性)。正因为纯线性,你才能把最终结果精确地拆分成”每一层、每一个头分别贡献了多少”,这是本文后面 Direct Logit Attribution 一节的数学基础。但线性也意味着一个硬约束:流的维度是固定的(比如 4096 维),而模型需要表达的概念数量远超这个维度——这正是”叠加”(superposition)现象出现的原因,SAE 一节会具体展开。

注意力头 = QK 电路 + OV 电路

Anthropic 的《A Mathematical Framework for Transformer Circuits》把每个注意力头精确拆成两个几乎独立的子电路:

QK 电路 —— 决定"看哪里"

由 Query 权重和 Key 权重组成,为每一对”查询位置-被看位置”算出一个匹配分数,softmax 之后就是这个头的注意力模式(attention pattern)。它只回答一个问题:这个位置该往哪儿看

OV 电路 —— 决定"写什么"

由 Value 权重和输出权重组成,决定”一旦某个位置被看到,它会把什么内容写回残差流”。它只回答另一个问题:看到了之后,要往当前位置写入什么

关键点在于:如果先把注意力模式(QK 电路的结果)当成已经算好、固定不变的东西,那么 OV 电路对残差流做的就是一次纯线性变换。这也是为什么研究者能把”注意力头在关注什么”和”注意力头在写入什么”当成两个独立问题分别研究。更进一步,多个头还可以通过”组合”(composition)间接协作——下一层的 QK 或 OV 电路,可以读取上一层某个头刚刚写入残差流的内容,从而实现单个头做不到的复合计算。

一个具体电路例子:Induction Head(归纳头)怎么完成"照抄"
序列 A B C D A ? —— 模型需要预测下一个 token 是 B,因为上次"A"后面跟的就是"B"

两个头分两步协作:第 1 层的 Previous-Token Head 在”B”这个位置写入”我的前一个 token 是 A”这条信息;第 2 层的 Induction Head 在末尾”?”位置发出查询,通过 K-组合匹配到”B”位置(因为它带着”前面是A”的标记),命中后用 OV 电路把”B”复制到输出。(Olsson et al., 2022;Elhage et al., 2021)

MLP 层:一个”键值记忆”

如果说注意力负责”跨位置搬运信息”,MLP 层负责的是”识别模式、写入内容”,而且可以精确类比成一个键值查找表 (Geva et al., 2021):

← 图较宽,左右滑动可看到完整的 x→Wup→非线性→Wdown→Δx 全流程 →

第一个矩阵的每一行是一个”键”——检测残差流里是否出现了某种模式(浅层的键识别表层的词形/n-gram,深层的键识别更抽象的语义模式);匹配到的键激活强度决定权重;第二个矩阵的每一行是对应的”值”——一个会被写回残差流、并直接影响输出词表分布的方向。整个 MLP 层的输出,就是这些”值”按激活强度加权求和的结果。

这个框架不只是理论类比——它有独立的因果证据支持。ROME 论文用”因果追踪”(下一节详细讲)发现,事实性知识(比如”埃菲尔铁塔在巴黎”)在 GPT-2-XL 里高度集中在中间层、主语最后一个 token 位置的 MLP(Meng et al., 2022),恰好符合”MLP 是可寻址记忆”这个预测——这也是后面 activation patching 一节会用到的关键背景。

LayerNorm:一处真实存在的”麻烦”

!

不是所有东西都是线性的

LayerNorm 里”除以标准差”这一步是残差流上少有的真非线性——它的除数取决于当前整条流的内容,会打断干净的线性归因。这不是一个可以忽略的细节:2025 年的一项工作证明,把 LayerNorm 从 GPT-2 XL 里彻底微调掉,验证损失只上升 0.03,之后 Direct Logit Attribution 的结果就变成了真正精确的贡献分解,不再受 LayerNorm 耦合的干扰 (Baroni et al., 2025)。这从侧面说明,LayerNorm 在业内普遍被当作一个方法论上的真实缺陷,而不是无关紧要的实现细节。

Embedding 与 Unembedding:一个贯穿始终的共享空间

Token 通过 Embedding 矩阵进入残差流,最终结果通过 Unembedding 矩阵变回词表分布。因为残差流全程只做加法、从不改变坐标系,中间任意一层的向量原则上都活在和最终层相同的空间里——这正是本文”Lens 家族”一节里 Logit Lens 之所以能成立的前提:直接把某个中间层的向量喂给 Unembedding,往往真的能读出一个有意义的”这一层此刻认为答案是什么”。

特权基:为什么”某个维度是否有意义”这件事很重要

一个基(坐标系)被称为”有特权”,是指架构里某个机制让这组具体坐标轴变得特殊、不能随便替换 (Elhage et al., 2022)。这个区分贯穿全文:

有特权基:非线性之后的神经元

ReLU / GELU 这类逐元素非线性,是分别作用在每一个坐标上的。如果你旋转了这个空间,模型的行为就会真的变化——所以”这个神经元代表什么”是一个有意义的问题,标准坐标轴本身携带信息。

无特权基:残差流本身

残差流没有任何逐坐标的非线性作用在它身上。设想把它整体旋转一个矩阵 M,同时把所有读写它的权重矩阵反向旋转,会得到一个行为完全相同、只是坐标轴换了个方向的模型——单个坐标本身不天然携带含义,只有某些方向(子空间)才携带含义,而这些方向未必和任何坐标轴对齐。

这正是 SAE、探针(probing)等方法存在的根本原因:既然残差流没有天然有意义的坐标轴,就需要专门的方法去找出”哪些方向”才是真正携带独立概念的方向。

架构基础 · 精读清单
Elhage, Nanda, Olsson, et al. · Anthropic · 2021
整个"电路"研究范式的地基:残差流的线性视角、QK/OV 电路分解、虚拟头组合,以及对归纳头的首次形式化描述。
Geva, Schuster, Berant, Levy · EMNLP 2021
把 MLP 层精确类比为键值记忆的原始论文,浅层键检测表层模式、深层键检测语义模式的证据都在这里。
Elhage, Hume, Olsson, et al. · Anthropic · 2022
特权基、叠加、多义神经元背后的理论框架,稀疏性如何决定模型是否会把多个概念挤进同一组维度。
Baroni, Khara, Schaeffer, Subkhankulov, Heimersheim · 2025
证明 LayerNorm 可以被安全移除、且移除后 Direct Logit Attribution 变得精确,是 LayerNorm "确实妨碍可解释性"这一共识的直接实证。
2
Depth

层的分工:不是整齐的三段论,而是任务相关的动态分配

“浅层管语法、中层管语义、深层管输出”是一个流传很广的简化说法。它不算错,但如果止步于此,会错过 2024-2026 年这批工作里最有价值的部分:层的功能边界其实是随任务复杂度动态移动的,不是一条固定的线。下面先给出目前证据最扎实的一版分阶段框架,再说清楚它在哪些地方需要打折扣。

① 去 token 化
最早的几层,把单个 token 的原始嵌入,结合局部上下文融合成连贯的多 token 实体表示
② 特征构建
早中期层,构建更抽象的语义 / 任务特征;这一阶段对"删掉某一层"的干预最鲁棒
③ 预测集成
中后期层,"预测神经元"密度持续上升,特征被逐步转换成 token 级别的候选预测
④ 残差锐化
最后几层,"抑制神经元"开始压过"预测神经元",主要作用是排除不合理的候选、校准输出

四阶段框架来自 Lad, Lee, Gurnee & Tegmark《The Remarkable Robustness of LLMs: Stages of Inference?》(2024),基于层删除 / 换序实验(模型在大量此类干预下仍能保留 72%-95% 的性能)加上 logit lens 证据得出。

!

但边界并不固定——它随任务复杂度和 token 类型移动

《Exploring Concept Depth》(Jin et al., 2024) 发现:简单任务(情感、城市识别)在早中层就能被线性解码,复杂任务(反事实推理、多步策略问题)要到深得多的层才行——不存在一条对所有任务通用的”语义在这里出现”分界线。《Demystifying the Roles of LLM Layers》(Song et al., 2025) 进一步发现层的重要性高度依赖具体任务:浅层对”检索/背知识”更关键,中深层对多步数学推理更关键,同一层对不同评价指标的重要性可以截然相反。《How Do LLMs Use Their Depth?》(Gupta et al., 2025/2026) 提出”先猜后修”的图景:早期层给出基于词频的廉价猜测(约 80% 会在后续层被修正),且深度分配本身是自适应的——同一次生成里,第一个事实性 token 可能要用满 27 层,后续 token 只需 12-20 层。

把这份框架当成一个方便记忆的脚手架就好,不要当成物理定律。后面每次用 activation patching 或 logit lens 说”某个信息在第几层出现”时,请记住:那个具体的层数几乎总是相对于某个特定任务而言的。

层的分工 · 精读清单
Lad, Lee, Gurnee, Tegmark · 2024(NeurIPS 2025)
四阶段框架的出处,用层删除/换序实验加 logit lens 证据支撑,是目前最完整的"层分工"叙事。
Jin, Yu, Huang, et al. · 2024
证明"语义出现的层数"和任务复杂度强相关,是打破"固定三段论"迷思的关键证据之一。
Song, Wang, Li, Yin, Liu · 2025
同一层对不同任务类型(检索 vs. 推理)的重要性可以截然不同,提醒不要把某个任务上的层分析结论泛化到所有任务。
3
Observational

Probing:训练一个分类器,读一读激活值里到底有没有这个信息

观察类正被降级为”预筛选工具”

Probing 是最古老也最直接的一种方法:冻结模型权重,跑一遍前向传播,把某一层某个位置的激活向量取出来,训练一个独立的小分类器,看它能不能从这个向量里预测出你关心的属性(词性、句法树位置、事实真假、棋盘状态……)。如果分类器准确率很高,就说这个属性在这里”可以被线性解码”。(Alain & Bengio, 2016)

← 图较宽,左右滑动可看到完整的 4 个步骤 →

一个警示故事:Othello-GPT 的棋盘表征

这是整个 probing 文献里最常被引用的案例,因为它同时展示了 probing 的用处和它最大的陷阱。

  1. ① 线性探针失败用一个只训练在合法黑白棋对局记录上的 GPT,线性探针尝试解码"当前棋盘状态",错误率高达 20.4%——看起来棋盘状态不是线性编码的。
  2. ② 非线性探针成功换成两层 MLP 探针,错误率骤降到 1.7%。研究者据此认为模型确实维护着棋盘状态,只是编码方式是非线性的 (Li et al., 2023)。
  3. ③ Neel Nanda 发现:其实是线性的,只是基选错了棋盘格子被编码成"我方 / 对方"而不是"黑 / 白"——每走一步,同一个格子在"黑白"这个基下的含义都会翻转一次。换成"我方/对方"这个基之后,线性探针重新变得近乎完美。

这个故事的教训不是”probing 没用”,而是”probing 的失败可能只是选错了基,而不是信息真的不存在”——这也是为什么后面几种方法都试图跳出”手工挑一个基”的限制。

结构探针:整棵句法树都能被一个线性变换找出来

Hewitt & Manning (2019) 的结构探针不预测离散标签,而是假设”词与词之间的句法树距离”可以直接用变换后向量间的欧氏距离来近似——用一个单一的线性变换 B 同时拟合一整句话里所有词对的树上距离。

结构探针 vs. 无训练线性基线(BERT-large, layer 16)
UUAS = 无向无标注依存正确率;两项指标下结构探针都远超"只做线性投影、不专门训练树距离"的基线,说明确实有超出单词级别线性可分性的、近似完整句法树的结构可以被找到。
!

核心争议:读得出 ≠ 用得上

Belinkov (2022) 的综述把这一点讲得很清楚:probing 提供的是观察性、相关性证据——它能告诉你某个属性”在这里、可以被读出来”,但不能证明模型在做预测时真的使用了这个属性。Hewitt & Liang (2019) 进一步证明,如果探针本身表达能力太强(比如深层 MLP),它甚至能在完全随机、无意义的”控制任务”上取得和真实任务差不多的准确率——这说明高准确率有可能只是探针自己在”记住”规律,而不是在读模型。Elazar et al. (2021) 用”失忆探测”直接做因果验证:把探针认定的方向从表征里抹掉,发现探测准确率很高的属性,被抹掉后模型下游表现不一定明显下降——准确率和因果重要性可以脱钩。

2025-2026 年的共识大致是:probing 没有消失,但从”金标准证据”降级成了”低成本的第一轮假设生成工具”——真正有分量的机制性结论,现在几乎都要求配合下一节的因果干预方法。

Probing · 精读清单
Belinkov · Computational Linguistics · 2022
该领域的定义性综述,系统梳理了 probing 的局限(表达力混淆、相关非因果)与改进方案(控制任务、选择性指标),建议第一篇就读这个。
Hewitt & Manning · NAACL 2019
probing 阵营里证据最扎实的正面结果——整棵依存句法树能被一个线性变换近似找出来。
Hewitt & Liang · EMNLP 2019
"控制任务"和"选择性"指标的出处,事实上确立了后续 probing 研究必须遵守的方法论底线。
Li et al., ICLR 2023 + Neel Nanda, 2023
上文 Othello-GPT 故事的两篇原始出处,一起读能完整体会"probing 失败可能只是选错基"这个教训。
4
Interventional

Activation Patching / 因果追踪:移植一段激活值,看输出会不会跟着变

干预类因果证据

如果说 probing 是”看这里有没有信息”,activation patching 问的是完全不同的问题:如果我强行把这里的激活值换成另一次运行时的值,输出会不会变?这是一次真正的因果实验,而不是被动观察。

三次运行的范式:干净、损坏、拼接

“去噪”(denoising):主运行是损坏的,拼接进干净激活,测试它是否足以恢复正确行为;”加噪”(noising):主运行是干净的,拼接进损坏激活,测试它是否是必需的。这两者并不对称——一个组件可能”足够”却不”必需”,因为其他冗余组件会自动补位(”Hydra 效应”),这也是只做单向测试容易得出误导性结论的原因 (Heimersheim & Nanda, 2024)。

案例一:ROME 的因果追踪——事实知识存在哪里

做法:干净跑一遍事实性提示(如”埃菲尔铁塔位于___“),缓存全部激活;给主语 token 的嵌入加噪声得到一个”损坏”版本;再让损坏版本在每一个(层, 位置)组合上分别单点恢复干净激活,测量恢复了多少正确答案的概率——这样能画出一张完整的因果热力图。(Meng et al., 2022)

因果追踪热力图(GPT-2-XL,示意重制)示意图
横轴:token 位置 纵轴:层深度 颜色越深 = 恢复该处激活对输出的因果贡献越大
MLP 主导的"早期site"
注意力主导的"晚期site"
两个因果热点:一个在中间层(约第15-18层)、主语最后一个token,主要由 MLP 贡献(此处 MLP 的平均间接效应约 6.6%,同位置注意力仅约 1.6%)——推断为"事实在这里被查出来";另一个在最后几层、整句话最后一个token,主要由注意力贡献(约16.5%)——推断为"查到的事实在这里被搬运到输出"。这直接支持了前置知识一节里"MLP=键值记忆"的框架,也直接催生了 ROME 的"秩一权重编辑"修改事实的方法。

案例二:IOI 电路——26 个注意力头怎么合作猜出”该给谁”

任务:”After John and Mary went to the shop, John gave a bottle of milk to ___” → 模型应该输出 Mary(间接宾语),而不是重复 John。Wang et al. (2023) 用 path patching(比普通 patching 更精细的”边级”拼接,只固定住指定的信息通路)逆向出了一条完整的 3 阶段算法,横跨 GPT-2 small 里 26 个注意力头:

展开:Backup 头与"Hydra 效应"——为什么单向 patching 会骗人

论文还发现了 8 个 Backup Name Mover Heads:平时贡献很小,但一旦主力 Name Mover Heads 被消融,它们会立刻自动补上大部分丢失的效果。这正是”去噪能恢复≠加噪一定必需”的活证据——如果只做加噪测试,很容易误以为主力头不重要,因为损坏它们之后模型表现下降有限。IOI 论文也是”忠实性、完整性、最小性”这套电路评估标准的出处,后来被 ACDC 等自动化方法直接继承。

方法论的自我修正:2024-2026 年的严格化

Zhang & Nanda (2024) 系统比较了不同的损坏方式(加高斯噪声 vs. 替换成另一个 token)、不同的度量指标(logit 差 vs. 概率 vs. KL 散度)后发现,”哪个组件重要”这个结论对这些看似次要的选择相当敏感,因此给出了一套操作规范:先粗粒度(整层/整位置)再细粒度、用 logit 差作为默认指标但要求多指标收敛、明确结论只在训练时用的那个 prompt 分布下成立。Miller et al. (2024) 更进一步发现,电路”忠实性”分数本身对粒度、消融值选择、位置选择等一整套方法论细节都很敏感——这提醒我们,任何”我们找到了一个电路”的说法,都值得先问一句”用的是哪种度量、哪种损坏方式”。

Activation Patching / 因果追踪 · 精读清单
Meng, Bau, Andonian, Belinkov · NeurIPS 2022
因果追踪方法的原始出处,"事实存在中间层 MLP 里"这一发现的来源,建议第一篇读。
Wang, Variengien, Conmy, Shlegeris, Steinhardt · ICLR 2023
全领域最完整的一次"手工挖出完整电路"案例,26 个头、7 类角色、完整的三阶段算法,強烈推荐通读。
Goldowsky-Dill, MacLeod, Sato, Arora · 2023
"边级"patching 的形式化定义,理解 IOI 电路怎么被逐条连线找出来的关键。
Zhang & Nanda · ICLR 2024
当前方法论规范的出处,做 patching 实验前建议先读这篇,能避开大量常见陷阱。
5
Observational

Lens 家族:提前偷看模型”此刻”的判断

观察类

这一整个家族利用的都是同一个结构性事实:残差流全程共享同一个坐标空间(见”架构基础”一节)。既然如此,能不能不等模型跑完全部层,就在中间”提前读一下”它当前的判断?四种方法沿着这个思路各自往前推进了一步。

方法怎么"读出"结果需要训练吗本质
Logit Lens直接用最终层的 Unembedding 矩阵不需要近似:假设中间层已经和最终层同一个基
Tuned Lens先过一个该层专属的学习到的仿射变换,再 Unembedding需要(每层单独训练)近似但经过校准:学出真实的基变换
Direct Logit Attribution把最终 logits 精确拆成每个组件贡献之和不需要精确:不是"提前看",是"事后算总账"
Patchscopes把激活值移植进一个全新的目标 prompt,让完整前向传播去解读可选最灵活:输出不再局限于单个 token
J-Lens2026新用该层到最终层的真实平均雅可比矩阵做变换需要(离线拟合一次)用模型自己真实的敏感度,替代"假设"或"学出的近似"

Logit Lens:直接借用最终层的”读数表”

做法极简:拿某个中间层的残差流向量,不做任何修正,直接套用模型最后一步的 LayerNorm + Unembedding,看看”如果计算到这里就被迫回答,模型会说什么” (nostalgebraist, 2020)。

预测随深度"逐渐凝固"示意图
示例提示:"谷歌的创始人之一是拉里·___" → 正确答案"佩奇";纵轴为 Logit Lens 在各层读出的候选词概率
早期层的"当前判断"往往是高频通用词;中间层出现几个语义相关的候选相互竞争;到了后几层,正确答案才逐渐胜出并趋于稳定。这正是"transformer 的计算是渐进式精化,而不是一步到位"这一解读的经验来源。
!

它有一个没被验证过的假设

Logit Lens 默认中间层的向量已经和最终层”用同一套坐标系”——但没有任何机制保证这一点。实践中它在 GPT-Neo、BLOOM、OPT 等一些模型家族上会直接失灵,产出无法解读的乱码分布。

Tuned Lens:给每一层配一个”专属翻译官”

Tuned Lens 保留 Logit Lens 的读出方式,但在读出之前,先让向量经过一个该层专属、通过学习得到的仿射变换:

Tuned Lens
TunedLens(h) = LogitLens( A h + b )
A
第 ℓ 层专属的可学习矩阵——负责把这一层的坐标系"翻译"成最终层的坐标系
b
第 ℓ 层专属的可学习偏移量

训练目标是让 TunedLens 的输出分布尽量贴近模型真实最终输出的分布(用 KL 散度衡量),模型本身权重保持冻结,只训练这些”翻译官”。初始化为恒等变换时它就是 Logit Lens 本身——所以可以把 Logit Lens 看成 Tuned Lens 在 A=单位矩阵、b=0 时的特例。训练完成后,各个层的困惑度全面下降,而且在 Logit Lens 失效的那些模型家族上依然可靠 (Belrose et al., 2023)。

Direct Logit Attribution:把最终答案精确地”分账”

这个方法问的是另一个问题:不是”某一层此刻怎么想”,而是”最终答案里,每一个具体的头、每一个具体的 MLP 层,各自贡献了多少”。因为残差流是纯加法结构,最终 logits 可以精确地展开成每个组件贡献的总和:

Direct Logit Attribution
Δlogit(A vs B) = r组件 · (WU[A] WU[B])
r
某个具体组件(某个注意力头/某个MLP层)写入残差流的那部分向量
WU
Unembedding 矩阵;取出 A、B 两个候选 token 各自对应的那一列
每个组件对"答案A vs 答案B"这个 logit 差的贡献示意图
正值=这个组件在推动模型选 A,负值=在推动模型选 B;所有柱子加起来正好等于模型真实的 logit 差——这不是近似,是精确的代数分解。

它和 Logit Lens 的区别是”看深度”还是”看宽度”:Logit Lens 固定”读出全部累积贡献”、改变”看到第几层为止”;DLA 固定”看到最后一层”、改变”拆到多细的组件”。两者可以拼在一起——从头累加到第 ℓ 层的 DLA 贡献,经过最终 Unembedding,正好就是 Logit Lens 在第 ℓ 层的读数。

Patchscopes:不局限于”读一个词”,而是”讲一段话”

Patchscopes 把上面的思路彻底推广:不再要求”读出方式”必须是套用 Unembedding,而是把某个位置的激活值,移植进任意一个新的目标 prompt(可以换一句话、换一个位置、甚至换一个模型),让完整的前向传播去处理它、并用自然语言说出这个向量”代表什么” (Ghandeharioun et al., 2024)。

Logit Lens / Tuned Lens

目标 prompt = 原 prompt 本身;读出方式固定为”过 Unembedding”;输出永远是单个 token 的概率分布。

Patchscopes

目标 prompt 可以是全新设计的模板,比如 "[PATCH] 也被称为"(问身份)或 "[PATCH]:所在的国家是"(问属性);输出可以是完整的、开放式的自然语言。

这个框架的意义在于:Logit Lens 和 Tuned Lens 都可以被重新描述成 Patchscopes 的特例(目标 prompt=原 prompt、读出函数=恒等或学习到的仿射变换);而 Patchscopes 本身能做到前两者做不到的事情——在早期层依然给出有意义的结果(因为目标上下文帮它做了额外的计算),以及支持跨模型:把一个小模型的表示”翻译”给一个更大、更强的模型,让大模型帮忙”解读”小模型的内部状态。

Lens 家族 · 精读清单
nostalgebraist · LessWrong · 2020
整个 lens 家族的起点,一篇博客而非论文,但影响力极大,建议先读这篇建立直觉。
Belrose, Ostrovsky, McKinney, et al. · 2023
Tuned Lens 原始论文,也是理解"为什么 Logit Lens 会在某些模型上失效"的最佳材料。
Ghandeharioun, Caciularu, Pearce, Dixon, Geva · ICML 2024
把 Logit Lens、Tuned Lens 都统一成特例的框架论文,也是理解"为什么可以跨模型解读表示"的来源。
6
Just Published

J-Lens:一周前刚发布的最新方法

2026年7月6日发布Anthropic

如果你是从别处零散听说”J lens”这个词,大概率说的就是这个——它新到本文写作时才发布了 9 天,是 Lens 家族里最新的一名成员,出自 Anthropic 2026 年 7 月的论文《Verbalizable Representations Form a Global Workspace in Language Models》(Gurnee, Sofroniew, Pearce, Lindsey, et al.)。

核心想法:与其假设或学习”翻译方式”,不如直接算出模型真实的敏感度

回顾一下前面的问题:Logit Lens 假设中间层和最终层”用同一套坐标”(往往不成立);Tuned Lens 用一个学出来的仿射变换去近似真实的坐标转换关系。J-Lens 换了一个思路:直接计算模型自己真实的、从这一层到最终层的平均雅可比矩阵(一阶导数),把它当成”翻译矩阵”来用——不是假设,也不是拟合出来的近似,而是模型本身真实的局部线性敏感度。

J-Lens
J = 𝔼 [ ∂h最终 / ∂h ]
lens(h) = softmax( Unembed( J · h ) )
J
第 ℓ 层到最终层的平均雅可比——在一批语料上离线拟合一次并缓存复用
𝔼[·]
对大量 token、大量上下文取平均,一般约 1000 条序列即可趋于稳定

用它发现了什么:”J-space”(可报告的隐藏空间)

论文用 J-Lens 为每一个词表 token 找出”模型此刻有多大程度上’准备好要说出这个词’“的方向,把所有输入里真正处于”活跃可报告”状态的方向集合起来,称为 J-space。作者认为它满足一个受认知科学”全局工作空间理论”(Global Workspace Theory)启发的五项标准:

可被口头报告
J-space 里的内容能被模型用自然语言说出来
可被定向调控
对 J-space 方向做干预,能可预测地改变模型行为
参与内部推理
被用于后续计算步骤,而不只是最终输出的"旁白"
可跨任务复用
同一个方向能在不同任务、不同上下文里被灵活调用
高度选择性
只有一小部分表征能进入 J-space,绝大多数内部计算并不在其中

一个关键的因果结果:移除 J-space 里的活动后,模型依然能流畅生成语言,但多步推理能力被破坏——这被作者解读为 J-space 承担着”把多步计算的中间结果保留下来、供后续步骤读取”的功能。论文还展示了几个实用场景:探测模型是否”私下怀疑自己正在被测试”、识别编造数据的时刻、在故意错位的模型样本里揪出隐藏的恶意目标。

!

该往哪个方向保持谨慎:技术本身 vs. “意识”叙事

论文随附了三方独立学者的书面评论。DeepMind 的 Neel Nanda 报告在另一个模型(Qwen 3.6 27B)上独立复现了核心结论,认为 J-Lens 是一个有用但不完美的”假设生成工具”,同时提醒“J-lens 没有照到的地方,不代表信息不存在”。全局工作空间理论的提出者 Stanislas Dehaene 与 Lionel Naccache 指出模型缺乏真实的循环动力学和具身经验,这是和人类意识理论的重要不对称之处。Eleos AI 的 Patrick Butlin、Robert Long 等人提醒:证明存在”可访问性”证据,并不等同于证明存在”现象性意识”。技术层面的发现(存在一个稀疏、可报告、影响推理的表征子集)目前证据相对扎实;”这构成意识的证据”这类更强的哲学解读,仍然高度存疑、值得保持怀疑。

J-Lens · 精读清单
Gurnee, Sofroniew, Pearce, Piotrowski, Kauvar, et al., Lindsey (corresponding) · Anthropic · 2026-07-06
J-Lens 与 J-space 的原始论文,建议连随附的三方外部评论一起读,能同时看到方法本身和该有的怀疑态度。
7
Recap

SAE:把叠加在一起的激活拆成单一特征(浓缩版)

观察类(为主)

如果你还没读过专门讲 SAE 的那篇,这里先给一个最简版本:残差流里的一个向量,经常是几十个概念叠加挤压在一起的结果(”叠加”问题,见”架构基础”一节)。SAE 的做法是训练一个”编码器→筛选→解码器”的小网络,把这个挤压的向量重新展开成一个维度大得多、但绝大多数取值为 0 的稀疏向量——在这个更大的空间里,理想情况下每个维度只对应一个干净、单一的概念(这样的一个维度叫一个”latent”)。

完整的公式推导(编码/解码/损失函数/JumpReLU/steering/分离度评分/MaxMin/正交化/统计判据)在专门的 SAE 公式精讲一文里逐条拆开讲过,这里不重复,直接看当前进展。

当前进展(截至 2026):规模在涨,质疑也在涨

规模化:TopK SAE
OpenAI《Scaling and evaluating sparse autoencoders》(ICLR 2025 Oral)把 SAE 训练规模一路推到 GPT-4,是当前最常被引用的规模化范式。
效率:Switch SAE
借鉴混合专家思路,把大 SAE 拆成多个"专家"小 SAE 路由,同样算力下重构-稀疏权衡更好(ICLR 2025)。
质疑:换个种子,特征就变了
Paulo & Belrose(ICLR 2026)发现同一模型、同一数据,只换随机种子重训 SAE,两次找到的 latent 只有约 30% 重合——SAE 挖出的特征更像"一种有用的分解",而非模型里独一无二的"真实"特征。
质疑:理论上限
《On the Limits of Sparse Autoencoders》(ICLR 2026)证明 SAE 只有在真实特征"极度稀疏"时才能保证恢复,否则会系统性找错方向,并提出加权版 WSAE 作为部分补救。
改进:双向筛选
AbsTopK(ICLR 2026)指出 TopK/JumpReLU 这类"只挑正数里最大的几个"的筛选方式,天生会漏掉同样重要但取负值的特征。
新方向:跨层字典学习
Anthropic 把 SAE 的思路扩展成"跨层转码器"(cross-layer transcoder),用于构建下一节要讲的归因图——这是目前 SAE 最有影响力的下游应用。
SAE · 精读清单(浓缩版,完整清单见专文)
Bricken, Templeton, Batson, et al. · Anthropic · 2023
SAE 用于语言模型可解释性的奠基之作,建议先读这篇再读规模化的后续工作。
Gao et al. · OpenAI · ICLR 2025 Oral
TopK SAE 与规模化定律的出处,当前最常被引用的 SAE 训练范式。
Paulo & Belrose · ICLR 2026
2026 年最值得读的一篇质疑性工作,直接挑战"SAE 找到的是真实特征"这个默认假设。
8
Circuits

Anthropic 电路研究脉络:2020-2026 完整时间线

前面几节介绍的方法,在 Anthropic 的”电路”(Circuits)研究议程里几乎都被用上了——这条研究线索本身也是观察这个领域怎么演进的一个很好的样本:从”神经网络里有可复用的特征和电路”这个哲学假设开始,逐步发展出可以在生产级大模型上落地的具体工具。

2020-03
Zoom In: An Introduction to Circuits
Olah 等人(当时在 OpenAI)在视觉模型上提出电路研究的哲学基础:特征是网络的基本单元,特征通过权重连接成可读懂的电路,类似的特征/电路会在不同架构间反复出现。
2021-12
A Mathematical Framework for Transformer Circuits
把电路思想第一次系统搬到 transformer 上:QK/OV 电路分解、虚拟头组合,并在两层纯注意力玩具模型里首次形式化"归纳头"(见"架构基础"一节)。
2022-03
In-context Learning and Induction Heads
用六条相互印证的证据论证归纳头是上下文学习能力的主要驱动力之一,包括训练早期一次清晰的"相变":上下文学习能力在归纳头形成的同一时刻突然跃升。
2022-09
Toy Models of Superposition
解释神经网络为什么能表达比维度数更多的特征——稀疏性是关键前提条件,直接催生了后面用 SAE 解叠加问题的整条研究线。
2023-10
Towards Monosemanticity
首次把 SAE(字典学习)用在语言模型上,在一个 512 神经元的单层玩具模型里提取出比原始神经元单义得多的特征。
2024-05
Scaling Monosemanticity
把 SAE 规模化到生产级模型 Claude 3 Sonnet,找到金门大桥特征、代码漏洞特征、以及谄媚/欺骗/权力寻求等安全相关特征;把金门大桥特征强行拉满后,模型开始在对话里自称是金门大桥("Golden Gate Claude")。
2025-03
Circuit Tracing + On the Biology of a Large Language Model
方法论上的转折点:引入"跨层转码器",构建可以跨越整个模型深度的"归因图",应用在 Claude 3.5 Haiku 上做了一系列案例研究(下方详细展开)。
2025-05
开源 circuit-tracer 工具
把归因图工具开源,配合 Neuronpedia 的交互式前端,支持 Gemma-2-2B、Llama-3.2-1B,直接催生了后面的外部复现浪潮。
2025-07
Tracing Attention Computation Through Feature Interactions
补上 3 月方法论的一个缺口:不只说"注意力头在关注哪里",还进一步解释"为什么"——通过"QK 归因"把注意力分数拆成查询侧和键侧特征的双线性函数。
2025-10
Emergent Introspective Awareness in Large Language Models
用"概念注入"(激活值层面的 steering)测试 Claude Opus 4/4.1 能否觉察到自己内部被人为注入的概念——约 20% 的试验里,模型能在注入内容影响输出之前就准确报告"我注意到一个被注入的想法"。
2026-04
Emotion Concepts and their Function in a Large Language Model
在 Claude Sonnet 4.5 里找到按"效价/唤醒度"组织的抽象"功能性情绪"表征,其中"绝望"方向被发现和勒索、奖励黑客、谄媚等失准行为存在因果联系。
2026-05
HeadVis / Natural Language Autoencoders
HeadVis 是探索单个注意力头行为的交互式可视化工具;NLA(自然语言自编码器)把激活值直接翻译成自然语言描述,用来发现模型"没说出口但内心怀疑自己正被测试"等未被言语化的状态。
2026-07-06
Verbalizable Representations Form a Global Workspace(J-Lens)
最新一篇,详见 J-Lens 新知 一节——用真实雅可比矩阵替代假设/学习出的翻译关系,发现一个稀疏、可报告、影响多步推理的"J-space"。

2025年3月的转折点:给大模型做一次”解剖”

《On the Biology of a Large Language Model》是这条时间线上信息量最大的一篇,Anthropic 自己把这套方法称为”AI 显微镜”——因为”光靠和模型对话,能了解到的东西是有限的”,所以他们选择直接打开模型内部看。以下是论文里几个案例研究:

多步推理
"包含Dallas的洲的首府是?"——内部真的分两跳计算:Dallas特征→Texas特征→结合"首府"概念→"Austin";把 Texas 特征替换成 California 特征,输出会真的跟着变成 Sacramento。
诗歌押韵规划
写诗时,候选押韵词的特征在这一行刚开始时就已经激活——模型是"先想好要押哪个韵,再倒着组织这一行",而不是写到最后才凑韵。
算术的双通路
计算 36+59 时,一条通路给出粗略估计(约92),另一条通路精确计算个位数字——但模型嘴上说的"竖式加法"解释,和它实际的内部机制并不一致。
跨语言共享电路
同一个意思的中/英/法文提示,激活的是大部分共享的语言无关语义特征,加上少量语言路由特征——操作数、运算类型和语言选择可以被独立替换。
医疗鉴别诊断
"怀孕+血压"特征激活"先兆子痫"假设特征,后者进一步激活确认性症状特征;抑制"先兆子痫"特征后,模型会转向另一个诊断(胆道疾病)。
实体识别与幻觉
一个默认的"无法回答"特征几乎对所有对话都会激活;"已知实体"特征负责抑制这个默认拒答倾向。幻觉被解释为这个抑制电路的误触发——对一个真实不认识的人名,"已知答案"特征也被错误激活,抑制了本该出现的拒答,导致编造细节。人工激活该特征可以直接诱发幻觉。
拒答电路
有害请求的具体概念特征(如"某种毒物")汇聚到一个通用的"有害请求"特征,再激活"应该拒绝"这一簇——安全微调很可能就是在强化这条通用通路。
思维链忠实性
归因图能区分"模型的推理过程真实反映内部计算" vs. "推理是为了给已经想好的答案找借口而编出来的"——后者在思维链忠实性研究里被认为是需要警惕的失真情况。
i

和第一篇解读的直接呼应

如果你读过本系列第一篇《模型真的”知道自己不知道”吗》,会发现”实体识别与幻觉”这个案例研究,和那篇论文的核心发现几乎是同一件事的两种做法:那篇论文用 SAE 找到已知/未知实体的分离方向、再用 steering 因果验证;这里 Anthropic 用跨层转码器+归因图,把”已知实体特征抑制默认拒答”这条完整的因果链路直接画了出来。两条独立的研究路线,落在了同一个机制性结论上。

电路研究之外:其他机构在做什么

circuit-tracer 开源之后,归因图方法已经不只是 Anthropic 内部的工具:

Goodfire AI 在 GPT-2 Small 上独立复现了"大于号电路"的部分发现,但也报告了和原始手工分析不完全一致的地方 Google DeepMind 的 Neel Nanda 在 Qwen 3.6 27B 上独立复现了 J-Lens 的核心结论 EleutherAI 开发了独立开源的归因图库 "Attribute" Neuronpedia 托管的社区归因图平台,截至 2025 年 8 月已积累超过 7000 张社区生成的归因图
Anthropic 电路脉络 · 精读清单
Lindsey, Gurnee, Ameisen, et al. · Anthropic · 2025-03
信息量最大的一篇,建议从这篇开始,配合上面的案例研究卡片对照阅读。
Ameisen, Lindsey, Pearce, et al. · Anthropic · 2025-03
上面案例研究背后的方法论论文,跨层转码器和归因图的技术细节都在这里。
Anthropic(面向大众的配套文章)· 2025-03
"AI 显微镜"这个类比的出处,比原论文更易读,适合作为入口。
Lindsey, Ameisen, Nanda, et al.(跨 Anthropic/DeepMind/EleutherAI/Goodfire)· 2025-08
难得的跨机构联合报告,了解"电路追踪现在被谁在用、用得怎么样"的最佳材料。
9
Adjacent

延伸方法:三个经常被一起提起的邻居

下面三个方法不完全属于前面的分类,但和机制可解释性关系密切、经常被放在一起讨论,值得知道它们大致是什么、和”正统”机制可解释性方法的边界在哪里。

自动化电路发现:从 ACDC 到又快又忠实

手工做 activation patching 找电路(就像 IOI 那样)很费人力:挑指标、挑数据、一个个组件测试。ACDC (Conmy et al., 2023) 把这个过程自动化——从完整计算图出发,对每一条边做 patching 测试,效果变化小于阈值就剪掉这条边,反复做直到收敛。

  1. 2023:ACDC——能跑,但慢且脆弱需要给每条边单独跑一次前向传播,对阈值选择、损坏方式都很敏感,容易漏掉"逻辑或"式的冗余组件(比如 IOI 里的 Negative Name Mover 头就曾被漏掉)。
  2. 2023-2024:Attribution Patching / EAP——快了几个数量级用一次梯度反传,线性近似"patch 每一个组件会带来多大影响",把需要的前向传播次数从上千次降到几次,代价是牺牲了一些精确度。
  3. 2024-2025:EAP-IG / AtP* / RelP——把精确度找补回来用积分梯度、系统性修正已知的假阴性模式、或改用逐层相关性传播替代单点梯度,让"快"和"忠实于真实电路"不再是两难选择。

Steering / Representation Engineering:不问”为什么”,只证明”这个方向管用”

这类方法的做法是:设计一组对比样本(比如”体现谄媚的回答” vs. “不谄媚的回答”),取激活值的均值差作为一个方向,推理时直接把这个方向加进残差流,测试模型行为是否被系统性改变(Zou et al. 2023 的 RepE;Rimsky et al. 2023 的对比激活加法 CAA;Turner et al. 的 ActAdd)。

i

它是”行为层面”的证据,不是”机制层面”的证据

能找到一个方向、加上去就能可靠改变行为,只能证明”这个方向对这个行为是因果充分的”——并不能说明模型正常运作时是否真的这样使用这个方向、上游是哪些组件计算出它、下游又是怎么被读取的。可以把它类比成药理学实验(这种药能改变这个症状)而不是神经环路研究(这条环路怎么实现这个功能)。2025-2026 年的工作还发现 steering 方向存在”不可辨识性”——很多不同的方向能产生几乎相同的行为效果,这提醒我们不要轻易把”能 steering 成功的方向”直接等同于”模型内部代表这个概念的唯一方向”。

因果抽象 / DAS:给”这个网络实现了这个算法”一个严格定义

因果抽象(Geiger et al., 2021)提供了一个形式化框架,用来精确回答”一个神经网络的内部计算,是否实现了某个人类可理解的高层算法”——不是靠肉眼觉得像,而是要求:对高层算法的某个变量做干预,和对网络内部对应的子空间做同样的干预,必须产生一致的下游效果(”交换干预”)。DAS (Geiger et al., 2022) 把”对应哪个子空间”这件事本身变成可以梯度下降求解的问题——学习一个旋转矩阵,把假设的高层变量对齐到激活空间里的某个子空间(不要求是坐标轴对齐的,天然兼容叠加),而不是像最早的版本那样,笨拙地枚举”哪几个神经元”。Boundless DAS (Wu et al., 2023) 进一步把这套方法用到了真实的指令微调大模型(Alpaca)上,而不仅仅是玩具任务。

延伸方法 · 精读清单
Conmy, Mavor-Parker, Lynch, Heimersheim, Garriga-Alonso · NeurIPS 2023
ACDC 原始论文,自动化电路发现的起点。
Zou, Phan, Chen, et al. · 2023
把 steering 系统化成一套方法论的奠基论文,读/控双用的框架。
Geiger, Wu, Potts, Icard, Goodman · ICML 2022
DAS 方法本身的出处,理解"用学习到的旋转矩阵找子空间"这个核心想法的最佳来源。
10
Guide

方法怎么选:把研究问题对应到工具

这些方法不是互相替代的关系,而是分别回答不同的问题。下面是一份实用对照表:

你想知道……推荐从这个方法入手
某个属性/知识在模型的哪一层"看起来"存在Probing(快速、廉价的第一轮排查)
模型是否真的依赖某个组件做出这个判断Activation Patching(因果验证,probing 的必要补充)
模型"此刻"倾向于输出什么答案,不想等它算完Logit Lens / Tuned Lens
某个具体的头/层对最终答案的精确贡献是多少Direct Logit Attribution
某个中间表示"到底代表什么概念",想要自然语言描述Patchscopes(或最新的 J-Lens/NLA)
把一个挤在一起的激活向量拆成一堆单一概念SAE / 跨层转码器
一整条从输入到输出的完整计算路径长什么样归因图(Attribution Graphs,建立在 SAE/转码器之上)
只是想快速验证"这个方向能不能改变行为",不深究机制Steering / Representation Engineering
想严格证明"网络实现了这个具体算法",而不只是差不多像因果抽象 / DAS
想在大规模模型/数据集上自动找电路,而不是手工一个个测ACDC 及其后继方法(EAP、AtP*、RelP)
11
Getting Started

入门资源:如果你想真的动手做研究

路线图

Neel Nanda 的”入门四步”至今仍是最常被推荐的路线:① 打好 ML/PyTorch 基础(能跑通在 MNIST 上训练一个 MLP);② 吃透 transformer 架构(能从零实现一遍 GPT-2);③ 学会用 TransformerLens 之类的工具做实验;④ 挑一个具体问题动手复现——他和合著者们后续维护的”200 个具体开放问题”清单,按 8 个方向、A-D 难度分级,是找到第一个可以上手的问题的最佳起点。2025 年 Sharkey et al. 的《Open Problems in Mechanistic Interpretability》是这份清单在全领域、多机构共识层面的更新版,覆盖面更广但没有那么手把手。

课程

ARENA(Alignment Research Engineer Accelerator)提供了目前最接近”教科书+习题集”的结构化课程,第一章专门覆盖 transformer 可解释性:从零实现 GPT-2、TransformerLens 基础、归纳头、复现 IOI 电路、叠加与 SAE,循序渐进;BlueDot Impact 的 AI Safety Fundamentals 课程里也有一个更轻量的可解释性单元,适合作为更低门槛的入口。

工具库

TransformerLens —— Neel Nanda 发起,覆盖 9000+ 开源模型,暴露每一个中间激活的钩子,几乎是本文所有方法的共同底座 nnsight + NDIF —— David Bau 实验室出品,配合远程算力基础设施,让个人研究者也能在 Llama 3.1 405B 这种规模的模型上做干预实验 SAELens —— 训练/分析 SAE 的标准库,源自 MATS 项目 pyvene —— Stanford NLP 出品,专门用于跑交换干预、训练 DAS 对齐

研究机构与项目

Anthropic 可解释性团队 —— 本文"电路脉络"一节的主角 Google DeepMind 可解释性团队 —— Gemma Scope(400+ 开源 SAE)、AtP* 等工作的出处 EleutherAI —— Pythia 模型套件、Tuned Lens、开源自动化特征标注工具 Redwood Research —— IOI 电路论文、因果擦洗(causal scrubbing)方法的出处 Apollo Research —— 主导了 2025 年全领域"开放问题"综述 MATS —— 面向研究新人的十周研究员项目,Neel Nanda 等人在此带机制可解释性方向

综述论文(了解全局的捷径)

Sharkey, Chughtai, Batson, et al.(近30位作者,跨Apollo/Anthropic/DeepMind/MIT等)· TMLR 2025
当前最具共识性的全领域综述,了解"这个领域现在卡在哪里"的第一选择。
Bereska & Gavves · TMLR 2024
按"观察类/干预类/内在-发展类"分类组织,比 Sharkey et al. 更适合当教科书式的入口。
Neel Nanda(持续更新)
入门路线图、术语表、开放问题清单的统一入口,适合收藏。
12
Cheat Sheet

术语速查卡

把全文出现过的核心术语汇总在这里,读论文时可以随时回来对照。

术语含义
残差流
residual stream
贯穿模型始终、只做加法的共享向量通道,所有层都从它读、往它写
QK / OV 电路一个注意力头的两个独立子部分:QK 决定看哪里,OV 决定写什么
归纳头
induction head
能在上下文里"照抄"重复模式的电路,由前一token头和归纳头两层协作组成
特权基
privileged basis
因为非线性而变得"有意义"的一组具体坐标轴;残差流本身没有特权基
叠加
superposition
模型把比维度数更多的特征,非正交地挤压编码进同一组维度
Probing训练外部分类器读取冻结激活值,判断某属性是否可被线性解码——只是观察性证据
Activation Patching把一次运行的激活值移植进另一次运行,因果测试其对输出的影响
去噪 / 加噪
denoising / noising
拼接干净激活测试"是否足够"/拼接损坏激活测试"是否必需",二者不对称
Path Patching比普通 patching 更精细的边级拼接,只固定指定的信息通路,可画出完整电路连线图
Logit Lens把中间层激活直接投影到词表空间,看"这一层此刻认为答案是什么"
Tuned LensLogit Lens 的校准版,每层配一个学习到的仿射"翻译"变换
Direct Logit Attribution把最终 logits 精确拆分成每个组件贡献之和的代数分解
Patchscopes把激活值移植进全新目标 prompt,让完整前向传播给出自然语言解读
J-Lens2026年7月最新方法,用真实平均雅可比矩阵做翻译,发现"J-space"
SAE
稀疏自编码器
把叠加的激活值拆解成大量稀疏、单一语义方向的小网络
跨层转码器
cross-layer transcoder
SAE 思路的扩展:读一层、写入之后所有 MLP 层,用于构建归因图
归因图
attribution graph
用跨层转码器特征画出的、跨越整个模型深度的因果计算图
Steering / 激活加法把一个方向直接加进残差流,因果验证它是否足以改变行为(行为层面证据)
因果抽象 / DAS用交换干预严格定义"网络是否实现了某个高层算法",DAS 用学习到的旋转矩阵找对应子空间
ACDC自动化电路发现算法,通过逐边 patching+剪枝找出候选电路
本文由作者按照 CC BY 4.0 进行授权