MIT开源7B推理模型Satori:用行动思维链进行强化学习,增强自回归搜索

部署运行你感兴趣的模型镜像

自OpenAI的o1发布以来,研究社区为提升开源LLM的高级推理能力做出了诸多努力,包括使用强大的教师模型进行蒸馏、蒙特卡洛树搜索(MCTS)以及基于奖励模型的引导搜索等方法。

图片

本研究旨在探索一个新的研究方向:使LLM具备自回归搜索能力,即单个LLM能够进行扩展推理过程,并进行自我反思和自我探索新的策略。

为此,我们开发了一种受经典强化学习(RL)社区启发的LLM后训练范式。我们的方法成果是Satori,这是一个基于开源模型(Qwen-2.5-Math-7B)和开源数据(OpenMathInstruct-2和NuminaMath)训练的7B LLM。Satori的关键特性包括:

  • • 能够在没有外部指导的情况下进行自我反思和自我探索。

  • • 主要通过自我提升(强化学习)实现最先进的推理性能。

  • • 在数学以外的未见领域展现出推理能力的可迁移性。

方法

我们将 LLM 推理公式化为一个顺序决策问题,其中推理是一个逐步构建和完善答案的过程。具体而言,LLM(作为智能体的策略)从输入上下文(初始状态)开始,生成一个推理步骤(动作),并更新上下文(下一个状态)。LLM重复这一过程,直到得出最终答案,并获得一个奖励,用于评估最终答案是否与真实答案相符。通过这种表述,我们可以使用强化学习训练LLM进行推理,目标是生成一系列推理步骤,以最大化预期奖励。

行动思维链推理(COAT)

实现自回归搜索的关键挑战是让 LLM 能够在没有外部干预的情况下确定何时反思、继续或探索替代解决方案。为了实现这一点,我们引入了几个特殊的元动作标记来指导 LLM 的推理过程,

  • • 继续推理(<|continue|>):鼓励 LLM 通过生成下一个中间步骤来构建其当前的推理轨迹。

  • • 反思(<|reflect|>):促使模型暂停并验证先前推理步骤的正确性。

  • • 探索替代解决方案(<|explore|>):指示模型识别其推理中的关键缺陷并探索新的解决方案。

我们将此公式称为“行动-思维链” (COAT) 推理。每个 COAT 推理步骤都是一个标记序列,从其中一个元行动标记开始。

训练架构概览

标准的 LLM 无法进行 COAT 推理,实现这一点将面临两个关键挑战:

  • • 对元动作标记的无知:未经训练,LLM无法识别遇到特殊元动作标记可能需要反思或提出替代解决方案。

  • • 长期决策和稀疏奖励:推理需要长期决策,奖励仅在最后出现,LLM必须在获得奖励之前采取许多正确的推理步骤,失败则迫使其从初始状态重新开始。由于奖励稀缺,但奖励对于推动强化学习进展至关重要,这使得学习变得困难。

为解决这两个挑战,我们提出了一个两阶段训练框架:

  • • 小规模格式微调阶段,帮助基础LLM内化COAT推理格式。

  • • 大规模的强化学习阶段,利用强化学习与“重启和探索”(RAE)技术。

图片*注: 我们同时开展的工作DeepSeek-R1采用了类似的训练框架,即先进行小规模冷启动 SFT,然后进行大规模 RL 训练。尽管两项工作在这一高级理念上是一致的,但我们的工作在关键方法上与 R1 有所不同,包括数据合成框架和 RL 算法。

通过模仿学习进行格式调整

此阶段旨在微调预先训练的基础 LLM,以模仿一些具有 COAT 推理格式的已证明的推理轨迹。为了合成这种结合反复试验的 COAT 轨迹,我们提出了一个利用三个 LLM 的多智能体数据合成框架:

  • • Generator:给定一个输入问题,生成器使用经典的 CoT 技术为给定的输入问题生成多条推理路径。

  • • Critic:评论家评估生成器生成的推理路径的正确性,提供反馈以改进推理并解决次优步骤。

  • • Reward Model:奖励模型对细化的推理路径进行评分,并选择最有效的路径作为最终的演示轨迹。

这三个模型协作构建了高质量的演示轨迹。我们观察到,少量(10K)的演示轨迹足以使基础 LLM 遵循 COAT 推理格式。

通过强化学习实现自我提升

通过格式调整,LLM 采用了 COAT 推理风格,但难以推广到未见过的问题。强化学习阶段旨在激励利用自我反思来改善推理的实际能力。我们从格式调整后的 LLM 开始,并使用经典 PPO 算法和另外两个关键策略进一步优化它,

  • • 重启和探索 (RAE):受Go-Explore的启发,我们训练 LLM 策略,使其不仅从问题陈述进行推理,而且还从过去轨迹中采样的中间步骤进行推理,无论正确与否。我们还添加了探索奖励以鼓励更深入的思考,从而进一步增加策略得出正确答案的机会。

  • • 迭代式自我改进:策略可能会收敛到局部次优,无法进一步改进。受Kickstarting的启发,在每一轮强化学习训练之后,我们通过监督微调将当前教师策略的知识提炼到学生模型(基础 LLM)中。然后,从新微调的 LLM 开始,我们再进行一轮强化学习训练。

基准性能

Satori 在领域内推理基准(数学推理)和领域外基准(一般推理任务)上进行了评估。所有结果均以贪婪采样的零次传递@1 准确率报告。

评估任务

  • • 数学推理基准:GSM8K、MATH500、AMC2023、AIME2024 和OlympiadBench。除 GSM8K 外,其他所有数据集都具有竞赛级问题。

  • • 通用领域推理基准:
    逻辑推理:FOLIO、BoardgameQA(BGQA)。
    代码推理:CRUXEval。
    常识推理:StrategyQA(STGQA)。
    表格推理:TableBench。
    领域特定推理:MMLUPro STEM 子集(STEM),包括物理、化学、计算机科学、工程、生物和经济学。

数学推理基准

Satori-Qwen-7B 取得了 SOTA 性能,并超越了使用相同基础模型(Qwen-2.5-Math-7B)的 Qwen-2.5-Math-7B-Instruct。经过第二轮训练后,Satori-Qwen-7B(第二轮)在困难任务上表现出更强的性能。

图片

通用领域推理基准

Satori-Qwen-7B仅接受数学数据集训练,在各种领域外推理基准上表现出很强的可迁移性,并且远远优于 Qwen-2.5-Math-7B-Instruct。此外,尽管未接受其他领域的训练,Satori-Qwen-7B 的性能也与其他小规模通用指令模型相当甚至超过。

图片

更多测试结果可以查看原文:

https://satori-reasoning.github.io/blog/satori/

2月15日上午11点,青稞Talk 第38期,Satori第一作者、MIT博士生沈茂昊,将直播分享《Satori:通过训练LLM做自回归搜索来增强推理能力》。

分享嘉宾

沈茂昊,MIT EECS系四年级博士生,长期和MIT-IBM Watson AI lab 合作,本科毕业于UIUC ECE系。研究兴趣包括提升AI系统的可靠性,不确定性估计,以及涉及LLM的多个方向,包括提升LLM的推理能力等,曾在ICML、NeurIPS、AAAI等AI学术会议发表多篇论文。

主题提纲

Satori:通过训练LLM做自回归搜索来增强推理能力

1、O1 类推理模型的技术路线
2、Satori 推理模型及两阶段训练解析
- 行动思维链 COAT 推理范式
- 小规模格式微调
- 大规模的强化学习阶段
3、Satori 的推理能力及泛化讨论

成果连接

Paper:https://arxiv.org/pdf/2502.02508
Project:https://satori-reasoning.github.io

直播时间

2月15日(周六)11:00 – 12:00

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

该数据集通过合成方式模拟了多种发动机在运行过程中的传感器监测数据,旨在构建一个用于机械系统故障检测的基准资源,特别适用于汽车领域的诊断分析。数据按固定时间间隔采集,涵盖了发动机性能指标、异常状态以及工作模式等多维度信息。 时间戳:数据类型为日期时间,记录了每个数据点的采集时刻。序列起始于2024年12月24日10:00,并以5分钟为间隔持续生成,体现了对发动机运行状态的连续监测。 温度(摄氏度):以浮点数形式记录发动机的温度读数。其数值范围通常处于60至120摄氏度之间,反映了发动机在常规工况下的典型温度区间。 转速(转/分钟):以浮点数表示发动机曲轴的旋转速度。该参数在1000至4000转/分钟的范围内随机生成,符合多数发动机在正常运转时的转速特征。 燃油效率(公里/升):浮点型变量,用于衡量发动机的燃料利用效能,即每升燃料所能支持的行驶里程。其取值范围设定在15至30公里/升之间。 振动_X、振动_Y、振动_Z:这三个浮点数列分别记录了发动机在三维空间坐标系中各轴向的振动强度。测量值标准化至0到1的标度,较高的数值通常暗示存在异常振动,可能与潜在的机械故障相关。 扭矩(牛·米):以浮点数表征发动机输出的旋转力矩,数值区间为50至200牛·米,体现了发动机的负载能力。 功率输出(千瓦):浮点型变量,描述发动机单位时间内做功的速率,取值范围为20至100千瓦。 故障状态:整型分类变量,用于标识发动机的异常程度,共分为四个等级:0代表正常状态,1表示轻微故障,2对应中等故障,3指示严重故障。该列作为分类任务的目标变量,支持基于传感器数据预测故障等级。 运行模式:字符串类型变量,描述发动机当前的工作状态,主要包括:怠速(发动机运转但无负载)、巡航(发动机在常规负载下平稳运行)、重载(发动机承受高负荷或高压工况)。 数据集整体包含1000条记录,每条记录对应特定时刻的发动机性能快照。其中故障状态涵盖从正常到严重故障的四级分类,有助于训练模型实现故障预测与诊断。所有数据均为合成生成,旨在模拟真实的发动机性能变化与典型故障场景,所包含的温度、转速、燃油效率、振动、扭矩及功率输出等关键传感指标,均为影响发动机故障判定的重要因素。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值