大型语言模型 (LLM) 的内部常常被描述为一个“黑盒”。我们知道输入是什么 (提示词) ,也知道输出是什么 (连贯的续写) ,但这两者之间数十亿次的计算过程在很大程度上仍然是个谜。

对于自然语言处理 (NLP) 领域的学生和研究人员来说,这种不透明性是一个问题。如果我们不知道模型是如何工作的,我们就无法完全信任它,无法在它产生幻觉时修复它,也无法防止它表现出偏见。

近年来, 机械可解释性 (Mechanistic Interpretability) 领域应运而生,旨在破解这一密码。我们已经成功地独立研究了 注意力机制 (Attention mechanisms) (模型如何在单词之间移动信息) 和 多层感知机 (MLPs) (模型如何存储和处理知识) 。但在 Transformer 架构中,这两个组件并不是孤立工作的,它们紧密地交织在一起。

本文将深入剖析一篇引人入胜的研究论文: *《Interpreting Context Look-ups in Transformers: Investigating Attention-MLP Interactions》 (解读 Transformer 中的上下文查找: 探究注意力与 MLP 的交互) *。该论文揭示了这两个组件究竟是如何相互交流的。研究人员发现了一种特定的机制,即注意力头“查找”上下文并向特定的 MLP 神经元发送信号使其激活,从而有效地引导模型对下一个单词的预测。

问题: 分则败

为了理解这篇论文的贡献,我们需要先看看 Transformer 的标准视图。一个 Transformer 层通常包含两个主要的子层:

  1. 注意力机制 (Attention Mechanism) : 这允许模型查看句子中的其他单词以收集上下文。它实际上是在说: “为了理解这里的单词‘bank’ (岸/银行) ,我需要看看句子前面出现的‘river’ (河) 。”
  2. MLP (前馈网络) : 它处理收集到的信息。最近的研究表明,MLP 充当 键值记忆 (Key-Value Memories) , 存储事实和语言模式。

一直以来,可解释性研究都将这两者分开对待。我们要么分析注意力图来看看“模型在看什么”,要么分析 MLP 神经元来看看“什么概念激活了这个神经元”。

缺失的一环: 研究人员认为这种分离是人为的。实际上,注意力头可能会检测到一个特定的模式 (上下文) ,并将该信息直接传递给 MLP 神经元以执行预测。

我们表征注意力头的方法。

图 1 展示了核心假设。注意这个流程:

  1. 上下文检测: 注意力头 (彩色梯形) 扫描输入 Token (\(x_0...x_k\)) ,寻找特定的上下文 (例如,“如果上下文 A”) 。
  2. 移交: 注意力头的输出被添加到残差流中。
  3. 激活: 这个特定信号激活了 MLP 层中的一个“Next-Token 神经元”。
  4. 预测: 该神经元提升了输出词表中特定单词 (Token) 的概率。

这暗示了一种协作的“回路”,其中注意力头充当 检测器 (“我看到了一个暗示比较的上下文!”) ,而 MLP 神经元充当 执行器 (“我将预测单词‘than’!”) 。


背景: 构建基块

在剖析方法论之前,我们需要确立论文中使用的几个基本概念。

1. Next-Token 神经元 (下一词预测神经元)

并非 LLM 中的所有神经元都容易解释。然而,研究人员发现了一类特定的神经元,称为 Next-Token 神经元 。 这些 MLP 神经元的输出权重几乎与词表中特定单词的嵌入 (Embedding) 完美对齐。

当一个“Next-Token 神经元”激活时,它会直接增加特定单词成为下一个生成词的概率。例如,可能存在一个专门用于增加单词“basketball”概率的神经元。

2. 可解释性流程

作者利用现代可解释性方法,即利用更强的模型 (如 GPT-4) 来解释较弱的模型 (如 GPT-2) 。这有时被称为“自动可解释性”。其逻辑是:

  • 在 GPT-2 中找到一个神秘组件。
  • 将其行为展示给 GPT-4。
  • 询问 GPT-4: “这个组件在做什么?”

方法论: 五步深度解析

这篇论文的核心是一个严谨的五步流程,旨在寻找并验证这些注意力头与 MLP 的交互。让我们逐步了解它。

我们的方法论图解。

图 2 提供了路线图。我们将详细分解每一步。

第一步: 识别 Next-Token 神经元

首先,我们需要找到“执行器”——即 MLP 层中试图预测特定单词的神经元。研究人员关注模型的最后几层 (具体来说是 GPT-2 Large 的最后 5 层) 。

他们为每个神经元定义了一个 一致性分数 (congruence score, \(s_i\)) , 以衡量它与词表中特定 Token 的映射强度。

公式 1: 一致性分数

在这个公式中:

  • \(\mathbf{w}_{\mathrm{out}}^i\) 是神经元 \(i\) 的输出权重。
  • \(\mathbf{e}^t\) 是 Token \(t\) 的嵌入向量。
  • 点积 \(\langle \cdot, \cdot \rangle\) 衡量相似度。

如果一个神经元在单词“apple”上得分很高,那它实际上就是一个“apple 预测神经元”。

GPT-2 Large 中每个 Token 得分最高的神经元分布。

图 3 所示,这些高分神经元绝大多数出现在模型的最后几层 (GPT-2 Large 的第 30-35 层) 。这是合理的;前面的层处理抽象概念,而最后的层必须为输出准备具体的单词。

第二步: 寻找最大激活提示 (Prompts)

一旦我们要到了目标神经元 (例如,一个预测“go”的神经元) ,我们需要知道什么会触发它。研究人员将来自“The Pile” (一个庞大的数据集) 的数千个提示词输入模型,并挑选出让该神经元激活程度最高的 20 个提示词。

然而,提示词可能很长且充满噪音。为了分离出确切的触发器,研究人员执行了 提示截断 (Prompt Truncation)

提示截断的一个例子。

图 4 完美地展示了这一点。原始提示是一篇关于棒球场的长新闻文章。截断过程切掉了文本的开头,直到神经元的激活度降至 80% 以下。

  • 原始文本: 长篇文章… “baseball stadiums can come and…” (棒球场可能来来…)
  • 截断后: “while baseball stadiums can come and…” (虽然棒球场可能来来…)

这给我们留下了一个简洁的触发器: 短语 “come and” (来来往往) ,它强烈暗示下一个词是 “go”。

第三步: 归因于注意力头

现在是关键的连接环节。我们有了神经元 (目的地) 和提示词 (触发器) 。是哪个注意力头 (来源) 发送了信号?

研究人员计算了一个 头归因分数 (Head Attribution Score) 。 这衡量了一个特定注意力头对该神经元激活的贡献程度。

公式 2: 头归因分数

理想情况下,我们寻找的是注意力头的输出 (\(h_{i,k}\)) 与神经元的输入权重 (\(e_{j,l}\)) 之间的高点积。如果分数很高,意味着注意力头正朝着神经元“倾听”的确切方向“大声呼喊”。

第四步与第五步: 利用 GPT-4 自动化解释

我们现在有了一个列表,列出了特定注意力头在哪些提示词下激活了特定的 Next-Token 神经元。但 为什么

这时 GPT-4 作为分析师登场了。研究人员向 GPT-4 提供两个列表:

  1. 激活示例: 注意力头强烈激发的提示词。
  2. 未激活示例: 注意力头 没有 激发的提示词。

GPT-4 被要求用自然语言生成对该模式的解释。

我们方法的重新图解 - 分步演练。

图 7 (上图) 提供了这一特定过程的详细演练,使用的是一个“as”神经元。

  • 观察: 头部在 “as early as” 和 “as far back as” 上激活。
  • GPT-4 解释: “519 号头在提示词包含指代近似范围的短语时处于激活状态。”
  • 验证: 研究人员随后测试这个解释。他们给 GPT-4 新的 提示词并问: “根据你的解释,这个头会在这里激活吗?”如果 GPT-4 猜对了,那么该解释被认为是准确的。

结果: 注意力头理解上下文吗?

结果证实这种交互是真实且可解释的。研究人员发现,许多注意力头都有高度特定的工作: 它们识别语言上下文并向 MLP 发出信号以预测合适的单词。

定性成功: 有意义的模式

自动生成的解释揭示了注意力头迷人的语言学角色。

表 1: 具有语义意义的提示区分的注意力头示例。

表 1 中,我们看到一个与“as”神经元相连的头。它并非每次出现“as”时都会激活。

  • 激活: “as early as”, “as high as” (比较/范围) 。
  • 未激活: “such as”, “so long as"。

这个头本质上充当了一个 “比较语法检测器”

表 2 提供了更多例子。

表 2: 此表说明了特定注意力头如何在特定上下文中激活 Next-Token 神经元。

看看 “number” 这个 Token。模型针对同一个词的不同上下文有不同的头:

  • 头 (31, 364, 519): 在排名的语境下激活 “number” (例如 “number one”) 。
  • 头 (31, 364, 548): 在身份识别的语境下激活 “number” (例如 “phone number”) 。

这证明了注意力头正在执行 上下文消歧 (Context Disambiguation) 。 它们观察句子,意识到 “number” 的哪个定义是相关的,并基于该特定上下文激活 “number” 神经元。

定量成功: 解释分数

为了衡量 GPT-4 解释这些头的能力,作者定义了 头解释分数 (Head Explanation Score, \(\mathcal{E}\))

公式 3: 头解释分数

这个分数本质上是 GPT-4 在新数据上预测的准确率 (真阳性和真阴性) 。0.5 分代表随机猜测;1.0 分代表完全理解。

图 5: 头解释分数的分布。

图 5 展示了这些分数在不同模型 (GPT-2 和 Pythia) 中的分布。

  • 蓝色条形 代表真实的注意力头。注意“右偏 (rightward skew) ”,意味着许多头的分数很高 (0.6, 0.7, 0.8) 。
  • 红色条形 (在图 d 中) 代表随机神经元。这些集中在 0.5 左右。

统计学上的差异 (由 p 值显示) 证实了这些注意力头与 Next-Token 神经元之间的关系不是随机噪声——它是一种结构化的、可解释的机制。

通过消融实验验证

最后,科学需要验证。如果这些注意力头真的负责预测这些 Token,那么“关闭它们” (消融) 应该会损害模型的性能。

研究人员选取了头处于激活状态的提示词,并在前向传播过程中手动将该头的输出归零。

图 6: 消融相关注意力头后 Token 概率的下降。

图 6 展示了结果。

  • 激活 (橙色框) : 当头本应处于激活状态时,将其消融会导致正确 Token 的概率 显著下降 (负值) 。
  • 未激活 (蓝色框) : 当头本身就不活跃时,将其消融几乎没有任何影响 (值接近零) 。

这证实了因果联系: 注意力头是 Next-Token 神经元正确激发的必要组件。


结论与启示

这篇研究论文为理解大型语言模型提供了至关重要的一块拼图。它使我们超越了孤立地研究组件,并强调了驱动智能的 交互作用

主要收获:

  1. 电路存在: 存在一个清晰、可重复的机制,其中注意力头检测上下文并“传递接力棒”给 MLP 神经元以预测下一个单词。
  2. 上下文专一化: 同一个单词 (如 “number”) 会根据语义上下文 (排名 vs 识别) 由不同的注意力头触发。
  3. 自动可解释性有效: 使用 GPT-4 来解释较小模型的内部工作原理是一种可行且可扩展的策略。

为何重要 对于进入该领域的学生来说,这篇论文表明 LLM 并非深不可测的魔法。它们由可发现的电路组成。理解这些电路是“调试”AI 的第一步——无论是修复偏见、移除有害知识,还是仅仅让模型更高效。

下次当你看到 LLM 预测出完美的单词来完成句子时,请记住: 这不仅仅是一次随机猜测。很可能是一个特定的注意力头在几英里外就发现了上下文,并向一个特定的神经元发出了准备发射的信号。


*论文中使用的算法大纲: * 算法 1: 分析相对于 Next-Token 神经元的注意力头活动