Reinforce-Ada 把采样预算砸向难提示,收敛最多快一倍

Reinforce-Ada: An Adaptive Sampling Framework under Non-linear RL Objectives

Wei Xiong, Chenlu Ye, Baohao Liao, Hanze Dong, Xinxing Xu, Christof Monz, Jiang Bian, Nan Jiang, Tong Zhang

cs.LG, cs.AI, cs.CL, stat.ML

2025-10-07

小 group 全对或全错会让 GRPO 梯度归零。Reinforce-Ada 把推理预算分给难提示,同等更新成本下 Seq-Balance 在 1.5B 上加权均分 47.6%,对齐 GRPO-n16 的 47.3%,难提示信号被找回。

这篇在解决什么

用可验证奖励做大模型推理强化学习时,主流做法是 GRPO:每个提示采固定 n 条回答,用组内均值和标准差做优势。n 一小,难提示很容易抽成全错,易提示抽成全对,组方差变成 0,梯度直接消失。Qwen2.5-Math-1.5B 在 Open-R1 子集上 pass@1 只有 26.5%,pass@256 却到 81.3%;n=4 时 35.3% 的提示全对,n=256 只剩 10.2%。信号不是没有,是样本太少没抽到。

已有补救多半是被动的:DAPO 丢掉零方差组再补新提示,或者把 n 匀到 16、甚至 512。丢掉等于永远不学最难的题;匀大 n 则在简单题上浪费推理。这篇要的是:总预算差不多,把多出来的采样砸到还没有信号的提示上。

方法

标准目标把每个提示的通过率 p 线性相加,难度再高权重也是 1。换成非线性目标,比如 log p,梯度自动带上 1/p,难提示权重大。这个权重可以显式乘在梯度上,也可以隐式变成「难提示多采几条」。显式加权解决不了全零组:p 的蒙特卡洛估计已经是 0,再乘权重还是 0。所以核心是自适应采样。

Reinforce-Ada-Est 用价值网络或带衰减的贝叶斯滑动平均在线估 p,按 1/√p 分配采样预算,更新时再乘一层 1/√p 的残差权重,把 log 目标拆成两段,避免最难提示独占算力。

Reinforce-Ada-Seq 不估 p。它按轮采,每轮给仍活跃的提示再生成 M 条,直到满足退出条件或撞到上限。Seq-pos 收到足够多正确回答就停;Seq-balance 还要求收到足够多错误回答。一直采到固定数量的正例,期望样本量正好是 1/p,和 log 目标要的分配一致。工程上把变长样本池降采样成固定 n=4 的更新组,用整池均值当高保真基线,避免动态 batch 打乱计算图。

相对 DAPO,差别在于:DAPO 用固定 n,难提示统计上注定没信号然后被丢;Ada 在同一条提示内部加采,把稀有正例挖出来。

结果

四个骨干、数学基准(MATH500、Minerva、OlympiadBench、AIME 类 230 题),Ave@32。更新组大小统一 n=4,Seq 最多采到 32 再降采样。

模型方法加权均分
Qwen2.5-Math-1.5BGRPO-n4 / n8 / n1645.3 / 46.1 / 47.3
同上DAPO45.9
同上Seq-pos / Seq-balance / Est46.1 / 47.6 / 46.5
Qwen2.5-Math-7BGRPO / Seq-balance53.3 / 54.6
Llama-3.2-3B-InstructGRPO / Seq-balance27.9 / 29.1
Qwen3-4B-InstructGRPO / Seq-balance66.5 / 67.6

1.5B 上 Seq-balance 的 MATH500 是 77.4,高于 GRPO-n16 的 76.9。训练奖励曲线上 Ada 更快、渐近更高。Seq-pos 后期正例变多会提前退出,近似退回均匀采样;Seq-balance 会反过来追难负例,代价曲线呈 U 形,所以后期仍能维持组方差。

墙钟不是免费的。1.5B、8×H100 上 GRPO 每步 102 秒,Seq-pos 228 秒(2.2 倍),Seq-balance 290 秒(2.8 倍),Est 128 秒(1.3 倍)。7B 上相对开销更小(Seq-balance 1.59 倍),因为模型很快就能采到正例,而且 7B 的时间主要花在反向更新。摘要里「收敛最多 2 倍」指的是奖励随步数的速度,不是墙钟。反向成本与 GRPO-n4 相同,多出来的只是推理。

奖励–熵前沿上,加大 GRPO 的 n 并不能把曲线外推;Ada 在同等熵下奖励更高,小 k 的 pass@k 也更好。

为什么重要

RLVR 里「难提示没梯度」经常被当成模型不会,这篇把它写成抽样不足。实现是 verl 里换生成 API 的即插即用,不改网络。对已经在跑 GRPO 的团队,Seq-balance 用接近 n=8 到 10 的推理量,换到接近 n=16 的信号质量,更新仍按 n=4。

它是提示内部的微分配,不是课程学习那种换题。作者也说,和 DAPO 的累加补题可以叠用。

增益是渐进的:1.5B 加权均分从 45.3 到 47.6,7B 从 53.3 到 54.6。值得用,但不是换算法就能跳一个量级。

局限与存疑

实验只在数学、可验证奖励上做,作者自己写了资源不够,真实后训练还要覆盖整条数据管线。Seq 目前同步等待最慢的那条,异步会快很多,论文没做。Est 和 Seq 的推理、训练成本并不对齐,跨变体排名不能读成严格消融。

训练前按 16 次采样丢掉了全错和过易题,评估的是「中等难度子集上的自适应」,不是从零面对不可能题。600 步、固定超参、没为 Ada 单独调参,稳健,也可能低估调过的上限。log 目标在 p→0 时权重无界,全靠 Nmin/Nmax 和 1/√p 混合卡住,理论到实现中间仍有一道工程缝。

术语

原文与代码

社区讨论

相关论文

全部论文解读