一句话总结
LLM 做 RL 时可以引入示例样本加快探索效率,但现有方案都需要数千到数万条高质量示范数据才能有效引导,FEST 巧妙地利用了 DPO 特性,仅新增 128 条示范样本就击败了其他使用全量数据的方法
- 论文标题:Boosting Reinforcement Learning with Verifiable Rewards via Randomly Selected Few-Shot Guidance
- 论文地址:arxiv.org/abs/2605.15…
- 作者背景:伊利诺伊大学厄巴纳-香槟分校
- 代码地址:github.com/KaiYan289/F…
一、动机
RLVR 是 DeepSeek-R1、OpenAI o1 背后的核心训练范式,它使用客观可验证的奖励,比如数学题答案对了就给正奖励,错了就是零
但 RLVR 有个老大难问题:在困难题目上样本效率极低。如果模型在一个 batch 里一个正确答案都采不出来,advantage 全是零,等于白训了一轮。DAPO 等方法的应对策略是反复采样直到出现正确答案,但计算开销平均翻三倍
一个自然的想法是:用一些专家示范(SFT 数据)来引导 RL,这就是「示范引导型强化学习」。但现有方法对数据量的要求很高:HPT 需要按需获取示范,ReLIFT 需要上万条,LUFFY 需要四万六千条,这些高质量示范推理链的标注成本极高
二、核心思路
FEST(FEw-ShoT demonstration-guided RLVR)的目标是:大幅降低示范引导型 RL 的数据需求,比如随手挑个 128 条示范样本,就显著提升 RLVR 的性能
这一目标很有挑战性:
- 无法按需获取数据:不像 HPT 那样 “模型做不出来的题都能找到示范”,这里只有固定的 128 条,题目覆盖完全随机
- 语义覆盖有限:128 条数据不可能覆盖所有推理范式,模型遇到未见过的题型时没有参考
- 过拟合风险极高:数据集太小,反复训练几百个 epoch 很容易过拟合到这 128 条的特定模式上
对应地,作者识尝试通过三个关键组件来应对这些挑战:
- 监督学习信号: 既然数据有限,则需要直接把它们当作正例学习,而不是像 HPT 那样等模型失败再去找示范
- 在线策略信号: 让模型在示例的题目上自己生成 rollout 作为负例,从 “正确做法 vs 自己的做法” 的对比中学到更通用的推理策略
- 衰减权重: 训练初期模型弱,多学 SFT 数据有益;后期模型变强,权重必须自适应衰减避免过拟合
模型正常的探索、优化主要还是靠原本的 RL 流程,这 128 条示例主要用于模型卡住时提供一个 “正确方向的微弱推力”
三、实现方案
3.1 整体训练框架
FEST 的训练目标由两部分组成:
- 在大规模仅答案数据集 D_I 上,用 GRPO 做标准 RLVR(提供探索信号)
- 在少样本 SFT 数据集 D_E(128 条)上用 semi-online DPO(提供引导信号)
Semi-online DPO 的做法是:把 SFT 示范作为正例,模型自己生成的 rollout 作为负例
为什么选 semi-online DPO 而不是直接混合 SFT + RL?关键在于它的梯度结构。对 DPO 的 loss 求梯度后,自然分解为三项:
这三项恰好对应前面提到的三个关键组件,也就是说 DPO 的数学结构天然满足了我们的需求,不用再做额外设计
3.2 学习强度分配
标准 DPO 对所有数据施加相同的学习强度 β,但不同题目的难度差异很大。FEST 根据模型当前的可解性分配不同的 β 系数:
- β₁(最大):8 次采样全部失败(最需要从 SFT 学习)
- β₂(中等):部分采样成功但当前 rollout 失败(RL 能解决但还不稳定)
- β₃(最小):当前 rollout 正确(已经会了,轻微正则化即可)
3.3 梯度量级对齐
FEST-DPO 有一个实际工程问题:D_I 上的 GRPO 是 token 级目标(逐 token 计算 advantage、裁剪),而 D_E 上的 DPO 是序列级目标(对整个回复的联合 log-probability 操作)。两者梯度量级差了一个数量级,混合系数极难调
回顾上一节的梯度分解:
DPO 梯度
= sigmoid权重 × (正例梯度 - 负例梯度)
= - sigmoid权重 × 负例梯度 + 正例梯度
其中正例梯度就是 ∇log π(y+|x),即 SFT 的梯度形式;负例梯度是 -∇log π(y-|x),即降低某个 rollout 概率的梯度 —— 这恰好等价于对该 rollout 施加负奖励的 REINFORCE 梯度(REINFORCE 梯度 = reward × ∇log π(y|x),其中 reward 与上述「- sigmoid权重」完全一致)
所以:
DPO 梯度 ≈ 加权 SFT + 负奖励 REINFORCE
基于这个等价关系,作者的操作是:既然 REINFORCE 和 GRPO 本质上是同一类策略梯度(只是 GRPO 多了 token 级裁剪和 group-relative baseline),那就不必非用 DPO 这个壳子。直接把 D_E 上的损失拆成两个独立项:
- 对 D_E 上模型的 rollout,用 GRPO施加负奖励(跟 D_I 上的 GRPO 完全同构,只是奖励为负)
- 对 D_E 上的 SFT 正例,用加权 SFT loss 直接监督
这样 D_I 和 D_E 上的所有梯度项都是 token 级的,量级天然对齐,不需要手动调混合系数:
FEST-GRPO = D_I 上标准 GRPO + D_E 上负奖励 GRPO + D_E 上加权 SFT
代价是失去了 DPO 中 sigmoid 权重项提供的自适应衰减(需要用 β 调度或其他方式补回),但换来了工程上的简洁和稳定性
四、实验结果
4.1 实验设置
- 基础模型:Qwen2.5-Math-1.5B
- 训练:600 步,2 张 NVIDIA GH200 (96GB)
- 数据:从 OpenR1-Math-46K 中随机抽 128 条作为 D_E,其余作为 D_I
- 评估:AIME25、AMC23、AIME24、MATH-500、OlympiadBench、Minerva 六个数学推理基准
4.2 主实验结果(128-shot )
各 benchmark 上的平均分数:
FEST 是唯一在 128-shot 设定下显著超越纯 RL 基线的方法。HPT、ReLIFT、LUFFY 在数据量降到 128 条时全部失效(甚至不如纯 RL)
值得注意的是,后缀 “-G” 的方法(HPT-G、ReLIFT-G)表示在 D_E 上同时做 SFT 和 RL,它们的性能反而暴跌,训练中期出现突然崩溃。这验证了衰减权重的必要性 —— RL 已经在这些数据上严重过拟合,此时再做 SFT 会导致分布突变
4.3 探索多样性
各 benchmark 上的 pass@8 分数,即给8次采样机会看能否通过验证。主要反映模型的上限探索能力
RL-G 虽然 Avg@8 不低(40.55),但 Pass@8 显著下降,这说明 RL-G 过拟合了少量数据,丧失了探索多样性 —— 它的 “天花板” 比 FEST 低得多。
4.4 示范数据量
FEST 在 64-shot 时就能工作,512-shot 时 FEST-DPO 几乎追平 HPT 在完整 46K 数据上的表现。FEST-GRPO 在极少样本时更稳健,FEST-DPO 随数据量增长扩展性更好
4.5 消融实验
去掉任何一个组件都会导致性能下降:
- 去掉衰减权重 → 模型崩溃,Avg@8 暴跌到 28.83
- 去掉在线策略信号 → 退化为 RL + 加权 SFT
- 去掉监督信号 → 退化为 RL-G
4.6 示例样本鲁棒性
作者用三个不同来源的 128 条数据分别训练,FEST 在所有设定下都能稳定获得增益,说明方法对数据选择不敏感 —— 真的是 “随机抽 128 条就够了”
4.7 OOD 泛化
在 MMLU-Pro(12000+ 题,与训练分布完全不同)上,FEST-DPO 达到 38.68 的 Pass@1,超越所有基线。这说明方法不是在过拟合少量数学题,而是真正提升了模型的通用推理能力
五、启发
-
数据效率的极限:128 条随机样本就能带来显著提升,这暗示 RLVR 的瓶颈不在于需要多少示范,而在于如何正确使用示范
-
DPO 的新用法:DPO 通常被认为不擅长翻转偏好,但 FEST 巧妙地利用了这个"缺点" —— 目标不是严格偏好 SFT 数据,而是用它做正则化和催化剂
-
梯度分解视角:将 DPO 分解为 “负奖励 RL + 加权 SFT” 的视角很有启发性,为统一理解各种后训练方法提供了新工具
六、局限性
- 实验主要在 1.5B 模型上进行,更大模型上的表现有待验证
- 目前只验证了数学推理任务,代码生成等场景需要进一步探索