在三个从头训练的LLM(353M/316M/672M)上使用相同的GRPO配方得到了三种不同的结果,且与规模没有明显的关系 [P]
摘要
一项实验使用相同的GRPO配方训练三个从头开始的LLM,得到了不一致的结果,GRPO在某些模型中降低了性能,特别是中等规模的那个,并且与规模没有明显的关系。
我用纯PyTorch从头训练了三个LLM,然后对每个进行了SFT和GRPO的后训练。每次过程相同:相同的合成算术课程、相同的奖励函数、相同的超参数、相同的KL系数。预训练按预期进行,验证损失随着模型采用更现代的技术(V1到V2)和更大规模(V3最大)而下降。然而,GRPO对V2和V3都有损害,我不确定原因。
设置
V1 V2 V3
参数 353M 316M 672M
d_model / 层数 1024 / 24 1024 / 24 1536 / 24
注意力机制 MHA Differential + GQA 4:1 XSA + GQA 4:1
令牌数 10B 10B 30B
数据 FineWeb-Edu FineWeb-Edu FineWeb-Edu + 代码 + 数学
预训练验证损失为2.8659 → 2.7844 → 2.5885。
结果
WikiText词困惑度在三个阶段中,所有都在lm-evaluation-harness上使用相同的任务版本和样本数:
基线 SFT GRPO SFT→GRPO
V1 32.86 51.31 51.40 +0.2%
V2 31.28 46.81 71.06 +52%
V3 22.30 32.11 33.65 +5%
SFT在该评估上击中所有三个,这在我预期的规模下。同样有趣的是,随着模型变大,性能下降变小(+56%、+50%、+44%)。GRPO是奇怪的。V1几乎没有变化,V2大幅下降,V3略有退化。最小的模型受影响最小,中等模型最差,这不是我猜测的模式。下游任务与困惑度以相同方式移动(arc_easy在V3上从SFT到GRPO下降了约6分)。模型确实学习了GRPO训练它们的东西。V3掌握了5个课程阶段中的4个,另外两个掌握了3个。但它没有转移:GSM8K基本保持在0,并且模型变得如此致力于写出长解决方案以至于它们经常不会停止生成(我在训练时的过错)。
注意事项
这不是一个对照实验。在V2和V3之间,我同时改变了参数数量、令牌数量、数据混合和注意力机制(从DiffAttn变为XSA),所以我无法干净地归因任何东西。KL系数对所有三个都是0.02,SFT策略冻结为参考,并使用k3估计器。整个系列花费我约750美元,这就是为什么没有消融实验,我负担不起。否则,我还会尝试不同的KL系数。在我发布后,有人提出了两个混淆因素:GRPO在裸求解器模板上训练,而SFT使用聊天格式。所以我所说的降级的一部分是在评估策略在其自身训练分布之外。WikiText困惑度与格式无关,仍然变化很大,但下游数字部分被混淆。我的奖励中没有任何奖励停止。它只检查正确可解析的数字出现在某处,没有长度惩罚。另外,我事后才注意到:一旦模型超过早期课程阶段,我从未重新评估它们。所以我现在无法区分"GRPO降低了通用能力"和"顺序课程训练使其忘记了早期阶段"。我将尽快检查。
推理
最后,我从零开始编写了KV缓存(GQA感知,每个请求的缓存对象,而不是将状态存储在模块上)。为了检查它是否正确,我以两种方式运行了固定序列:一次作为单个完整前向传递,一次作为预填充然后解码,并比较了逻辑值:最大差异1.4e-06,容差为1e-4。生成100个令牌的加速:从32个令牌提示加速3.7倍,128个时6.2倍,512个时10.1倍。
如果你想检查
所有九个检查点都在Hugging Face上,并且有一个空间,你可以将相同的提示发送到同一模型的基线、SFT和GRPO版本,直接查看差异。
权重 演练场 代码
完整撰写(4部分)
GRPO方差是我最希望其他人意见的部分。乐意回答任何问题。
相似文章
通过100步GRPO微调350M模型以获得更好的结构化输出
本指南详细介绍了使用TRL库中的Group Relative Policy Optimization(GRPO)进行微调的方案,以提升LFM2.5-350M模型的结构化输出合规性,将IFStruct基准性能从22.6%提高到29.7%。
GRPO 下基于梯度的 LoRA 秩分配:一项实证研究
本研究通过实证表明,在监督微调中有效的基于梯度的 LoRA 秩分配,在基于 GRPO 的强化学习中会导致性能下降,原因在于梯度景观更为平缓以及存在梯度放大效应。
@vintcessun: 最难的题,反而最教不会模型?GRPO 的死区就在这里:一组 rollout 全错,组内优势归零,梯度也随之消失。 https://arxiv.org/abs/2607.27787 LSPO 给这些“悬崖题”临时装上 LoRA:用标准推导短…
该论文提出 LSPO(LoRA Scaffolded Policy Optimization),用于解决 GRPO 在零奖励“悬崖题”上梯度消失的问题:通过临时 LoRA 适配器进行短暂 SFT 并采样成功轨迹,经重要性采样校正后回灌 RL batch,最终只更新基础模型。实验表明在 DeepMath-103K 上优于 DAPO 基线,平均提升 3.8 点。
GRPO、Dr. GRPO 和 DAPO 是对同一数值的三种操作:组标准差恒等式
本文证明 GRPO、Dr. GRPO 和 DAPO 是同一底层机制的三种表述:调整一组采样答案中奖励的标准差。组标准差恒等式表明,一致的组不提供任何学习信号,而分裂的组驱动学习,揭示了训练语言模型推理的统一旋钮。
@akshay_pachaar: https://x.com/akshay_pachaar/status/2064700531600458093
本文介绍了如何使用GRPO微调LLM(Qwen3-8B)以实现可靠的JSON结构化输出,将模式准确率从62%提升至82%,超越了GPT-4.1的58%。