为什么选择 GRPO,它的优化目标和数学原理是什么?
未标记
考查重点:相对奖励与受约束策略更新。同题多采样可获得相对奖励时,GRPO 可省价值网络;概率比裁剪约束更新,KL 控制偏移,组内无差异则信号弱
本题目录
参考答案
核心回答
选择GRPO的主要理由是:同一问题能够采样多个候选并获得有区分度的奖励时,可以用组内相对表现估计优势,省去单独训练价值网络。它延续PPO式的概率比与裁剪目标,鼓励高于组均值的回答、抑制低于均值的回答;原始目标还用参考策略KL限制漂移。
它适合奖励可验证、组采样成本可接受的任务,但不保证比PPO更稳定或更省总成本。省去Critic节约了一部分训练资源,多个回答、长轨迹与环境交互仍可能很贵;全组同分时还会缺少奖励梯度。
优化过程与数学含义
先固定采样策略old,对问题q生成G个回答,各得奖励r_i。结果奖励场景通常把同一个回答的组内优势分配到其生成token:
A_i = (r_i - mean(r_1...r_G)) / (std(r_1...r_G) + epsilon)
rho_i,t = pi_theta(token | prefix) / pi_old(token | prefix)
收益项 = min(rho_i,t × A_i,
clip(rho_i,t, 1-epsilon_clip, 1+epsilon_clip) × A_i)
对有效token和回答聚合这些收益,再减去beta乘参考策略KL,最大化目标。实际训练常最小化其负值。组标准差的epsilon与裁剪宽度epsilon_clip职责不同。
例如奖励[0,0,1,1]产生约[-1,-1,1,1]的优势。若优势为1、rho=1.4、裁剪宽度0.2,收益为min(1.4,1.2)=1.2,不再继续奖励沿该方向增大概率比。若优势为-1、rho=0.6,收益为min(-0.6,-0.8)=-0.8。裁剪作用依赖优势正负,不是直接把模型概率硬截到某个范围。
两个策略比较不要混
old是生成本批轨迹的策略,用于概率比;ref是锚定行为的参考策略,用于KL。old随新采样更新,ref通常冻结。规则奖励不需要反向可导,因为策略梯度通过生成动作的log概率更新模型;它也不要求一定有神经奖励模型。
选型需要验证什么
先看同组奖励是否有分辨率,再比较最终成功率、KL、长度、同分组比例、有效样本数与训练费用。PPO的价值估计可以服务多步信用分配;GRPO用同题多候选替代基线,也会受组内统计、采样数量和奖励噪声影响。
原始GRPO对每条回答先按token求平均再跨回答聚合。后续方法可能改变归一化、奖励缩放和KL设置,因此讨论公式时要说明所指版本,不能把某框架当前默认参数当成算法定义。
对应教程
- 1-1-大模型认知与工程概览:回看反馈驱动的策略优化背景,本文进一步分析组内优势与环境奖励。
参考资料
- 国内:DeepSeek-AI等:DeepSeekMath:依据原始 GRPO 的组内优势、优化目标和算法流程,解释正文中以组内相对奖励替代价值网络的依据。
- 国内:DeepSeek-AI:DeepSeek-R1:参考可验证奖励与冷启动流程,说明正文中选择 GRPO 前需要可靠任务评分和适当训练起点。
- 国内:ModelScope ms-swift / 阿里开源项目:ms-swift 4.4:Loss Types:借鉴损失缩放的比较,解释正文中原始目标与框架变体的归一化差异及长度偏置。
- 国外:John Schulman等 / OpenAI:Proximal Policy Optimization Algorithms:参考概率比、clip 和正负优势的分析,解释正文中高低于组均值的回答怎样获得不同更新激励。
- 国外:Hugging Face / TRL团队:GRPO Trainer:依据奖励缩放、KL 可选配置和同分组处理,说明正文中实际实现与原始 GRPO 定义的区别。

