Zhangzhe's Blog

The projection of my life.

0%

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

URL

TL;DR

  • 本文是 Google Research 团队发表的一篇论文,这篇论文是在已开源的 非推理 模型上,不做微调,而是通过 Chain-of-Thought Prompting 的方式来引导模型进行推理,取得了很好的效果。
  • 具体来说,就是在输入 prompt 中加入少量的 输入-思维链-输出 三元组示例,引导模型生成中间推理步骤,最终给出答案。
  • 在算术、常识和符号推理等任务上,Chain-of-Thought Prompting 的效果都非常好,比直接给出答案的效果好很多。
  • Chain-of-Thought Prompting 是在模型规模达到一定程度(>= 100B)后,才涌现出的能力,小模型没有这个能力。

论文详情

1. 核心方法:思维链提示(Chain-of-Thought Prompting)

  • 论文提出一种简单方法:在提示(prompt)中提供 输入-思维链-输出 的三元组示例,引导大型语言模型生成一系列中间推理步骤(称为 “思维链”),再得出最终答案。
  • 思维链类似于人类逐步推理的过程(例如,解决数学题时先分解步骤:“先计算A,再计算B,最后得出答案”)。

2. 关键优势

  • 提升复杂推理能力:在算术(如数学题 GSM8K)、常识(如 CSQA)和符号推理(如字母拼接游戏)任务上,思维链提示显著优于标准提示(standard prompting)。
  • GSM8K 数学题基准上,PaLM 540B 模型使用思维链提示后,准确率从 17.9% 提升至 56.9%,甚至超过微调的 GPT-3 模型。
  • 在常识推理任务(如 StrategyQA)上,准确率从 68.6% 提升至 77.8%
  • 模型规模涌现特性:思维链推理是大型模型(约 100B 参数以上)的 “涌现能力” —— 小模型无法生成逻辑思维链,但足够大的模型(如 GPT-3 175BPaLM 540B)能自然学习此模式。
  • 无需微调:仅需在提示中添加少量示例(如 8 个),即可激发模型能力,无需额外训练或数据标注。
  • 可解释性与泛化性:思维链提供透明推理路径,便于调试;且适用于多种任务(数学、常识、符号等),甚至能泛化到更长序列。

3. 实验验证

  • 任务覆盖:
    • 算术推理:在 GSM8KSVAMP 等数据集上,思维链提示将性能提升高达 39%PaLM 540B)。
    • 常识推理:在 StrategyQADate Understanding 等任务上,模型表现接近或超越人类水平。
    • 符号推理:在硬币翻转(coin flip)和字母拼接(last letter concatenation)任务中,模型能处理未见过的长序列。
  • 鲁棒性:不同注释者编写的思维链示例均有效,且对示例顺序、数量变化不敏感。

4. 局限性与启示

  • 模型规模依赖:思维链仅在大型模型(≥100B 参数)中有效,小模型生成逻辑混乱。
  • 潜在错误:生成的推理路径可能不准确(如算术计算错误或语义误解),需外部验证(如添加计算器)。
  • 应用意义:该方法拓展了提示技术的边界,证明大型模型能通过自然语言示例学习复杂推理,减少对标注数据的依赖。

论文核心贡献

  • 思维链提示是一种低成本、高效的方法,通过模拟人类逐步推理过程,释放大型语言模型在复杂任务上的潜力。论文强调,这是 “模型规模涌现” 的典型例子——推理能力随模型增大而自然出现,为未来 AI 推理研究提供了新方向。

Thoughts

  • 一定要注意,这篇论文讨论的对象 不是 Reasoning 模型(这个论文出来的时候还没有 Reasoning 模型的概念),而是普通的 LLM 模型。
  • 本质是一种通过 prompt 引导模型通过增加推理计算预算的方式,来提升模型的推理能力的方法。
  • 依托于 LLM 恐怖的指令遵循和上下文学习能力。