论文: Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (Wei et al., 2022)
-
核心贡献: 首次提出通过显式的中间推理步骤(即思维链)提升大语言模型的复杂推理能力。该方法通过示例展示多步推理过程,引导模型生成逻辑连贯的答案,显著提高了数学应用题(如GSM8K数据集)、常识推理和符号操作任务的性能。
-
技术特点: 将传统提示中的答案(answer)替换为推理步骤(rationale)+ 答案,从而分解复杂问题为可解释的中间步骤
通过显式生成中间推理步骤(即“思维链”),将复杂问题分解为多步可解释的逻辑过程,引导语言模型逐步解决问题。
-
传统提示:输入-输出对(如问题直接映射到答案)。
-
思维链提示:输入-推理链-输出三元组(如问题→分步计算→答案)
-
自然语言推理:中间步骤以自然语言描述,而非符号逻辑或公式。
-
任务普适性:适用于算术、常识、符号推理等多种任务。we
-
零样本扩展:无需微调,仅需少量示例即可激发推理能力。
在算数推理中
思维链提示的效果随着模型规模的增加而增强
思维链提示在更复杂的问题上表现出更大的性能提升
思维链提示的鲁棒性
进行了消融研究,以探讨思维链提示中不同部分的作用
仅方程式提示的效果:即模型在给出答案之前仅被提示输出一个数学方程式。实验发现,仅方程式提示在GSM8K数据集上帮助不大,这表明GSM8K中的问题语义太复杂,无法直接翻译成方程式,而需要思维链中的自然语言推理步骤。
仅可变计算:“Variable compute only”(仅可变计算)是一种实验设计,旨在测试模型性能提升是否仅因中间生成的 token数量(计算量) 增加,而非自然语言推理步骤的逻辑性。
示例
-
问题:
Roger有5个网球,又买了2罐,每罐3个。他现在共有多少球? -
标准提示(Standard Prompting):
Q: Roger有5个网球,买了2罐,每罐3个。他现在有多少球? A: 答案是11。
-
Variable Compute Only 提示:
Q: Roger有5个网球,买了2罐,每罐3个。他现在有多少球? A: ...........(共11个点,对应“5 + 2×3 = 11”的字符数)
-
结果:
-
论文中显示,这种变体的性能与标准提示接近(如GSM8K任务中,LaMDA 137B的准确率从6.5%提升至6.4%),说明 单纯增加中间token数量无法有效提升推理能力。
-
答案后的思维链提示的效果: 即思维链提示仅在答案给出后才提供。实验发现,答案后的思维链提示与基线表现大致相同,这表明思维链中体现的顺序推理对于仅仅激活知识之外的原因是有用的。
思维链提示的鲁棒性
- 对标注者的鲁棒性: 实验发现,即使是由不同标注者编写的思维链,思维链提示仍然能够显著提高性能。这表明思维链提示的成功并不依赖于特定的语言风格或标注者的偏好。
- 对范例的鲁棒性: 实验发现,即使是从不同数据源随机抽取的范例,思维链提示仍然能够显著提高性能。这表明思维链提示的成功并不依赖于特定的范例集或数据源。
- 对语言模型的鲁棒性: 实验发现,思维链提示在不同的语言模型上都能够显著提高性能。这表明思维链提示的成功并不依赖于特定的语言模型架构或参数量。