无需提示的思考链推理:深度探索大模型的内在能力
在人工智能领域,提升大模型(LLMs)的推理能力一直是研究的核心。传统方法主要依赖特定的提示技术,例如少量样本或零样本的思考链(CoT)提示。虽然这些方法有效,但往往需要大量手动提示工程。来自 Google DeepMind 的研究团队提出了一个新视角:无需提示,LLMs 能否有效推理?研究者发现,与传统的贪婪解码相比,通过考虑 top-k 备选令牌,可以揭示 LLMs 内在的 CoT 路径。这种方法不仅避免了提示带来的混杂因素,还允许更准确地评估模型的内在推理能力。
思考链(CoT)解码
CoT-decoding(推理路径解码)的过程展示了预训练的大型语言模型在没有提示的情况下如何进行推理。通过考虑替代的 top-k 令牌,而不是仅依赖于贪婪解码的 top-1 令牌,模型能够展示出内在的推理能力。当模型在解码过程中发现了一个有效的思考链路径时,它对最终答案的置信度会更高。
以解决涉及苹果数量的数学问题为例,模型不仅能够识别出问题的解决需要一个清晰的推理步骤,而且能够通过探索不同的解码路径来避免直接给出错误答案,最终以更高的置信度得出正确答案。这一过程突出了模型在适当的解码策略下能够进行复杂推理的潜力。
在表 1 中,研究者展示了在数学问题(GSM8K)和常识推理(年份的奇偶性)上的解码路径示例。他们使用了预训练的 PaLM-2 大型模型来比较其贪婪解码路径(k=0),以及备选解码路径(k>0),其中 k 表示在第一个解码步骤中选择的第 k 个令牌。
以 GSM8K 问题为例,Kylar 去商店为他的公寓购买 16 个杯子,每个杯子的价格是 5 美元,但每第二个杯子的价格仅为原价的 60%。通过贪婪路径得到的答案是 60 美元,而通过考虑替代的 top-k 路径,模型能够自然地展现出 CoT 推理,例如在 k=9 时,模型计算出正确的总价格为 64 美元。在年份奇偶性问题上,Nicolas Cage 的出生年份问题,模型通过贪婪路径直接给出错误答案,但当考虑 k>0 时,模型能够自然地生成 CoT 路径,并在 k=3 和 k=7 时正确判断出 Nicolas Cage 出生于偶数年。
研究者们展示了如何在解码过程中可靠地提取 CoT 路径。表 1 显示,CoT 路径并不总是排在模型概率评估的前面,也不总是所有路径中的主导答案,这使得像自洽性这样的方法不适用。研究者们发现,CoT 路径的存在通常会导致最终答案的解码更加自信,表现为顶级和次级令牌之间显著的概率差异。他们引入了一个度量方法,称为 CoT-解码,通过计算答案标记的顶级和次级概率之间的差异来提取 CoT 路径。
例如,在 GSM8K 问题中,对于答案'60',模型会计算'6'和'0'的概率差异并取平均值。这种方法能够从模型的解码路径中提取出 CoT 路径,并且每个解码路径都用其对应的Δ值标记(答案标记加粗)。具有 CoT 组件的路径展现出更高的Δ值,这突出了模型的增加信心。
研究者们还进行了定量分析,手动检查了 GSM8K 中的前 100 个问题,发现在 top-10 解码路径中,按照模型答案信心度排名的路径有 88% 包含 CoT 路径,这显示了模型答案信心度和 CoT 路径之间的高度相关性。
在表 2 中,研究者们比较了从 top-10 解码路径中提取 CoT 路径的不同方法。CoT-解码能够可靠地提取 CoT 路径,与其他方法相比,显著提升了模型的推理性能。
计算Δ需要确定模型回答中的答案范围。一种常见的方法是提取数学推理任务中的最后一个数值,或者在基于集合的推理任务中提取最终选项作为答案。另外,也可以使用'所以答案是'的提示来扩展模型的输出,并将这些延续与模型解码路径中的跨度对齐作为答案。
CoT-解码在第一个解码步骤中探索替代令牌。问题是:采样是否能达到类似的效果并揭示 CoT 推理路径?研究发现,尽管在少量 CoT 提示下采样表现良好,但在没有提示的情况下,采样并没有表现出期望的行为。在表 3 中,比较了 CoT-解码与在没有 CoT 提示时的自洽性。采样的无效性源于模型在解码期间有强烈倾向直接提供答案,因此第一个令牌的多样性比 CoT-解码要少。
另一个问题是,与仅在第一个解码步骤分支相比,在后续解码步骤中分支是否可行。显然,早期分支(例如,在第一个解码步骤)显著提高了潜在路径的多样性。相反,后期分支受到之前生成的令牌的显著影响。然而,最佳分支点可能因任务而异;例如,在年份奇偶性任务中,中途分支可以有效地产生正确的 CoT 路径。
由于已经解码了 top-k 路径,一个自然的扩展是将所有这些路径上的答案进行聚合,类似于自洽性,但不用提示。这种聚合的理由是减少对模型 logit 的小差异的敏感性,特别是当仅依赖于最大Δ的路径时。表 1 中的例子显示,多数答案不太可能是正确的。相反,研究者们提出了一种加权聚合方法,即采用最大化Δ̃a = Σk Δk,a 的路径,其中Δk,a 是答案=a 的第 k 个解码路径。采用这种方法可以增强结果的稳定性。
实验
实验中,模型接收的标准输入格式为 QA 格式,即 Q: [question]\nA:,其中 [question] 根据具体任务填充实际问题。模型需要基于这个前缀继续生成回答。在解码阶段,研究者们采用 k = 10 作为默认设置,考虑第一个解码位置的前 10 个备选 top-k 令牌,并在此之后继续使用贪婪解码策略。
数据集
- 数学推理:使用了 GSM8K 数据集和 MultiArith 数据集,包含小学数学问题和多步骤算术问题。
- 常识推理:研究了'年份奇偶性'任务,询问模型名人的出生年份是偶数还是奇数。
- 符号推理任务:包括 Coin Flip 任务、Web of lies 任务和多步骤算术任务,均来自 Big-Bench-Hard。
使用了包括不同规模的 PaLM-2、Mistral-7B 和 Gemma-7B 在内的三个公共模型。实验主要集中在预训练模型上,但也包括了指令调整(inst-tuned)模型。
表 4 展示了在 Mistral-7B 预训练模型上,与多种流行的解码基线相比,CoT-decoding 是唯一能显著增强语言模型推理能力的解码策略。例如,贪婪解码的准确率为 9.9%,而 CoT-decoding(k = 10) 的准确率显著提升至 25.1%。
图 3 展示了 CoT-decoding 在 PaLM-2、Mistral 和 Gemma 三个不同的语言模型家族中,都能有效地引出模型的推理能力。在数学和常识推理任务上,CoT-decoding 相比于贪婪解码,性能提升显著,有时甚至是翻倍或三倍。
CoT-decoding 允许研究者们在没有人类提供提示的情况下,更真实地评估语言模型的内在推理能力。通过系统地变化合成任务的难度级别,研究者们能够更全面地了解语言模型通过 CoT-decoding 的内在推理能力。
表 6 展示了模型的内在推理能力如何依赖于任务的难度级别。结果显示,任务越简单,找到正确推理路径的机会越大。此外,当任务解决方案涉及最多 1 或 2 步知识操作时,模型能够生成正确的 CoT 路径;而当步骤变为 3 个或更多时,模型生成正确 CoT 路径的能力开始下降。
CoT-decoding 可以与 CoT-prompting 结合使用,从而在多个语言模型上实现更大的推理增益。例如,表 7 展示了在 GSM8K 测试集上,将 CoT-decoding 添加到零样本 CoT-prompting 上可以进一步提高推理性能。特别是,使用 CoT-decoding (agg path) + zero-shot CoT-prompt 的方法,可以显著提升模型在推理任务上的准确率。
图 5 展示了在选择不同数量的备选 top-k 令牌时,模型的整体准确率如何变化。研究发现,较高的 k 值通常会导致模型性能的提升,这表明在许多情况下,正确的 CoT 路径可能存在但排名较低。对于指令调整模型,k 的影响较小,这表明指令调整过程有效地将大多数 CoT 路径提升到了前几个解码路径中。
实验结果表明,CoT-decoding 不仅能够有效地从语言模型中引出推理能力,而且能够在不同难度级别和不同类型的任务上提高模型的推理性能。此外,CoT-decoding 还能够揭示模型在推理方面的内在脆弱性,为未来的模型改进提供了方向。通过结合 CoT-decoding 和 CoT-prompting,可以实现进一步的推理性能提升。

