Chain-of-Thought Reasoning without Prompting
Jan. 07, 2025 - Jan. XX, 2025 · Qiyao Wang · Topic #Reasoning
大模型的推理最近很火,我个人对于推理的理解是基于线索或前面的推理逻辑不断向后有逻辑地延伸,这或许和自回归的形式很像,Denny Zhou 的这篇论文[1]通过修改贪婪解码(greedy decoding)为基于 CoT-Decoding 的有选择性的 top-k decoding,从无需提示(without prompting)的视角来探索或观察大模型内部的推理。本文将首先详细介绍这篇论文,之后进行代码实现,希望能在一周写完 😁。
论文精读与思考
The Introduction of Research Question
在本文之前,大部分的论文聚焦在利用 Prompting 的方式来激发 LLMs 的推理能力,如 ICL 中的 Few-Shot Learning 在测试问题前给定几个与测试问题类似的示例,这些示例中通常包含着对应问题解决方案的推理流程,概括的说即给定具有中间步骤的少样本提示(Few-Shot),或使用零样本(Zero-Shot)提示的方式指导模型给出相应的中间步骤,例如 (Nye et.al, 2021[2,3]) 在 LLMs 出现之前就尝试使用 XML 格式来指导模型在给出正确答案之前在 <scratch> computing process </scratch>
中给出计算过程,之后再给出答案,以及利用显式的思维链提示[4] Let's think step by step.
激发模型的推理能力,使得大模型在输出最终答案之前能够给出一定的推理过程。
可以看到的是,提示方法的关键是如何在大模型回答最终答案之前给出一定的推理中间过程(intermediate steps),这个中间过程是推理的关键。除提示方法外,也有利用 model training 和 instruction tuning 来提升模型生成中间步骤能力的方法,但是这样的方法与基于 prompt 的方法,都受限于 “instruction/prompt”,有时候需要不断地修缮你精心设计的 prompt 才有可能提升一些性能。本文提出了这样的问题,在无需精心设计提示的情况下,如何激发LLMs的推理能力?,以及 如何更好地理解模型自身的内部推理能力? 但大模型通常倾向于直接输出最终的问题结果,本文从解码过程出发,提出了CoT-decoding,能够不基于提示,激发模型的推理能力(生成中间的推理步骤)。
代码复现
Reference
[1] Wang X, Zhou D. Chain-of-Thought Reasoning Without Prompting [C]. The Thirty-Eighth Annual Conference on Neural Information Processing Systems (NeurIPS 2024).
[2] Nye M, Andreassen AJ, Gur-Ari G, et al. Show Your Work: Scratchpads for Intermediate Computation with Language Models [C]. ICLR, Deep Learning for Code Workshop, 2022.
[3] Blog: https://leehanchung.github.io/blogs/2024/10/21/reasoning-inference-scaling/
[4] Wei J, Wang X, Schuurmans D, et al. Chain-of-thought prompting elicits reasoning in large language models[J]. Advances in neural information processing systems, 2022, 35: 24824-24837.
Contact
There may be some errors present. If you find any, please feel free to contact me at wangqiyao@mail.dlut.edu.cn
. I would appreciate it!