目前,OpenAI o1 引发了人们对大型推理模型(LRM)研究的兴趣激增。
在此势头的基础上,Marco-o1 不仅关注具有标准答案的学科,例如非常适合强化学习 (RL) 的数学、物理和编码,而且更加重视开放式解决方案。
我们的目标是解决这个问题:“o1 模型能否有效地推广到缺乏明确标准且奖励难以量化的更广泛领域?” Marco-o1 由思想链 (CoT) 微调、蒙特卡罗树搜索 (MCTS)、反射机制和创新推理策略提供支持,针对复杂的现实世界问题解决任务进行了优化。
图1
:
我们的 Marco-o1 模型推理出一个经典的“草莓”问题:“‘草莓’中有多少个‘r’。”
1
简介
OpenAI 最近推出了突破性的 o1 模型
[OpenAI, 2024, Zhu 等人, 2024]
,以其卓越的推理能力而闻名。
该模型在AIME、CodeForces等平台上表现出了出色的性能,超越了其他领先模型。
受这一成功的启发,我们的目标是进一步拓展 LLM 的界限,增强他们应对复杂的现实挑战的推理能力。
Marco-o1 利用 CoT 微调
[Wei 等人, 2022]
、MCTS
[Wei 等人, 2022、Feng 等人, 2023、Silver 等人, 2017]< 等先进技术/t1>,以及推理行动策略来增强其推理能力。
如图
2
所示,通过结合过滤后的Open-O1 CoT数据集
对Qwen2-7B-Instruct
[Yang 等人, 2024]
进行微调[团队,2024]
,Marco-o1 CoT 数据集和 Marco-o1 指令数据集,Marco-o1 改进了其对复杂任务的处理。
MCTS 允许使用从 top-
k
替代标记的 softmax 应用对数概率得出的置信度来探索多个推理路径,从而引导模型获得最佳解决方案。
此外,我们的推理行动策略涉及在步骤和小步骤内改变行动的粒度,以优化搜索效率和准确性。
Marco-o1 在 MGSM(英文)数据集上的准确率提高了 +6.17%,在 MGSM(中文)数据集上的准确率提高了 +5.60%,展示了增强的推理能力
[Shi 等人,2022]
。
此外,在翻译任务中,我们证明了 Marco-o1 在翻译俚语表达方面表现出色。
例如,该模型将中文口语表达的字面意思“这只鞋提供了踩在便便上的感觉”正确翻译为英语“这只鞋有一个舒适的鞋底”,展示了其对口语细微差别的卓越把握。
我们的工作具有以下贡献:
•
使用 CoT 数据进行微调:
我们通过使用开源CoT数据集结合我们自主开发的合成数据对基础模型进行全参数微调来开发
Marco-o1-CoT
。
•
通过 MCTS 解决方案空间扩展:
我们将 LLM 与 MCTS (
Marco-o1-MCTS
) 集成,使用模型的输出置信度来指导搜索并扩展解决方案空间。
•
推理行动策略:
我们实现了新颖的推理动作策略和反思机制(
Marco-o1-MCTS mini-step
),包括在 MCTS 框架内探索不同的动作粒度并促使模型进行自我反思,从而显着增强模型解决复杂问题的能力。
•
在翻译任务中的应用:
我们是第一个将大型推理模型 (LRM) 应用于
机器翻译任务
,探索多语言和翻译领域的推理时间缩放规律。
2
Marco 推理数据集
为了增强 Marco-o1 模型的推理能力,我们采用了使用各种数据集的监督微调(SFT)策略。
•
Open-O1 CoT 数据集(已过滤)
[团队,2024]
:
我们通过应用启发式和质量过滤流程完善了 Open-O1 项目的 CoT 数据集。
这一增强使模型能够有效地采用结构化推理模式。
•
Marco-o1 CoT 数据集(合成):
我们使用 MCTS 生成了 Marco-o1 CoT 数据集,这有助于制定复杂的推理路径,进一步增强模型的推理能力。
•
Marco 指令数据集:
认识到强大的指令跟踪功能在执行复杂任务中的关键作用,我们合并了一组指令跟踪数据。
这种集成确保模型能够胜任各种任务,保持其总体有效性,同时显着提高其推理能力。
Dataset
Number of Samples
Open-O1 CoT Dataset (Filtered)
[Team, 2024]
45,125
Marco-o1 CoT Dataset (Synthetic)
10,000
Marco Instruction Dataset
5,141
Total
60,266
表1
:
Marco 推理数据集概述
1
3
通过 MCTS 扩展解决方案空间
图2
:
Marco-o1 概述。
我们将 LLM 与 MCTS 相结合,以增强 Marco-o1 模型的推理能力:
•
节点作为推理状态:
在MCTS框架中,每个节点代表问题解决过程的一个推理状态。
•
LLM 输出的行动:
节点可能采取的行动是 LLM 生成的输出。
这些输出代表推理链中的潜在步骤或小步骤。
•
推出和奖励计算:
在推出阶段, LLM 继续推理过程直至最终状态。
•
指导 MCTS:
该奖励分数
R
用于评估和选择MCTS内有希望的路径,有效地引导搜索走向更加自信和可靠的推理链。
此外,我们通过计算置信度得分来获得每个状态的值。
对于推出期间生成的每个 Token
t
i
,我们通过将 softmax 函数应用于其对数概率和前 5 个替代 Token 的对数概率来计算其置信度得分。
这是由下式给出的:
c
i
=
exp
(
p
(
t
i
)
)
∑
k
=
1
5
exp
(
p
(
t
k
)
)
其中
c
i
是推出中
i
t
h
标记的置信度得分。
p
(
t
i
)
是 LLM 生成的
i
t
h
Token 的对数概率。
k
=
1
到
5
的
p
(
t
k
)
是
i
t
h
步骤中前 5 个预测标记的对数概率。
n
是推出序列中的 Token 总数。
该方程确保置信度分数反映所选 Token 与最佳替代方案相比的相对概率,从而有效地将分数标准化在 0 和 1 之间。
获得推出序列中所有 Token 的置信度得分后,我们计算所有 Token 的平均置信度得分,以得出总体奖励得分:
其中
v
是推出路径的总体奖励分数。
该平均值用作奖励信号,用于评估推出期间所采取的推理路径的质量。
较高的
v
表示推理路径更加自信且可能准确。
通过采用这种方法,我们有效地扩展了解决方案空间,使模型能够探索大量的推理路径,并根据计算的置信度分数选择最可能的路径。
4
推理行动策略
4.1
动作选择
我们观察到,使用动作作为 MCTS 搜索的粒度相对粗糙,通常会导致模型忽略对于解决复杂问题至关重要的细致入微的推理路径。
为了解决这个问题,我们探索了 MCTS 搜索的不同粒度级别。
最初,我们使用步骤作为搜索单位。
为了进一步扩展模型的搜索空间并增强其解决问题的能力,我们尝试将这些步骤划分为 64 或 32 个标记的较小单元,称为“迷你步骤”。这种更细的粒度使模型能够更详细地探索推理路径。
虽然 Token 级别的搜索在理论上提供了最大的灵活性和粒度,但由于需要大量的计算资源以及在该级别设计有效的奖励模型所面临的挑战,目前它是不切实际的。
在我们的实验中,我们在 MCTS 框架内实施了以下策略:
•
步骤作为行动:
我们允许模型生成完整的推理步骤作为动作。
每个 MCTS 节点代表一个完整的思想或行动标签。
这种方法可以实现高效的探索,但可能会错过解决复杂问题所必需的更细粒度的推理路径。
•
小步骤作为行动:
我们使用 32 或 64 个标记的小步骤作为操作。
这种更细的粒度扩展了解决方案空间,并通过考虑搜索过程中更细致的步骤来提高模型导航复杂推理任务的能力。
通过探索此级别的解决方案空间,模型能够更好地找到可能被较大动作单元忽略的正确答案。
4.2
思考后的反思
我们通过添加短语引入了反射机制
“等待!
也许我犯了一些错误!
我需要从头开始重新思考。”
在每个思考过程结束时。
这促使模型自我反思并重新评估其推理步骤。
实施这种反思已经取得了显着的进步,特别是在原始模型最初未能正确解决的难题上。
通过反思,大约一半的挑战性问题得到了正确回答。
从自我批评的角度来看
[Valmeekam 等人, 2023]
,这种方法允许模型充当自己的批评者,识别其推理中的潜在错误。
通过明确提示模型质疑其最初的结论,我们鼓励它重新表达和完善其思维过程。
这种自我批评机制利用模型检测自身输出中的不一致或错误的能力,从而更准确、更可靠地解决问题
[Madaan 等人, 2024, Li 等人, 2024, Huang 等人, 2022]
。
反思步骤充当内部反馈循环,增强模型在无需外部干预的情况下自我纠正的能力。
5
实验
基于
Qwen2-7B-Instruct
,我们使用训练数据执行SFT来创建
Marco-o1-CoT
。
此外,我们在 MCTS 树搜索框架内采用了 Marco-o1-CoT,通过动作进行区分:
•
Marco-o1-MCTS(步骤)
:将每个推理步骤用作一个动作(步骤)。
•
Marco-o1-MCTS(64 个 Token 的迷你步骤)
:使用 64 个 Token 的迷你步骤作为操作(64 个 Token )。
•
Marco-o1-MCTS(32 个 Token 的迷你步骤)
:使用 32 个 Token 的迷你步骤作为操作(32 个 Token )。
在测试过程中,每个模型都使用 CoT 提示来确保推理过程的一致性。
然后,我们在 MGSM 数据集的英语 (En) 和中文 (Zh) 子集上测试了这些配置,获得了以下结果:
Model
MGSM-En (Acc.)
MGSM-Zh (Acc.)
Qwen2-7B-Instruct
84.23%
76.80%
Marco-o1-CoT
85.60%
71.20%
Marco-o1-MCTS (step)
90.40%
80.00%
Marco-o1-MCTS (mini-step of 64 tokens)
88.40%
80.40%
Marco-o1-MCTS (mini-step of 32 tokens)
87.60%
82.40%
表2
:
MGSM数据集上的实验结果
图3
:
Marco-o1的主要结果。
这些结果表明:
在 MGSM-en 数据集中,Marco-o1-CoT 显示出优于 Qwen2-7B-Instruct 的优势,如图
4
所示,这是由于使用英语 CoT 数据进行微调而预期的。
然而,在 MGSM-zh 数据集中,Marco-o1-CoT 与 Qwen2-7B-Instruct 相比表现出性能下降。
这种下降的原因是用于微调的 CoT 数据是英文的,这可能无法有效地转移到中文数据集。
三个 MCTS 增强模型展示了相对于 Marco-o1-CoT 的改进,表明合并 MCTS 有助于扩展模型的解决方案空间并增加获得正确答案的概率。