PPO vs GRPO 怎么选?
大模型对齐中目标函数与优势估计的差异对比
原题:请比较近端策略优化(PPO)与组相对策略优化(Group Relative Policy Optimization,GRPO)在目标函数、优势估计方式及大模型后训练中的适用性差异。
RLHF与对齐 · 字节真题
回答与解析
核心判断
PPO和GRPO都属于带策略比率约束的在线或近在线策略优化。PPO通常训练策略和价值函数,用 GAE 或回报减价值基线估计优势,再通过裁剪限制单次更新。GRPO最早在 DeepSeekMath 提出,它对同一提示采样一组回答,用组内奖励的相对结果构造优势,省去独立价值模型,因而更适合可批量采样且奖励能区分答案的大模型推理任务。
机制与边界
PPO目标一般包含裁剪后的 surrogate loss,还可加入价值损失、熵奖励与对参考策略的 KL 控制。价值函数尝试预测期望回报,GAE把多步 TD 残差加权起来,在偏差与方差间折中。GRPO保留策略概率比率、裁剪和 KL 约束,但不依赖单独 critic,而是在每个问题的多个候选里对奖励做相对化。这样能省掉价值模型的参数与训练开销,不过需要多个 rollout,组内样本若全对、全错或高度重复,优势信号会变弱;组大小和奖励尺度也会影响方差。
两种方法拿到的通常仍是序列级或结果级奖励。PPO的价值函数与GAE不会自动指出某个推理步骤对结果负责,GRPO的组内基线也不是过程监督。若只有最终正确性奖励,token 级更新只是把同一优势传播到采样序列的对数概率项,具体步骤是否正确仍需步骤标签、可执行验证或更细粒度奖励。组内归一化能消除同一提示下的共同平移并形成相对基线,但无法抵消奖励模型对某类答案的系统误判,也不能保证奖励和真实质量一致。
工程验证
比较时要固定基座、提示、生成长度、采样温度、rollout token 预算和奖励器。报告任务准确率、pass@k、独立人工或验证器分数、KL、熵、响应长度、组内奖励方差、显存和每步吞吐。PPO还要看 critic 误差和 explained variance;GRPO要统计零方差组、有效候选数与组大小敏感性。若GRPO省显存却需要更多采样,必须计算端到端 token 成本。若奖励上涨而独立指标下降,两者都应视为过优化,不能把组内相对化当成纠错机制。
若奖励只有对错二值,组内相对化的有效信号取决于一组里同时出现正确和错误答案。采样温度过低会让候选重复,过高又可能降低可用答案比例,所以采样策略也是算法配置的一部分。
口语版讲法(约4分钟(先30秒,再90秒,可继续展开))
- 30秒:critic基线与组内基线
- 90秒:目标函数、采样和成本
- 边界:序列奖励不等于步骤监督
- 验证:critic误差、零方差组与token成本
如果只给我三十秒,我会这样回答:PPO和GRPO都属于带策略比率约束的在线或近在线策略优化。PPO通常训练策略和价值函数,用 GAE 或回报减价值基线估计优势,再通过裁剪限制单次更新。GRPO最早在 DeepSeekMath 提出,它对同一提示采样一组回答,用组内奖励的相对结果构造优势,省去独立价值模型,因而更适合可批量采样且奖励能区分答案的大模型推理任务。
如果有九十秒,我会把机制讲清楚。PPO目标一般包含裁剪后的 surrogate loss,还可加入价值损失、熵奖励与对参考策略的 KL 控制。价值函数尝试预测期望回报,GAE把多步 TD 残差加权起来,在偏差与方差间折中。GRPO保留策略概率比率、裁剪和 KL 约束,但不依赖单独 critic,而是在每个问题的多个候选里对奖励做相对化。这样能省掉价值模型的参数与训练开销,不过需要多个 rollout,组内样本若全对、全错或高度重复,优势信号会变弱;组大小和奖励尺度也会影响方差。
继续展开时,我会补上容易混淆的边界。两种方法拿到的通常仍是序列级或结果级奖励。PPO的价值函数与GAE不会自动指出某个推理步骤对结果负责,GRPO的组内基线也不是过程监督。若只有最终正确性奖励,token 级更新只是把同一优势传播到采样序列的对数概率项,具体步骤是否正确仍需步骤标签、可执行验证或更细粒度奖励。组内归一化能消除同一提示下的共同平移并形成相对基线,但无法抵消奖励模型对某类答案的系统误判,也不能保证奖励和真实质量一致。
落地时我会这样验证。比较时要固定基座、提示、生成长度、采样温度、rollout token 预算和奖励器。报告任务准确率、pass@k、独立人工或验证器分数、KL、熵、响应长度、组内奖励方差、显存和每步吞吐。PPO还要看 critic 误差和 explained variance;GRPO要统计零方差组、有效候选数与组大小敏感性。若GRPO省显存却需要更多采样,必须计算端到端 token 成本。若奖励上涨而独立指标下降,两者都应视为过优化,不能把组内相对化当成纠错机制。
若奖励只有对错二值,组内相对化的有效信号取决于一组里同时出现正确和错误答案。采样温度过低会让候选重复,过高又可能降低可用答案比例,所以采样策略也是算法配置的一部分。
关键一句:如果组内所有答案奖励相同,GRPO还能从这一组得到什么学习信号?
核验来源
面试官还可能这样问
- 问法 1 · 场景切入
假设你在做一个电商客服的大模型对齐,用户问“退款流程”然后接着问“那运费呢”,你给模型做RLHF时,如果显存吃紧,怎么在优势估计上省点资源?
- 问法 2 · 层层追问
做RLHF时你一般怎么估计每个token的优势?……那如果去掉Critic网络,只用采样的方式做优势估计,你觉得可行吗?……和GAE比,这种组内归一化的方式有什么缺点?
- 问法 3 · 直球架构
PPO和GRPO在目标函数和优势估计上核心差异是什么?从大模型对齐训练的角度,GRPO为什么能省显存?适用场景上各有什么优劣?