POPO团队 投稿
量子位 | 公众号 QbitAI
大模型做强化学习后训练,最贵的是什么?
很多时候,不只是反向传播,而是一次又一次让模型生成长链推理答案,也就是rollout。
尤其在RLVR(Reinforcement Learning with Verifiable Rewards,可验证奖励强化学习)里,模型需要对每个prompt生成多条回答,再根据答案是否正确获得奖励。
看起来很自然:答案对了给1,错了给0,然后让模型从奖励里学习。
但真实训练中有一个很容易被忽略的问题:
并不是每一组rollout都真的有训练信号。
如果一个prompt下的多条回答全部正确,奖励全是1;如果全部错误,奖励全是0。对于GRPO这类组内归一化算法来说,这两种情况都会导致reward方差为0,优势项几乎消失。
换句话说,模型花了大量算力生成答案,但这些样本对参数更新几乎没有贡献。
针对这一问题,来自清华大学自动化系的研究者提出了POPO(Group Prioritized Off-Policy Optimization),一个面向LLM reasoning RLVR训练的高效off-policy优化框架。
一句话概括:POPO不再为无效样本额外做更多rollout,而是把当前batch里的无效组替换成最近缓存过的高质量有效组,并通过解耦式off-policy重要性采样稳定更新,从而用更少rollout获得接近DAPO的训练效果。
实验显示,在数学推理、数值规划、视觉几何三类任务上,POPO都能显著提升RL微调效率。在DeepScaleR数学任务上,POPO只使用约30%的rollout预算,就能达到与高资源DAPO接近的性能;在DSR-7B上,POPO的数学分布内平均分达到63.3,略高于DAPO的63.2,但训练时间从DAPO的55h降到34h。

RLVR有奖励,但很多样本其实“学不到东西”
RLVR的核心优势,是奖励可以被自动验证。
比如数学题、代码题、逻辑题,只要最终答案可以判断对错,就能把正确回答记为1,错误回答记为0。
这让模型不必依赖人类偏好打分,也降低了reward hacking的风险。
但问题也出在这里。
在GRPO等方法中,模型通常会对同一个prompt生成一组回答,然后在组内计算相对优势。
如果这组回答中有的对、有的错,奖励有差异,模型就能知道哪些轨迹更值得强化。
但如果一组回答全部正确,或者全部错误,奖励没有方差,组内相对优势就会退化。
论文把这种情况定义为ineffective sample(无效样本):
当同一个prompt的response group中所有回答奖励方差为0时,这个样本对RLVR优化几乎没有有效训练信号。
这类无效样本在RLVR中非常常见。
太简单的题,模型可能全部答对;太难的题,模型可能全部答错。两者都会消耗rollout,却无法提供有效梯度。
现有方法能过滤无效样本,但代价很高
为了解决这个问题,已有方法通常有三条路线。
第一类是active sampling(主动采样)。
代表方法是DAPO:它会扩大候选prompt batch,做更多rollout,然后过滤掉奖励全对或全错的prompt,只保留有效组。
这个思路很直接,也很有效。
但代价是:为了筛出有效样本,必须额外生成大量回答。
对于长CoT推理任务来说,rollout本身就很贵,额外rollout甚至可能超过RL微调本身的训练成本。
第二类是predictive sampling(预测式采样)。
这类方法尝试在rollout前预测prompt的成功率,优先选择“中等难度”的prompt。
但模型能力会在训练中不断变化,prompt成功率也会快速漂移;而在大规模数据集或低epoch训练中,每个prompt的历史信息又很稀疏,预测往往不够稳定。
更重要的是,只采中等难度样本,也可能系统性地避开真正困难、但有助于提升能力上限的问题。
第三类是trajectory replay(轨迹回放)。
这类方法会保存历史成功回答,在当前组全部失败时,把以前成功过的轨迹插进来。
但它仍然没有根本解决prompt层面的无效问题。
如果当前组全部正确,它还是无效;如果一个极难prompt从来没有成功轨迹,也无法回放。
同时,把不同策略生成的轨迹混在同一个response group里,还会带来行为策略不一致、优势估计失效、off-policy bias难以处理等问题。
核心方法:不多做rollout,而是补齐有效batch
POPO的核心思路很简单:
当前batch里哪些组是有效的,就保留;哪些组是无效的,就用最近缓存过的有效组补上。
也就是说,POPO不像DAPO那样不断额外采样新prompt、额外生成更多回答,而是维护一个小型replay buffer,里面存放最近训练过程中遇到的有效response group。
每一步训练时,模型先正常对当前batch做rollout。
然后根据奖励方差,把response group分成两类:
有效组:组内回答有对有错,奖励方差大于0; 无效组:组内回答全对或全错,奖励方差等于0。
POPO会保留当前batch里的有效组。
对于被过滤掉的无效组位置,POPO不重新rollout,而是从replay buffer中取出最近的有效组进行补齐。
这样构成的训练batch,就能尽可能由有效样本组成,同时不增加新的rollout成本。

△POPO框架示意图:当前batch中的无效组被过滤掉,再由最近缓存的高质量off-policy有效组补齐;对于回放组,POPO使用解耦式重要性采样进行稳定优化
为什么是“组级回放”,而不是“轨迹级回放”?
POPO的第一个关键设计,是prioritized group replay(优先级组回放)。
很多轨迹回放方法会在response级别操作:比如从历史里拿出某条成功回答,插入当前prompt的response group。
但这样会破坏组内一致性。
因为同一个组里的不同回答,可能来自不同时间点的策略模型。对于需要组内归一化优势估计的GRPO来说,这会让advantage不再对应一个清晰的行为策略分布。
POPO则选择在group级别回放。
一个group包含一个prompt和它对应的一组responses,并且这一整组responses都来自同一个历史策略。
这样做有两个好处。
第一,回放对象本身是一个完整有效组,组内reward方差非零,可以直接提供学习信号。
第二,整组数据来自同一个行为策略,后续可以更清晰地做off-policy校正。
POPO对回放组主要考虑两个标准。
第一是quality(质量):只把奖励方差非零的有效组放进buffer。
第二是off-policiness(离当前策略有多远):优先回放最近存入buffer的有效组。
论文指出,在proximal policy update约束下,越新的历史策略通常越接近当前策略。因此,用FIFO buffer中最近的有效组,可以作为一种低成本的off-policy距离近似,避免显式计算大量KL divergence。
关键二:off-policy也要稳定更新
只做回放还不够。
因为回放组不是当前策略刚刚生成的,它们是历史策略生成的off-policy数据。
如果简单把这些数据当成on-policy数据来训练,就会引入偏差。
如果完全把优化约束对齐到生成它们的历史行为策略,又可能让当前策略更新被过度限制。
因此,POPO引入了decoupled off-policy optimization(解耦式off-policy优化)。
直观理解,它把两个角色拆开:
行为策略:负责说明这条回放数据当初是由哪个历史策略生成的; 近端约束策略:负责约束当前更新不要偏离最近的旧策略太远。
对于回放样本,POPO使用重要性采样来校正off-policy bias;同时仍然保持和on-policy样本一致的trust-region约束。
这样做的目标是:
既修正历史数据带来的分布偏差,又不牺牲当前策略更新的稳定性。
这也是POPO与普通trajectory replay的关键差异之一。
实验设置:数学、数值规划、视觉几何三类任务
论文在三类reasoning任务上评估POPO。
第一类是数学推理。
团队使用DeepSeek-R1-Distill-Qwen-1.5B和7B,在DeepScaleR数据集上训练。DeepScaleR包含约40k道竞赛级数学问题。
评测基准包括AIME25、AMC23、MATH500、Minerva Math、OlympiadBench等分布内数学任务,也包括MMLU-Pro、ARC-c、GPQA-diamond等分布外通用推理任务。
第二类是数值规划。
团队使用Qwen2.5-3B,在Countdown-34的20k子集上训练,并在held-out split和更难的Countdown-4上评估。
第三类是视觉几何。
团队使用Qwen2.5-VL-3B-Instruct,在Geometry3k上训练和测试。这个任务要求模型同时理解几何图像,并完成符号推理。

△Geometry3k视觉几何任务示例,需要模型同时处理图像信息与符号推理
对比方法包括:
GRPO:基础RLVR算法; DAPO:通过额外rollout过滤无效prompt的高资源方法; MoPPS:预测有效prompt的采样方法; ARPO:使用历史成功轨迹的replay方法; ReMix、REPO、RR、GRESO:在DSR-1.5B上额外比较的off-policy或采样基线。
论文强调,POPO的主要目标不是用更多资源超过DAPO,而是在显著降低rollout成本的情况下,尽可能达到DAPO的效果。
训练曲线:POPO提升快,效果接近DAPO
从训练曲线看,POPO在多个任务和模型规模上都比GRPO、ARPO、MoPPS收敛更快,最终准确率也更高。
更关键的是,它整体接近DAPO,但不需要DAPO那样额外扩大候选batch做大量rollout。
论文指出,POPO通常只需要40%–70%的训练步数,就能达到GRPO的最终性能。

△不同方法在Countdown、Geometry、DeepScaleR等任务上的训练曲线:POPO通常比GRPO、ARPO、MoPPS提升更快,并接近高资源DAPO
为什么会这样?
有效样本比例给出了答案。
在普通GRPO中,训练batch里的有效样本比例通常低于50%。
这意味着模型每一步生成的很多response group,实际并没有提供足够的学习信号。
而POPO和DAPO都能构造出主要由有效组组成的训练batch。
区别在于:DAPO靠额外rollout筛选,POPO靠最近有效组回放补齐。

△训练batch中有效样本比例对比:GRPO的有效组比例通常低于50%,POPO与DAPO则能让训练batch保持高有效性
主结果:性能接近DAPO,但rollout和时间少很多
在数学推理上,POPO的结果非常接近甚至略高于DAPO。
在DSR-1.5B上,POPO的分布内平均分为55.1,与DAPO的55.1持平;分布外平均分为32.9,高于DAPO的32.7。但训练时间方面,POPO为16h,DAPO为30h。
在DSR-7B上,POPO的分布内平均分为63.3,高于DAPO的63.2;分布外平均分为51.2,高于DAPO的50.8。训练时间方面,POPO为34h,DAPO为55h。
在Countdown上,POPO的平均准确率为60.4,接近DAPO的61.5,但rollout数为205k,明显少于DAPO的877k;训练时间也从DAPO的5.6h降到3.2h。
在Geometry上,POPO达到50.0,接近DAPO的50.6;但rollout数为492k,低于DAPO的1438k,训练时间也从11.2h降到6.8h。

△数学、Countdown与Geometry评测结果:POPO与DAPO性能接近,但在多个任务上显著减少rollout数和训练时间
换句话说,POPO并不是通过“更贵的训练”换来更高效果。
它真正做的是:减少无效rollout对训练batch的污染,把已经产生过的有效训练信号重新利用起来。
从rollout维度看,论文进一步显示,POPO能用约30%的DAPOrollout预算,达到接近DAPO的训练表现。

△以rollout数量为横轴的训练曲线:POPO在更少rollout预算下取得与DAPO接近的表现
消融实验:最近有效组+解耦off-policy都很关键
为了验证POPO的设计是否必要,论文做了多组消融实验。
首先是replay机制。
POPO-KL使用KL divergence来选择replay group。结果显示,它和POPO表现接近,但计算效率明显更低:POPO用时3.2h,POPO-KL用时4.8h。
这说明,基于recency的最近回放策略,是一种足够有效、同时更便宜的off-policy距离近似。
GRPO-filter则只过滤无效组,不用replay补齐batch。它虽然略好于GRPO,但不如POPO。这说明,仅仅删掉无效样本还不够,训练batch变小会带来更大噪声;用有效组补齐batch才是关键。
其次是replay组的质量和新鲜度。
如果POPO-ineff不区分有效组和无效组,只回放最近group,性能明显下降。
如果POPO-stale(10)从更久远的历史有效组中随机回放,性能甚至会崩溃。这说明off-policy gap不能忽视,回放样本必须足够接近当前策略。
最后是off-policy优化目标。
如果把回放数据简单当成当前on-policy数据,POPO-π_old会出现性能崩溃;如果把约束对齐到历史行为策略,POPO-πβ的性能提升会变慢。
完整POPO的解耦式off-policy目标表现最好。

△消融实验:POPO的最近有效组回放、质量标准、off-policy新鲜度控制和解耦式优化目标都对性能有明显贡献
进一步分析:不同组大小、不同RLVR算法都适用
论文还进一步分析了POPO在不同设置下的稳定性。
在batch replenishment ratio实验中,随着有效数据占比提高,POPO和DAPO的表现都会提升。但DAPO需要额外rollout来补齐有效batch,POPO则能在rollout成本不变的情况下利用replay补齐。
在response group size实验中,论文测试了k=4、8、16、32。结果显示,POPO在不同group size下都稳定优于GRPO,并接近DAPO。
此外,POPO不只适用于GRPO。
论文还将POPO结合到RLOO和PPO上,结果显示加入POPO后,两种基础RLVR算法的训练效率和最终准确率都有提升。
更进一步,POPO还可以和MoPPS这类主动prompt采样方法结合。POPO+MoPPS能提高在线有效组比例,并进一步加速策略提升。

△更多分析:POPO在不同补齐比例、不同response group size、不同基础RLVR算法,以及与预测采样方法结合时都保持稳定收益
让RLVR从“多生成”走向“少浪费”
这项工作的核心价值,不只是提出了一个新的replay公式,而是指出了RLVR训练中的一个现实瓶颈:
很多rollout并不是因为答案错了才没价值,而是因为一整组答案没有差异,导致算法学不到相对偏好。
DAPO的思路是多生成、多筛选,用额外rollout换有效batch。
POPO的思路则是少浪费:既然训练过程中已经见过有效组,就把最近的高质量有效组缓存起来,用来替换当前batch中没有训练信号的无效组。
为了让这种replay不破坏训练稳定性,POPO又进一步在group级别保留行为策略一致性,并通过解耦式重要性采样修正off-policy bias。
从结果看,POPO在数学推理、数值规划和视觉几何任务上,都能以显著更少的rollout成本获得接近DAPO的表现。
这对于大模型RL后训练很有现实意义。
因为随着模型推理链变长、任务更复杂,rollout成本会越来越高。未来的RLVR训练,可能不能只靠“多采样、多过滤”解决问题,而需要像POPO这样,把训练过程中已经产生的有效信号尽可能吃干榨净。
当然,论文也指出,POPO当前的replay机制并不一定总能选到最有信息量的样本。未来可以探索短期FIFO buffer与长期reservoir相结合的混合策略,并进一步减少在线rollout数量、增加可控off-policy数据利用。
但至少从这篇工作看,RLVR后训练的效率优化,已经从“怎么获得更多奖励信号”,进一步走向了一个更细的问题:
如何不让已经付出代价生成出来的有效信号,被白白浪费掉。
论文信息
论文标题:RLVR without Ineffective Samples: Group Prioritized Off-Policy Optimization for LLM Reasoning
论文作者:Yixiu Mao、Yun Qu、Cheems Wang、Heming Zou、Xiangyang Ji
主要作者:毛逸休,清华大学自动化博士,师从季向阳教授。聚焦强化学习与大模型后训练研究,围绕复杂环境下智能体与推理模型的高样本效率学习开展系统性探索。在ICML、NeurIPS、ICLR、Nature Communications等国际顶级会议与期刊发表一作/共一论文十余篇,多项成果入选Spotlight、Oral,现于阿里巴巴通义千问大模型团队实习。
机构:清华大学自动化系季向阳教授团队
论文地址:https://arxiv.org/pdf/2606.01281v1
一键三连「点赞」「转发」「小心心」
欢迎在评论区留下你的想法!
— 完 —
【学术投稿】请在工作日发送邮件至:ai@qbitai.com,标题注明【投稿】,并告诉我们:你是谁,从哪来,投稿内容附上项目/主页链接,以及联系方式。
🌟 点亮星标 🌟
内容中包含的图片若涉及版权问题,请及时与我们联系删除


评论
沙发等你来抢