PPO vs GRPO vs DPO 原理区别?
RLHF 中三种策略优化方法的原理、实现与优缺点对比
原题:请比较PPO、GRPO和DPO这三种策略优化方法,在强化学习与语言模型对齐中的原理、实现方式及优缺点上的主要区别。
RLHF与对齐 · 快手真题
回答与解析
核心判断
PPO、GRPO和DPO都能用于语言模型后训练,但数据闭环不同。PPO用当前策略采样,再依据奖励与价值估计更新;GRPO同样依赖在线或近在线采样,却用同一提示下的一组回答构造相对优势,省去独立价值模型;DPO直接消费偏好对,在参考策略约束下优化胜负回答的相对对数概率,训练阶段不需要单独拟合奖励模型或从当前模型做 rollout。
机制与边界
PPO的核心是 clipped surrogate objective,通常还配价值函数、GAE、KL惩罚和熵项。它能利用标量奖励做在线探索,代价是 rollout、奖励推理和价值网络都吃显存与吞吐,且奖励模型偏差可能被策略放大。GRPO由DeepSeekMath引入。它对同一问题从旧策略采样一组输出并得到奖励。论文的outcome supervision先用组平均奖励作baseline,再按 A_i=(r_i-mean(r))/std(r) 标准化,得到每个输出的组相对advantage;该输出的所有token共享这个advantage。随后采用PPO式重要性比率与裁剪,并把相对reference policy的KL项直接加到目标中。这里没有用奖励排名或“相对位置”作为原公式。
需要说明公式边界:上述表述对应DeepSeekMath的outcome supervision。论文还给出process supervision版本,将各推理步骤的奖励按组均值和标准差归一化,并让token advantage取后续步骤归一化奖励之和。后续实现若改用排名、leave-one-out baseline或不同KL估计,应明确标为变体,不能回写成原始GRPO定义。它降低了价值模型的成本,但组大小、奖励方差、答案重复和零方差组都会影响信号;组内归一化也不会自动修正错误奖励。
DPO来自一个带 KL 正则的奖励最大化目标以及 Bradley-Terry 式偏好模型。论文把隐式奖励写成策略相对参考策略的对数比,进而得到二分类形式的损失。说它只是把强化学习改成分类会漏掉推导,也会误导能力边界。只要偏好数据明确比较了长度、格式或语气,DPO当然可以学习这些偏好;真正限制是离线数据覆盖、偏好标签质量以及训练策略偏离数据分布后的外推。PPO或GRPO也不是天然更先进,它们只是能用新采样继续探索,同时承担更高系统成本和奖励过优化风险。
工程验证
选择算法时先看是否有可靠的成对偏好、可执行验证器或标量奖励,再看是否允许在线生成数据。固定基座、提示集、采样预算和参考策略,对比胜率、任务成功率、KL、长度分布、格式合规、拒答率与算力成本。DPO要检查偏好对覆盖和隐式长度偏置;PPO与GRPO要画 reward 与独立评测的关系,观察组内奖励方差和策略漂移。只有同一质量门槛下的端到端结果,才能决定单用哪一种或是否分阶段组合,不能把某条 DPO 后接 PPO 的流水线写成默认生产标准。
还有一个判断不能漏:同样叫离线偏好数据,若候选来自很旧的策略,DPO的覆盖问题会更明显;若在线方法不断采样新答案,则要额外计算标注或验证器调用的成本。
口语版讲法(约4分钟(先30秒,再90秒,可继续展开))
- 30秒:按数据闭环区分三种算法
- 90秒:比较价值模型、组均值标准化与偏好损失
- 边界:outcome与process supervision公式不能混写
- 验证:质量、KL、偏置和成本同口径评测
如果只给我三十秒,我会这样回答:PPO、GRPO和DPO都能用于语言模型后训练,但数据闭环不同。PPO用当前策略采样,再依据奖励与价值估计更新;GRPO同样依赖在线或近在线采样,却用同一提示下的一组回答构造相对优势,省去独立价值模型;DPO直接消费偏好对,在参考策略约束下优化胜负回答的相对对数概率,训练阶段不需要单独拟合奖励模型或从当前模型做 rollout。
如果有九十秒,我会把机制讲清楚。PPO的核心是 clipped surrogate objective,通常还配价值函数、GAE、KL惩罚和熵项。它能利用标量奖励做在线探索,代价是 rollout、奖励推理和价值网络都吃显存与吞吐,且奖励模型偏差可能被策略放大。GRPO由DeepSeekMath引入。它对同一问题从旧策略采样一组输出并得到奖励。论文的outcome supervision先用组平均奖励作baseline,再按 A i=(r i-mean(r))/std(r) 标准化,得到每个输出的组相对advantage;该输出的所有token共享这个advantage。随后采用PPO式重要性比率与裁剪,并把相对reference policy的KL项直接加到目标中。这里没有用奖励排名或“相对位置”作为原公式。
需要说明公式边界:上述表述对应DeepSeekMath的outcome supervision。论文还给出process supervision版本,将各推理步骤的奖励按组均值和标准差归一化,并让token advantage取后续步骤归一化奖励之和。后续实现若改用排名、leave-one-out baseline或不同KL估计,应明确标为变体,不能回写成原始GRPO定义。它降低了价值模型的成本,但组大小、奖励方差、答案重复和零方差组都会影响信号;组内归一化也不会自动修正错误奖励。
继续展开时,我会补上容易混淆的边界。DPO来自一个带 KL 正则的奖励最大化目标以及 Bradley-Terry 式偏好模型。论文把隐式奖励写成策略相对参考策略的对数比,进而得到二分类形式的损失。说它只是把强化学习改成分类会漏掉推导,也会误导能力边界。只要偏好数据明确比较了长度、格式或语气,DPO当然可以学习这些偏好;真正限制是离线数据覆盖、偏好标签质量以及训练策略偏离数据分布后的外推。PPO或GRPO也不是天然更先进,它们只是能用新采样继续探索,同时承担更高系统成本和奖励过优化风险。
落地时我会这样验证。选择算法时先看是否有可靠的成对偏好、可执行验证器或标量奖励,再看是否允许在线生成数据。固定基座、提示集、采样预算和参考策略,对比胜率、任务成功率、KL、长度分布、格式合规、拒答率与算力成本。DPO要检查偏好对覆盖和隐式长度偏置;PPO与GRPO要画 reward 与独立评测的关系,观察组内奖励方差和策略漂移。只有同一质量门槛下的端到端结果,才能决定单用哪一种或是否分阶段组合,不能把某条 DPO 后接 PPO 的流水线写成默认生产标准。
还有一个判断不能漏:同样叫离线偏好数据,若候选来自很旧的策略,DPO的覆盖问题会更明显;若在线方法不断采样新答案,则要额外计算标注或验证器调用的成本。
关键一句:DeepSeekMath原始GRPO为什么用组平均奖励作baseline,而不是用奖励排名。
核验来源
面试官还可能这样问
- 问法 1 · 场景切入
假设同一任务既有离线偏好对,也能为在线生成结果计算标量奖励。请分别设计 PPO、GRPO 与 DPO 的训练输入和更新流程,并比较资源与风险。
- 问法 2 · 层层追问
PPO 的策略、价值函数与奖励怎样配合?……GRPO 怎样去掉独立 critic?……DPO 如何利用 reference policy 和偏好对?……它们在 rollout、显存、奖励作弊与分布外问题上有何差异?
- 问法 3 · 直球技术
比较 PPO、GRPO 和 DPO 的原理、实现、奖励/偏好来源、计算成本与适用场景,不预设候选人使用过其中任何一种。