李宏毅 AI 课程:深度推理与搜索
整理思维链、自洽性、验证器、树搜索、过程奖励和 DeepSeek-R1 推理训练。
文章目录
04 深度推理:从思维链到搜索与强化学习
原始课件:
reasoning (v7).pptx(61 页)
1. 什么是推理模型
普通语言模型倾向于直接给出答案;推理模型会先生成较长的中间过程,再输出最终答案。中间过程可能包含:
- 分解问题和制定计划。
- 检查条件与执行计算。
- 尝试多个方向并回退。
- 验证候选答案。
- 根据错误重新推导。
这种方法本质上是在测试阶段增加计算量。模型参数不变,但通过更多 token、更多采样或更多搜索节点提高解题概率。
2. 从 AlphaGo 到语言模型的测试时搜索
AlphaGo 将策略网络、价值网络和蒙特卡洛树搜索结合起来,不只依赖一次前向预测,而是在行动前探索多个未来状态。语言模型推理也沿用相似思想:模型负责提出候选步骤,验证器或奖励模型负责估计质量,搜索算法分配计算预算。
Scaling Scaling Laws with Board Games 等研究说明,训练规模与搜索规模可以共同影响最终能力。关键问题从“模型会不会立即答对”转为“模型能否在有限搜索中找到并识别正确答案”。
3. 思维链提示
3.1 Chain-of-Thought
Chain-of-Thought Prompting 在提示中提供带中间步骤的示例,引导模型模仿分步推导。它对算术、符号推理和常识任务尤其有效,但收益依赖模型规模和示例质量。
3.2 Zero-shot CoT
Large Language Models are Zero-Shot Reasoners 使用“让我们一步一步思考”之类的提示,在不提供推理示例时诱导模型产生中间步骤。方法简单,但生成的步骤没有外部正确性保证。
3.3 监督式思维链
可以直接用带推理过程的数据监督训练模型。与只监督最终答案相比,它为每道题提供更密集的学习信号;但如果推理文本存在错误、模板化或伪解释,模型也会学习这些问题。arXiv:2410.14198 讨论了思维链监督及其行为影响。
4. 多次采样与自洽性
单条思维链容易在某一步走错,因此可以从同一问题采样多条推理路径。
4.1 Self-Consistency
Self-Consistency Improves Chain of Thought Reasoning 对多条思维链的最终答案进行多数投票。只要正确路径在采样分布中存在且相对集中,多次采样就可能提高准确率。
4.2 大规模采样
Large Language Monkeys 系统研究扩大采样数量的收益与上限。更多样本提高“至少出现一次正确答案”的概率,但还需要可靠的方法从候选中选出正确结果,否则 pass@k 提升不会自动转化为实际准确率。
4.3 置信度选择
arXiv:2402.10200 等工作使用模型概率、答案一致性或显式置信度选择候选。困难在于语言模型经常校准不良,对错误答案也可能非常自信。
5. 结果验证与过程验证
5.1 Best-of-N
Best-of-N 先生成 N 个候选,再由奖励模型或验证器选出一个。Training Verifiers to Solve Math Word Problems 展示了生成器与验证器分工的有效性。
5.2 结果奖励
结果奖励只检查最终答案。其优点是标注简单、客观任务可自动判分;缺点是无法指出中间哪一步出错,也可能让模型通过偶然路径获得正确答案。
5.3 过程奖励
Let’s Verify Step by Step 为推理过程中的每一步提供正确性标注。Math-Shepherd 使用自动化方式构造过程监督。过程验证可以更早剪枝,但标注成本更高,验证器本身也会犯错。
6. 搜索方法
6.1 束搜索
束搜索在每一步保留若干最高分的部分推理路径,并继续扩展。Tree of Thoughts 和 arXiv:2305.00633 等工作把语言模型推理组织成显式搜索。
优点是计算流程清楚;缺点是早期评分错误会淘汰后来可能成功的路径,而且高概率文本不等于正确推理。
6.2 蒙特卡洛树搜索
MCTS 在探索未知分支与利用高价值分支之间进行平衡。语言模型相关研究包括 arXiv:2406.03816、arXiv:2405.00451 和 arXiv:2408.06195。
应用时需要定义:状态如何表示、行动如何生成、节点如何评分、何时停止,以及如何处理验证器误差。
6.3 计算预算分配
Scaling LLM Test-Time Compute Optimally 研究如何根据问题难度,在“采样更多完整答案”和“对少量路径进行更深搜索”之间分配预算。最佳策略通常依赖基础模型、验证器和任务类型。
7. 从搜索轨迹学习推理
搜索不仅可以在推理时使用,也可以生成训练数据:
- 对问题探索多条路径。
- 用答案或验证器筛选成功轨迹。
- 将成功轨迹作为监督数据微调模型。
- 让新模型用较少搜索直接复现更好的推理行为。
rStar-Math 通过大规模搜索和自我演化提高数学推理能力。Stream of Search 则让模型学习搜索过程本身,包括尝试、评估和回退,而不只模仿一条干净的标准答案。
8. DeepSeek-R1 的训练路线
DeepSeek-R1 是课件讨论的核心案例。
8.1 R1-Zero
R1-Zero 从基础模型出发,主要使用可验证任务的强化学习。奖励重点关注最终答案正确性和输出格式,不需要人工逐步标注思维链。训练过程中模型自行形成更长的推理、自我检查和重新尝试行为。
所谓 “aha moment” 指模型在推理中主动意识到当前方向可能错误并重新分析。这说明复杂推理行为可以在结果奖励下涌现。
8.2 R1-Zero 的问题
- 推理过程可读性不稳定。
- 可能混用多种语言。
- 长度不断增加,但不保证每一步都有价值。
- 只依赖可验证任务,覆盖面有限。
8.3 R1
完整 R1 流程先使用少量高质量长推理数据进行冷启动,再执行强化学习;随后筛选推理与非推理数据进行监督微调,并加入有用性和安全性对齐。该流程说明纯强化学习能探索行为,但最终产品仍需要可读性、通用能力和安全训练。
8.4 基础模型的重要性
课件强调,强化学习通常更像是放大基础模型已有的探索和推理能力,而非凭空创造能力。arXiv:2503.20783 进一步研究强化学习能否真正产生基础模型中不存在的新推理策略。
9. 重要方法与研究索引
| 方法 | 核心机制 | 对应研究 |
|---|---|---|
| 思维链提示 | 用中间步骤引导复杂推理 | Chain-of-Thought |
| 零样本思维链 | 用简单指令触发分步思考 | Zero-Shot Reasoners |
| 自洽性 | 多次采样后对答案投票 | Self-Consistency |
| Best-of-N | 生成多个候选并由验证器选择 | Training Verifiers |
| 过程奖励模型 | 对每个推理步骤进行评分 | Let’s Verify Step by Step |
| 自动过程监督 | 自动构造步骤级正确性标签 | Math-Shepherd |
| 树搜索 | 显式探索、评分和回退 | Tree of Thoughts |
| 搜索轨迹蒸馏 | 将成功搜索过程转为训练数据 | rStar-Math |
| 结果奖励强化学习 | 用可验证答案训练自发推理 | DeepSeek-R1 |
10. 本章结论
- 深度推理的本质,是在测试阶段增加探索、验证和修正所需的计算。
- 多次采样只有配合可靠选择器,才能转化为实际性能。
- 结果监督便宜但稀疏,过程监督密集但成本高且可能带入标注偏差。
- 搜索可以直接提高推理表现,也可以产生用于训练的新轨迹。
- 强化学习能显著组织和放大推理行为,但基础模型能力仍是关键前提。