PaperWeekly 09月19日
RL训练中的分布错位问题及其修正
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

文章深入探讨了在强化学习(RL)训练过程中,当采样策略(rollout)与策略更新策略(policy)不一致时,由于分布错位(distribution mismatch)导致的偏差问题。这种偏差会悄悄地拖慢RL训练效果,尤其是在现代RL框架中,使用vllm/sglang等推理引擎进行采样时,其优化可能引入分布偏移,进而加剧了期望估计的偏差。文章提出了基于Importance Sampling (IS) ratio的修正方法,通过计算采样分布与策略分布的ratio来修正期望估计,以保持数学上的准确性。实验表明,这种修正方法在某些场景下(如MOE模型、agentic-RL)能够提升训练稳定性,且通常没有负面副作用。此外,文章还探讨了MOE模型中super-expert的作用以及其对训练稳定性的影响。

🎯 **分布错位是RL训练中的隐蔽问题**:当用于采样的策略(rollout policy)与用于更新的策略(training policy)分布不一致时,会引入期望估计的偏差,从而影响RL训练的效率和收敛性。这种偏差往往不易察觉,但可能导致训练缓慢或效果不佳。

🚀 **推理引擎优化带来的挑战**:现代RL框架常使用vllm/sglang等推理引擎加速采样,但这些引擎的算子优化(如attention优化、expert均衡优化)可能引入分布偏移,使得rollout policy与training policy的分布差异增大,进一步加剧了期望估计的偏差。

✅ **基于IS-ratio的数学修正**:文章提出了一种基于Importance Sampling (IS) ratio的修正方法,通过计算采样分布与策略分布的ratio来校正期望估计的偏差。这种方法旨在数学上保证期望估计的准确性,尤其在模型具有随机性(如MOE)或进行训推一体的agentic-RL场景下更为重要。

🔬 **实验验证与实践建议**:通过在不同数据集和模型上的实验,文章表明IS-ratio修正方法在多种情况下(如zero-setting、MOE模型)能够提升训练的稳定性和效果,且通常没有负面副作用。作者建议在RL训练中考虑引入这种修正,并重新审视其他工程优化和过滤策略的影响。

💡 **MOE模型中的Super-Expert**:文章还探讨了MOE模型中super-expert的重要性,认为其在保持模型性能方面起着关键作用。保持super-expert的稳定可能有助于MOE-RL训练的稳定性,而IS-ratio修正可能间接或直接地影响super-expert的稳定性。

皓天 2025-09-18 14:23 北京

当rollout ≠ policy,分布错位带来的偏差会让RL悄悄走偏。

©作者 | 皓天

研究方向 | AI安全、推理&规划

训练跑得慢、收敛不稳,很多人第一反应是算力不足、参数没调好。但问题往往更隐蔽:pg-loss 的期望计算本身可能就错了。当 rollout≠policy,推理引擎带来的分布偏移让估计偏差在 MC 采样中逐渐放大,最终拖慢 RL 效果。

更棘手的是,这种“小错误”早已存在于主流框架中,却很少被认真讨论。 

最近,就有一篇文章 [1] 提出了一个很有趣的观点:高效的 RL 框架让 policy-learning 本身变得 off-policy,如果再加上 off-policy 的训练设置(rollout 一次、参数更新多次),则进一步加剧了这一问题。

核心在于:

从 loss 计算的角度,rollout-policy 分布和 training-policy 分布是一致的才是正确的期望近似。

然而,在现代 RL 框架中(openrlhf/verl/roll/areal)等等,都选择使用 vllm/sglang 作为 rollout 引擎进行采样。然后,loss 计算都默认使用下面的公式计算:

由于 vllm/sglang 等等做了不同的推理优化,相比 model.generate 速度提升了很多倍,但推理优化不可避免的引入的分布偏移的问题(attention 优化、expert 均衡优化等等),使用上述公式计算 loss(用 mc 估计期望),不可避免带来期望估计 bias 问题。

由于 mc 估计本身方差比较大,如果 bias 再变大,则整体估计准度会进一步下降,bias/variance 总要有一个估计的好一些。

这篇文章 [1] 则进一步给出了比较详细的推导(如果从 pg 公式推导,应该是序列级别的 tis):

下述是引入推理引擎后的期望形式:

而正确的期望应该是关于  的期望,为了使用推理引擎采样但保持期望估计的一致性,通常,我们会有如下 trick(generative-modeling 参数优化的常见 trick,基于易于采样的分布期望,并用 ratio 修正期望计算):

为了保证 ratio 有界,通常可以对 ratio 做 truncation:

而 clip-loss 也能得到类似的形式(区分 policy 分布、采样分布即可):

简单总结一下:

1. 由于使用更快的推理引擎采样,推理引擎的算子优化等等会导致 rollout-policy 分布和 policy 分布不一致,会导致期望估计的 bias 更大(方差已经很大的情况下,bias 再变大,期望估计结果会变得更差);

2. 正确区分期望计算中的采样分布、policy 分布,前期使用常规 IS 方法近似(generative-modeling 领域,有很多 IS/MIS 的估计方法,进一步降低 variance 等等)。

3. 如果模型本身有较强的随机性(说得就是 MOE),采样引擎的 expert 激活/路由带来的随机性,会进一步增加期望 MC 估计的 bias。

4. 强求推理引擎精度对齐不是一个好选择,为了提升推理效率,推理引擎在输出 string 正确的情况下,算子、cache、超长 context 推理会有很多工程化优化。在 agentic-rl 场景,追求训推一体,那推理引擎的工程优化直接在 rollout 上使用,则推理引擎工程优化会带来更严重的分布偏移。

基于上述几个点,使用 [1] 的修正,是一个最好的选择。当然,数学上正确不代表实践中一定有效果。[1] 给出了 zero-32b、DeepSeek-R1-Distill-Qwen-1.5B 等等上的实验结果。

当分布不够尖锐的情况下,采样引擎 policy 分布和 training-policy 分布的差距会比较大,如果做了很重的 sft(模型本身没有随机性引入如 MOE 等等),则采样引擎 policy 分布和 training-policy 分布的差距较小,对结果影响不大。

实验

笔者也在 gem-gym、zero-tir 上进行了初步实验(基于 openrlhf)。

toy-example

gem-gym 使用 guess-number、count-letter 跑了 1.7b-base-zero 的实验。

多组实验的训练 setting 一致且同时启动训练(理想情况下,对比实验可能差个 1-10training-step)。

从上图看出,在 guess-number 上,二者差异几乎没有(加不加 ratio 修正),而在 count-number 上,加了 ratio 修正后的训练,在几乎相同的训练时间下,跑了 1kstep,而不加修正的版本只跑了 600step。

这里,由于同时启动训练,跑的慢的一般是采样出现超长、重复等等。也说明,ratio 修正几乎没有负作用,在更多 setting 下,可以更好的保持训练稳定性。当然,gspo 还是比朴素的 pg-loss 更稳一些。

zero-tir

我们继续在 zero-tir-7b-base 上进行了初步实践(基于 openrlhf),对比不同算法在同一个 training-step(300-step)下的效果对比:

我们也统计了 vllm 和 old-logp 的 kl-ratio(二者也是随着训练进行偏差越来越大,ratio 修正值也起到越来越大的作用):

这里,我们跑了 300-step,计算 aime24/25,hmmt24/25,cimmc 5 个数据集的 avg@32 的平均值。

从上表可以看出,reinforce++-baseline(local-mean+global-normalization),加入 vllm-ratio-correction 后,在大部分数据集、平均指标上都有更好的提升。

进一步,我们在 zero-tir 上,设置 max-turn=8 进行训练 500-step,对比之前的添加 filter 策略的训练 setting,二者 training-dynamics 如下图:

相比 filter 策略,加入 tis 后,也能稳定训练,但前期收敛速度慢于 filter 策略(进一步说明,好的 filter 策略,选择更好的正样本可以提升模型的收敛效率和效果 [3])。

借用 @skydownacai 的一个结果:vllm、fsdp 的 logp 在 multiturn-tool 调用的第二轮以后,二者的差距越来越大(使用 k1 估计 vllm-logp 与 fsdp-logp 的 kl 距离)。

随着 turn 的增加,二者的差距呈现逐渐增加的趋势,tis 修正的重要性也越来越重要(盲猜:环境反馈对于 base/pretrain-model 来说,算 OOD,如果做过 agentic-pretrain/ct/mid-training,应该会好很多):

总结

这是个由推理引擎分布和 training-policy 分布不一致但沿用二者分布一致的期望估计导致的问题,从最早的 openrlhf 到现在的 verl/roll/areal 等等,都沿用了类似的小“错误”。该错误在大多数情况下不影响训练的正常进行,最多拖累训练速度。

当使用 MOE、超长 context 优化后,以及 agentic-rl 的训推一体场景,推理引擎 policy 分布、training-policy 分布的不一致带来的问题可能会越来越显著,甚至引发训练崩溃的问题。

当数学上修正该问题后,实践中,并不能保证一定效果、收敛效率比之前更好,但总体上无副作用,且在一些任务、zero-setting、moe 等等 setting 下,可能具有更好的实践效果。

笔者建议,加上该 ratio 修正后(确保 math 上正确的前提下),重新审视不同 adv 估计、工程 filter-trick 的影响,很可能这些工作和 ratio 修正有着类似的作用(也可能依然正交)。

关于MOE题外话

MOE 激活、routing 本身存在一定随机性(rollout-distribution、training-policy-distribution 会存在一定 gap),通过 IS-ratio 可以做一定修正。

近期,笔者看到 [2],感觉避免 MOE 训崩的另一个点:保持 super-expert。[2] 中发现,剪裁 super-expert 后,模型性能直线下跌;而且,super-expert 在不同系列的 MOE 模型中均存在,且在不同数据集上,也呈现相当高的一致性。

从这个角度来看,提前识别 super-expert,并在 rl 过程中保持,其他 expert 可以放宽约束,可能也能保证 MOE-RL 训的稳稳当当。当然,也有可能 ratio -校准能保持 super-expert,训崩的话,可能 super-expert 就完全崩溃。

[2] 中还提到:super-expert 稳定(base、后训练的 super-expert 相当稳定),从这一角度出发,MOE-RL 需要保证 super-expert 稳定(识别每一条 RL 训练样本的 super-expert 作为约束)。

[2] 也发现,当剪裁 super-expert 后,模型输出乱码、重复,自然 ppl 会变差,则 sequence-level 的 ppl 过滤就是一个比较好的稳定训练的手段(如 GSPO)。

总结:

super-expert 可能是 MOE 中特殊的 sub-network,对于保持模型性能具有重要作用。从 pretrain 到 post-training,super-expert 基本都能够保持。而剪裁 super-expert 后,模型输出出现随机、重复、乱码(结果就是 ppl 变差)。

为了保持 MOE-RL 训练的稳定性,保持 ppl 算一种间接保持 super-expert 的方法(GSPO),IS-ratio-correction 不确定是否也具有这样的作用。

当模型训练进入深水区,模型可解释似乎成为为数不多的破局方法。

参考文献

[1] https://fengyao.notion.site/off-policy-rl

[2] https://arxiv.org/abs/2507.23279

[3] rStar2-Agent: Agentic Reasoning Technical Report

更多阅读

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

强化学习 RL 分布错位 Importance Sampling IS-ratio 推理引擎 vllm sglang MOE AI安全 Reinforcement Learning Distribution Mismatch Inference Engine AI Safety
相关文章