引言

在当前的大型语言模型 (LLM) 领域,“思维链” (Chain of Thought, CoT) 提示已成为一种主流范式。我们都见证过这种魔力: 如果你要求 GPT-4 这样的模型“一步步地思考”,它解决复杂数学应用题或常识推理任务的能力就会显著提高。

自然地,研究人员提出了下一个合乎逻辑的问题: 我们能否利用这些推理链来教导更小的模型?

这个过程被称为CoT 增强蒸馏 (CoT-Augmented Distillation) 。 其思路很简单: 利用一个巨大的“教师”模型 (如 GPT-4 或 Mistral) ,生成带有逐步理由的问题,然后在这些数据上微调一个微小的“学生”模型 (如 GPT-2 或 2B 参数的模型) 。人们希望学生模型不仅能学会答案,还能学会如何思考

而且这确实有效。实证研究表明,以这种方式训练的小模型,其表现明显优于仅通过问题和答案训练的模型。

但问题在于: 我们实际上并不知道其中的原因。

这些小模型真的学会推理了吗?它们是在内化教师模型的逻辑吗?还是说它们只是学会了看起来像推理的统计捷径?

在论文 《Investigating Mysteries of CoT-Augmented Distillation》 (探究 CoT 增强蒸馏的奥秘) 中,来自东北大学的研究人员决定对这一方法进行压力测试。他们进行了一系列有趣的消融实验——打乱单词顺序、遮蔽文本、以及将推理过程移动到句尾——以理解性能提升背后的机制。

他们的发现令人惊讶,并挑战了小模型正在学习“思考”这一假设。在这篇文章中,我们将拆解这篇论文,详细解释实验过程,并探讨这对未来模型训练意味着什么。


背景: 蒸馏与推理

在深入实验之前,让我们先建立基准。

知识蒸馏 (Knowledge Distillation) 是一种让小模型 (学生) 学习模仿大模型 (教师) 行为的技术。传统上,这涉及让学生模型尝试匹配教师模型的输出概率 (logits) 。

CoT 增强蒸馏改变的是数据,而不仅仅是损失函数。

  1. 输入: 一个问题 (例如,“为什么车会打滑?”) 。
  2. 教师输出: 一个理由 (“冰的摩擦力比路面小……”) + 答案 (“冰面”) 。
  3. 学生训练: 对学生模型进行微调,使其在给定输入的情况下生成理由,紧接着是答案

主流理论认为,通过强迫学生模型在给出答案之前生成推理步骤,模型会关注相关特征并像教师模型一样通过逻辑推导出答案。这被称为前置 CoT (Pre-CoT) (理由 \(\rightarrow\) 标签) 。

这篇论文的作者通过引入后置 CoT (Post-CoT) (标签 \(\rightarrow\) 理由) 挑战了这一理论,并提出了一个根本性的问题: 如果我们把答案放在前面,推理放在后面,那么推理在推理阶段 (Inference) 就不可能帮助模型找到答案 (因为答案已经生成了) 。因此,如果 Post-CoT 有效,那么“推理”假设可能是错误的。


核心方法: 实验设置

研究人员建立了一个受控环境来测试关于 CoT 蒸馏的三个具体问题。

架构

他们使用了一个标准的蒸馏设置:

  • 教师: Mistral-7B-Instruct (一个能干的开源模型) 。
  • 学生: 小型仅解码器 (decoder-only) 模型: GPT-2、Phi-1.5 和 Gemma-2B。
  • 数据集: 常识推理数据集 (CommonsenseQA、OpenBookQA 和 QuaRel) 。

他们方法的核心围绕着操纵训练目标。如下图所示,他们将标准方法与一种新的、倒置的方法进行了对比。

图 1: 对于 RQ1,我们研究了在目标标签之后增加由超大型 (教师) 语言模型 (如 Mistral) 获得的 CoT 理由。

图 1 概述了两种主要策略:

  1. 前置 CoT (标准做法) : 模型被训练为输出 [理由] [标签]。在推理时,学生生成推理过程,据推测这会引导它得出正确的标签。
  2. 后置 CoT (干预做法) : 模型被训练为输出 [标签] [理由]

关键说明: 在 Post-CoT 设置中,当模型在现实世界中使用 (推理) 时,它会立即生成标签。它不需要生成理由来获得答案。理由仅作为一种训练信号存在,用于在微调过程中更新权重。

如果“学习推理”的假设为真,Pre-CoT 的表现应该远超 Post-CoT,因为 Pre-CoT 允许模型在回答之前先“思考”。让我们看看结果如何。


实验 1: 位置重要吗?

作者调查的第一个“谜团”是理由的位置。

结果

研究人员在两种配置下训练了学生模型,并将它们与基线 (无 CoT,仅 问题 \(\rightarrow\) 答案) 进行了比较。

表 1: 仅解码器模型在基线监督微调 (无 CoT) 、标准 (前置) CoT 和后置 CoT 下的性能比较。

表 1 展示了一个惊人的结果。请看 CoT after Label (后置 CoT) 这一行。几乎在每个数据集和模型 (GPT-2, Phi-1.5, Gemma-2B) 中,将推理放在标签之后的表现都优于将其放在之前

为什么会这样?

这一结果表明,学生模型并不需要执行“推理时推理 (inference-time reasoning) ”来从数据中获益。在反向传播 (训练更新) 期间,仅仅是理由标记 (tokens) 的存在就能让模型学习到更好的输入表征。

为了理解模型学习方式的差异,作者使用了一种称为 TunedLens 的技术。这项技术允许我们窥视 Transformer 的层内部,查看模型在不同深度正在“思考”什么。

图 2: GPT-2 变体的 TunedLens 可视化。

图 2 显示了在三种不同设置下,模型预测正确标签的置信度 (y轴) 随层深 (x轴) 的变化:

  1. 左 (无 CoT) : 模型直到最后几层都不确定。
  2. 中 (前置 CoT) : 模型较早获得了置信度。
  3. 右 (后置 CoT) : 模型在网络的极早期 (大约第 20-30 层) 就“锁定”了正确答案。

这表明,将理由放在标签之后进行训练会产生更强的梯度信号,迫使网络的早期层识别正确答案。理由在训练过程中充当了强大的正则化器或特征高亮器,即使它在测试时并没有生成。

我们可以在关于电动汽车的具体示例的热力图分解中更清楚地看到这一点:

图 6: 无 CoT 基线: 未使用 CoT 理由微调的 GPT-2 变体。

图 6 (无 CoT) 显示基线模型仅在最后一层 (第 40 层以上) 才变得自信 (红色) 。

图 8: 后置 CoT: CoT 理由附加在目标标签之后的 GPT-2 变体。

然而, 图 8 (后置 CoT) 显示模型早在 第 27 层 就弄清楚了答案是“C”。这证明来自未来标记 (理由) 的训练信号已经反向传播,从而更有效地组织了早期层。

仅仅是“更多的计算量”吗?

LLM 研究中一个常见的反驳观点是,CoT 之所以有效,仅仅是因为生成更多的标记给了模型更多的“时间” (计算深度) 来处理答案。

作者通过用 <unk> (未知) 标记填充输入来代替推理词,对此进行了测试。

图 3: 在目标标签前预置固定数量 \\(< u n k >\\) 标记的 GPT-2 性能。

图 3 显示,虽然添加一些虚拟标记略有帮助 (“计算量”论点有一定道理) ,但它很快就会趋于平稳,并且从未达到真正 CoT 的性能。这证明理由的内容很重要,而不仅仅是长度。


实验 2: 连贯性检查

如果内容很重要,那么逻辑重要吗?

在前置 CoT 范式中,我们假设模型学习语义依赖关系: “A 意味着 B,因此 C。”如果这是真的,理由词的语法和顺序应该是至关重要的。

研究人员进行了“打乱顺序 (Shuffling) ”的消融实验。他们采用了教师模型生成的连贯理由,并随机打乱了单词顺序。

  • 原始: “The answer is B because ice has less friction.” (答案是 B,因为冰的摩擦力较小。)
  • 打乱后: “Friction less ice because B answer is the.” (摩擦力 小 冰 因为 B 答案 是 这。)

结果

表 2: 在 SFT 期间打乱理由以测试对 CoT 连贯性鲁棒性时的模型性能比较。

表 2 展示了这篇论文中最反直觉的发现:

  1. 前置 CoT (打乱) : 性能崩溃。这也是合理的——如果模型必须在回答之前生成垃圾文本,它会把自己搞糊涂。
  2. 后置 CoT (打乱) : 性能与连贯的 CoT 几乎完全相同

结论: 当理由放在标签之后时,模型并不关心语法或逻辑。 它本质上将理由视为“词袋 (bag of words) ”。它学习到的是,当答案是“Ice (冰) ”时,未来的标记很可能包含“friction (摩擦) ”、“smooth (光滑) ”和“slippery (滑) ”。它将这些语义概念与答案标签联系起来,而不管句子结构如何。

遮蔽理由

为了进一步推进这一研究,他们尝试删除部分理由。我们可以删除多少“解释”而优势不消失?

图 4: 通过遮蔽连续减少 CoT 理由中可用信息量时的模型性能比较。

图 4 说明,对于后置 CoT (橙色线) ,你可以遮蔽 (删除) 近 60% 的理由标记,而不会显著损害性能。模型只需要几个关键词就能维持性能提升。


实验 3: 寻找“黄金”标记

如果模型只需要一个“词袋”,并且可以承受 60% 的删除,那么哪些词实际上在起作用?

作者使用了一种称为积分梯度 (Integrated Gradients, IG) 的方法来识别理由中对预测标签贡献最大的特定标记。

数学原理

积分梯度近似计算了模型输出相对于输入的梯度的积分。

积分梯度公式

简单来说,这个公式问的是: “如果我改变理由中的这个特定单词,正确答案的概率会改变多少?”

根据这个指标,他们提取了前 15 个最重要的标记,并扔掉了理由的其余部分。他们还将此与人类认为重要的词进行了比较。

图 5: 归因方法的比较: 左侧是我们通过积分梯度进行的自动提取,而右侧显示了人类标注者认为相关的单词。

图 5 直观地展示了差异。算法 (左) 通常会选择人类可能忽略的标记,或者是特定于数据集的统计相关性,而人类 (右) 则选择从语义上解释答案的词。

结果

表 3: 在不同归因方法下相对于保留全长后置 CoT 理由的模型性能比较。

表 3 显示了使用这 15 个附加到标签后的归因标记 (后置 CoT 风格) 训练学生模型的结果。

  • Grad Attr (积分梯度) : 性能与完整的、连贯的 CoT 不相上下
  • Human Labels (人类标签) : 性能显著下降。
  • Word2Vec (仅相似词) : 性能下降至基线水平。

这意味着什么?

这证实了 CoT 蒸馏的好处来自于特定的关键标记 , 它们提供了丰富的语义信号。

至关重要的是,帮助模型的标记不一定是人类认为重要的那些。它们是在 LLM 的高维空间中具有最高梯度影响力的标记。仅仅找到与答案“相似”的词 (Word2Vec) 是不够的;模型需要教师模型产生的特定上下文标记。


结论与启示

这篇论文揭开了现代 NLP 中最流行技术之一的神秘面纱。研究结果发人深省,但对从业者来说非常有用。

关键要点

  1. 后置 CoT 更优: 你不需要强迫小模型在推理时生成长长的推理链。通过在答案之后训练推理,你可以获得更好的准确性。这使得你的模型运行起来更快、更便宜,同时保持了准确性的提升。
  2. 逻辑是可选的 (对于蒸馏而言) : 学生模型并没有学习教师的逐步逻辑。它学习的是“问题 + 答案”与特定的“推理词袋”之间的概率关联。
  3. 效率: 你可以精简你的训练数据。你不需要整段的解释。附加在训练标签后的一小组高梯度关键字可以产生与全 CoT 训练相同的效果。

“为什么”

作者总结说,CoT 增强蒸馏之所以有效,不是因为它教导了“思考”,而是因为它实现了特征增强 (feature enrichment)

当我们强迫模型预测理由 (即使是在标签之后) 时,我们强迫内部表征 (隐藏状态) 包含关于这些理由词的信息。因为这些理由词在语义上与正确答案相关,模型对答案的表征变得更加丰富,并且与错误选项的区别更加明显。

这篇论文提醒我们,在深度学习中,拟人化我们的模型——假设它们像我们一样“思考”——可能会误导我们。有时,看起来像推理的东西其实只是非常好的统计相关性。了解这一点可以让我们构建更高效、更稳健的系统。