思维链(CoT)提示技术已被证明能提升大语言模型(LLM)在各类任务中的表现。采用该方法时,LLM 似乎会先生成类似人类的推理步骤(即 CoT 推理),再给出最终答案,这往往让人觉得 LLM 正在进行深思熟虑的推理过程。 换句话说,CoT 推理的有效性并非源于模型的逻辑推演能力,而是对训练数据模式的记忆与插值,其本质是高度结构化的模式匹配,而非真正可泛化的逻辑推理。 为此,他们通过提出数据分布的替代视角来质疑 CoT 推理,并进一步探究其失效的原因与时机。他们通过任务(task)、长度(length)和格式(format)三个维度对 CoT 推理进行了剖析。 另外,如下表,从 f1°f2 到 f2°f2,LLM 能够正确回答 0.1% 的问题。但进一步检查发现,这只是一个巧合,如查询元素为 A, N, A, N,恰好在这两种操作中产生了相同的结果。 上述结果表明,CoT 推理无法泛化到新的变换,甚至无法泛化到新的组合变换。与其说 CoT 推理真正理解了文本,不如说它的表现更像是对训练过程中习得模式的简单复刻。 更进一步,研究团队对少量未见数据进行了监督微调(SFT),从而探究 CoT 推理能否推广至未见过的变换。这种方式能降低训练集与测试集之间的分布差异,这可能有助于 LLM 对测试查询进行泛化。 结果显示,只需要极少量示例样本,就能让模型快速泛化到未见过的变换场景,大幅提升性能。这说明,LLM 非常擅长从数据中快速学习新模式,但也说明其能力范围被见过的模式严格限定。 研究团队在固定其他因素后,设置了 ID、CMP 和 OOD 三种场景。其中,在 ID 场景中,测试元素与训练元素使用相同的字母;CMP 场景中,测试元素是由训练时接触过的字母构成新的组合;在 OOD 场景中,测试元素是训练时从未见过的字母。 在组合方面,他们测试了当观察到元素中的所有基本原子时,CoT 推理是否能够泛化到新的组合,如 (A, B, C, D) → (B, C, D, A)。基于组合中的原子顺序,CMP 可以进一步发展。而对于 OOD,构成元素的原子在训练期间是完全未见过的。 结果显示,与变换泛化类似,当模型在所有变换中持续遭遇分布偏移时,其性能会急剧下降。从 ID 到 CMP,再到 OOD,在所有情况下,精确匹配度均从 1.00 逐步降至 0。 他们通过 SFT 进一步探索 CoT 推理何时能够泛化到新的元素,如下图。结果显示,当训练数据中出现相似(n 较小)的例子时,性能迅速提高。有趣的是,当 n=3 时,CoT 推理的精确匹配率与性能下限一致,这可能表明 CoT 推理在新颖元素上的泛化能力非常有限,即使在下游任务上进行 SFT 也是如此。 他们还发现,训练过程中答案与推理步骤之间存在准确性不匹配的问题,这在某种程度上可能解释了为什么在某些情况下 CoT 推理不一致。 长度差异可能源于文本空间或问题推理空间。因此,研究团队将长度泛化分解为两个互补维度:文本长度泛化与推理步骤泛化。 文本长度泛化旨在评估当输入文本长度与训练示例不同时,CoT 推理的性能如何变化。考虑到 LLM 处理长文本的方式,这一维度至关重要,因为现实世界的问题通常涉及不同程度的复杂性,这些问题表现为问题陈述长度、上下文大小或信息密度的差异。 实验结果显示,模型仅在文本长度为 4 的训练数据上表现优秀,精确匹配率达到 100%。随着长度差异的增加,CoT 推理长度泛化的有效性会降低,精确匹配率也会降至 0。这表明 LLM 对输入长度等统计特性极其敏感。 他们还探讨了使用不同填充策略减少训练数据和测试案例之间的差异。他们发现,填充到最大长度对长度泛化没有贡献。然而,当他们使用分组(Group)策略用文本替换填充时,性能有所提高。 结果表明,CoT 推理无法在需要不同推理步骤的数据集间泛化,存在泛化失败的现象。随着未见数据比例的增加,目标数据集上的性能呈现提升趋势。与此同时,由于训练数据量不足,语言模型无法对原始训练数据集进行泛化。这说明,模型的性能完全由训练数据的分布构成决定,不存在超越数据分布的泛化。 格式泛化旨在评估 CoT 推理对测试查询中表面形式变化的鲁棒性,这一维度对于确定模型是否已经内化了灵活的、可迁移的推理策略,或仍然依赖于训练期间遇到的具体模板和短语尤为重要。 实验结果表明,CoT 推理很容易受到格式变化的影响,无论是插入、删除、修改,还是混合模式,都会产生影响正确性的格式差异。他们进一步将查询内容划分为三个部分:元素、变换和提示词。他们发现,元素和变换在格式中起着关键作用,而其他 token 的改动对结果影响不大。 CoT 并非真正的逻辑推理机制,而是一种高级的结构化模式匹配形式,其根本局限在于训练阶段所见的数据分布。一旦略微超出该分布范围,其性能便会显著下降,暴露出其"推理"过程的表面性本质。 而且,他们还在论文中写道,“尽管我们的实验采用了在受控环境中从头开始训练的模型,但所揭示的原理可扩展至大规模预训练模型。”这似乎印证了“CoT 看似强大的推理能力本质上是一种脆弱的幻象”的说法。 即便是模拟出来的推理,也必须是在人类语言中进行的推理。推理是一项复杂的任务,需要像人类语言这样复杂的工具。推理任务需要在多个不同选项之间做出选择,不断改变方向,但这篇论文里的例子从结构上就不可能做到这一点。 小型模型难以涌现推理能力。一个 60 万参数的模型,可能可以学会按顺序应用转换规则,但未必聪明到能将这些转换分解成它们各自的组成部分。它没有足够的原始“脑力”来执行相关操作,所以研究结果很难推广到一个 10 亿、100 亿或 1000 亿参数的模型上。 这篇论文的核心论点,推理模型在超出其领域时会遇到困难,这对于强大的人类推理者来说也同样成立。人类推理同样依赖经验模板,在陌生领域容易出错。既然推理模型是在大量人类或类人的推理文本上训练出来的,那么它们的推理方式像人类,又何必惊讶呢? 如果它声称 AI 推理在某种程度上是“虚假”的,检查是否有部分(至少)直接评估人类推理技能的质量,或者理想情况下提供“真实”推理的严格哲学定义。 如果它指出 AI 模型在推理任务上失败,请检查任务本身是否真的需要推理(即考虑多种方法)或者是否仅仅需要计算(遵循固定算法)。


