OpenAI o1 在数学、代码、长程规划等问题取得显著的进步。一部分业内人士分析其原因是由于构建足够庞大的逻辑数据集 <问题,明确的正确答案> ,再加上类似 AlphaGo 中 MCTS 和 RL 的方法直接搜索,只要提供足够的计算量用于搜索,总可以搜到最后的正确路径。然而,这样只是建立起问题和答案之间的更好的联系,如何泛化到更复杂的问题场景,技术远不止这么简单。
AlphaGo 是强化学习在围棋领域中的一大成功,成功击败了当时的世界冠军。早在去年,Deepmind 的 CEO Demis Hassabis 便强调用 Tree Search 来增强模型的推理能力。根据相关人士推测,o1 的模型训练数据截止到去年十月份,而有关 Q * 的爆料大约是去年 11 月,这似乎展示 o1 的训练中也用到了 TreeSearch 的技巧。
实际上,OpenAI o1 运用的技术关键还是在于强化学习的搜索与学习机制,基于LLM 已有的推理能力,迭代式的 Bootstrap 模型产生合理推理过程(Rationales) 的能力,并将 Rationales 融入到训练过程内,让模型学会进行推理,而后再运用足够强大的计算量实现 Post-Training 阶段的 Scaling。类似于 STaR [1] 的扩展版本。
注意这里合理推理过程并不只是对问题的拆解和分步作答,还有对于为什么如此作答的分析和思考。
技术要点有三:
后训练扩展律 Post-Training Scaling Laws 已经出现,并且 Post-Training Scaling Laws 为上述技术路径的成功提供了有力支持。
模型学习的是产生合理推理的过程,MCTS 在其中的作用是诱导合理推理过程的产生或构建相应的偏序对形成细粒度奖励信号,而非直接搜索过程和最终答案。
模型的 BootStrap 有助于构建新的高质量数据,并且新的 Rationales 数据促进了模型进一步提升能力。
一、OpenAI o1的发布是Post-Training Scaling Laws的强力体现
1.1 模型表现概览
1.2 后训练扩展律 Post-Training Scaling Law
随着模型尺寸逐渐增大,预训练阶段参数 Scaling Up 带来的边际收益开始递减,如果想要深度提升模型推理能力和长程问题能力,基于强化学习的 Post-Training 将会成为下一个突破点。早在 2018 年 Ilya 在 MIT 的客座讲座上,他便分享过自己对于通过 RL 和 Self-play 走向 AGI 的信心。
OpenAI 探索 Parameter Scaling Law 之外的 Scaling Laws 也并非空穴来风。
When generating a solution, autoregressive models have no mechanism to correct their own errors. Solutions that veer off-course quickly become unrecoverable. If we rely purely on generative methods and extrapolate from current trends, we will require an exorbitant parameter count to achieve even moderate performance on distributions as challenging as the MATH dataset.
This evidence strongly motivates the search for methods with more favorable scaling laws.
在 2021 年,他们便在 Training Verifiers to Solve Math Word Problems [6] 中提到,自回归模型在数学推理问题上很难进步的一点在于没有办法进行回答的自主修正,如果仅是依靠生成式方法和扩大参数规模,那么在数学推理任务上带来的收益不会太大。所以需要寻找额外的 Scaling Laws。
现在看来,RL 带来了 LLM 训练的范式转变,也带来了新的 Scaling Laws,即 Post-Training Scaling Laws。
在 Post-Training Scaling Laws 下,训练阶段的计算量不再只是和参数量的上升有关,同时也会包含 RL 探索时 LLM Inference 的计算量。与此同时,测试阶段模型推理和反思的计算量也会影响模型最终的表现。在 DeepMind 最近的文章 [5] 中,也讨论了这种范式的转变。
Post-train 虽然参数没变,但是在训练算力上仍然会倍数增长;推理上也会随着模型 “思考能力提高”,单次算力增长。是否有足够的算力做 Post-Training 似乎已经成为能不能提升推理性能的入场券。
二、OpenAI的成功,关键在于合理使用强化学习的探索
2.1 仅靠MCTS是远不足够的
仅靠 MCTS 无法让模型学会思考问题的关联,隐式自动化 CoT 的背后,是模型真正学会了合理的中间推理过程 Rationales。
当人们写作或说话时,常常会停下来思考。然而,大语言模型在通过 Next Token Prediction 生成回答时,更像是一种 “快思考” 过程。由于缺乏详细的中间推理步骤,模型一开始可能会犯错,而这些错误可能会传播,最终导致生成的答案也是错误的。
为了优化这一过程,产生了一系列方法,其中包括在 Token 级别或子句级别提供奖励信号,帮助模型调整生成的回答。这些方法如蒙特卡洛树搜索(MCTS),将输出建模为一系列节点,这些节点可以是 Token 级别或句子级别。例如:
Token 级别的节点:每个节点对应生成序列中的一个 Token。通过 MCTS,模型可以探索不同的 Token 序列,最终生成更连贯的响应。
句子级别的节点:在复杂推理任务中,每个节点可以代表一个完整的句子或推理步骤,帮助模型更好地处理多步推理任务。
另一种方式是通过思维链(Chain of Thought, CoT)优化模型输出。CoT 通过分步推理的方式,要求模型在生成最终答案之前,先生成一系列中间推理步骤。这种 “思考链” 的生成过程有助于增强模型的推理能力,尤其在数学和代码生成等任务中表现出色。
然而,CoT 虽然能够生成中间步骤,但并未教会模型如何从内部深入思考问题的关联。特别是对于尤其复杂且需要多步推理规划的任务,这样的合理的中间 CoT 推理过程(Rationales) 更为重要。
类似的思路在 STaR [1] 和 Quiet-STaR [7] 中有所体现。
3. 迭代:重复这一过程,且每次获得一个新的数据集,都从原始的模型开始进行 Fine-tune 从而防止过拟合。
STaR 的思路和 RL 中策略梯度算法是近似的,甚至整体的优化目标可以近似为一个策略梯度优化的目标。
模型首先采样潜在的推理路径(rationale)的过程类似于 RL 中通过策略选择动作(action),基于环境状态选择一个可能的策略路径。STaR 中,通过计算目标函数,模型对整个数据集的预测结果进行评估,并且只根据预测正确的样本更新模型。
STaR 在同一批数据上进行多次梯度更新,这类似于某些策略梯度算法中的策略,即通过多次调整同一批数据来稳定学习过程。在 RL 中,策略梯度算法通过这种方式在探索动作空间