简介:本文系统对比大模型强化学习对齐中的五种主流方法——PPO、DPO、GRPO、DAPO与GSPO。你将了解它们各自解决什么问题、在奖励建模、策略更新、采样效率与训练稳定性上的核心差异,并结合业务场景获得条件化的选型建议与迁移注意事项,帮助你在模型对齐方案中做出理性决策。
在大语言模型(LLM)的对齐阶段,核心目标是让模型输出更符合人类偏好、价值观与实用要求。早期主流做法是采用强化学习(RL)范式,将语言生成视为一个序贯决策问题,通过奖励信号引导策略优化。PPO(近端策略优化)是最早被大规模使用的方法,其稳定性和可解释性让RLHF(基于人类反馈的强化学习)成为可能。
然而,PPO 的工程复杂度较高,需要训练独立的奖励模型、维护策略与参考策略的多个副本,并承担采样、优势估计、裁剪更新等众多环节。随后,学术界与工业界陆续提出更简洁的替代方案,如直接偏好优化(DPO)、分组相对策略优化(GRPO)、解耦裁剪与动态采样策略(DAPO)以及广义序列偏好优化(GSPO),它们在重参数化、目标函数设计与采样效率上各有创新。
本文对比的对象正是这五种对齐方法,它们共同服务于“让模型更符合人类期望”的目标,但在技术路线、训练成本、稳定性与适应场景上存在显著差异。理解这些差异,有助于开发者和算法工程师在具体资源约束与任务需求下做出合理选型。
PPO 将语言模型视为策略网络 πθ。其流程包括:
LPPO(θ) = E[ min( rθ·A, clip(rθ, 1-ε, 1+ε)·A ) ]
其中 rθ = πθ(y|x) / πθ_old(y|x) 是概率比。PPO 的核心价值在于“谨慎更新”:在每轮迭代中不让策略偏离旧策略过远,从而避免训练崩塌。
DPO 的关键洞察是:奖励模型的最优策略可以用闭式解表达,从而可以将偏好学习直接转化为分类问题。它不再显式训练奖励模型,而是利用偏好对(chosen / rejected)构造隐含奖励差异,目标函数变为对偏好概率的负对数似然:
LDPO(θ) = -E[ log σ( β·log(πθ(y_chosen|x)/πref(y_chosen|x)) - β·log(πθ(y_rejected|x)/πref(y_rejected|x)) ) ]
其中 πref 是冻结的参考策略(通常是SFT模型)。DPO 省去了奖励模型训练和采样强化学习循环,大幅降低工程复杂度。
GRPO 针对 PPO 中价值网络(critic)占用大量显存的问题。PPO 需要为每个token预测基线值,而 GRPO 通过从旧策略中对同一提示采样多个回答(如4~8个),利用组内相对奖励计算基线。优势函数变为:
A_i = (r_i - mean(r_group)) / std(r_group)
这样无需单独训练价值网络,显著减少模型副本数与显存占用,适合大规模模型微调。
DAPO 在 GRPO 基础上进一步修正三个痛点:
DAPO 的核心目标是提升训练稳定性与样本效率,特别适合超大规模模型与稀缺高质量偏好数据场景。
GSPO 将 DPO 及其变体(如IPO、KTO等)统一为一个广义优化目标。它允许灵活设计偏好损失的前置变换函数,从而控制对不同偏好差异的敏感度。例如,可以调整损失对“明显偏好”与“边缘偏好”的权重。GSPO 并非一个单一算法,而是一个设计空间,用户可以按数据质量与业务需求自定义损失形式。
尽管实现方式不同,这五种方法在底层目标上高度一致:
这些共同点使得它们可以被归入“偏好对齐”或“RLHF替代方案”的同一技术谱系。
| 方法 | 是否需要奖励模型 | 是否需要价值网络 | 参考策略 | 额外组件 |
|---|---|---|---|---|
| PPO | 是 | 是 | 可选 | 价值网络、GAE优势计算、裁剪 |
| DPO | 否 | 否 | 是(冻结) | 无额外网络 |
| GRPO | 是(或可复用规则奖励) | 否 | 是(旧策略) | 分组采样 |
| DAPO | 是(或可复用规则奖励) | 否 | 是(旧策略) | 动态裁剪、梯度屏蔽 |
| GSPO | 否 | 否 | 是(冻结) | 自定义变换函数 |
PPO 的架构最重,需要维护策略网络、价值网络、奖励模型三套参数;DPO 与 GSPO 最轻量,只需策略与参考策略;GRPO 与 DAPO 介于两者之间,免去价值网络但仍需奖励信号。
| 方法 | 每轮采样数量 | 计算开销 | 显存占用 | 适合模型规模 |
|---|---|---|---|---|
| PPO | 较低(通常1~2次/提示) | 高(价值网络+GAE) | 高 | 中小模型(7B~13B) |
| DPO | 无在线采样 | 低(纯监督损失) | 低 | 大模型(13B以上) |
| GRPO | 较高(4~8次/提示) | 中 | 中 | 大模型 |
| DAPO | 较高(带偏置采样) | 中高 | 中 | 超大模型(70B级) |
| GSPO | 无在线采样 | 低 | 低 | 大模型 |
DPO 与 GSPO 不进行在线采样,因此迭代成本远低于PPO,也无需维护旧策略的概率缓存(或仅需一次前向计算)。GRPO 与 DAPO 仍保留在线采样,但去掉了价值网络后,显存占用显著下降。
| 方法 | 关键超参数 | 调参难度 |
|---|---|---|
| PPO | 裁剪ε、GAE λ、KL系数、学习率 | 高 |
| DPO | β(温度)、学习率 | 低 |
| GRPO | 组大小、奖励归一化方式、裁剪ε | 中 |
| DAPO | 动态裁剪阈值、采样温度、屏蔽比例 | 中高 |
| GSPO | 变换函数类型、β、额外平滑参数 | 低~中 |
对于团队工程经验有限、追求快速迭代的场景,DPO 与 GSPO 的简单性具明显优势。
以下表格从最核心的维度对五种方法做结构化总结:
| 对比维度 | PPO | DPO | GRPO | DAPO | GSPO |
|---|---|---|---|---|---|
| 奖励模型依赖 | 必需 | 不需要 | 需要奖励信号 | 需要奖励信号 | 不需要 |
| 价值网络 | 必需 | 不需要 | 不需要 | 不需要 | 不需要 |
| 在线采样 | 是 | 否 | 是 | 是 | 否 |
| 训练损失类型 | 策略梯度 | 偏好分类梯度 | 策略梯度(组内归一化) | 策略梯度(动态裁剪) | 广义偏好损失 |
| 对显存需求 | 高 | 低 | 中 | 中 | 低 |
| 稳定性风险 | 过高更新幅度 | 偏好坍缩 | 组内方差大 | 动态阈值难调 | 变换函数不当致失控 |
| 迭代周期 | 长 | 短 | 中 | 中 | 短 |
| 工程复杂度 | 高 | 低 | 中 | 中高 | 低 |
若已有大规模“好/差回答对”数据集(如人工标注或规则筛选),且希望快速得到对齐模型,DPO 或 GSPO 是最佳选择。它们无需在线采样,训练时间短、显存占用小,易于集成进现有微调流水线。GSPO 还可根据数据噪声情况调整损失敏感度。
在代码生成、数学题解等任务中,可以通过单元测试或规则精确计算奖励。此时 GRPO 非常适合:对同一提示采样多个回答,根据自动奖励计算相对优势,无需价值网络,训练成本低于PPO。若奖励信号稀疏(如大部分回答得零分),则进一步选择 DAPO,其动态采样能提高高奖励样本出现频率。
超大规模模型训练时,每增加一个额外网络(价值网络、奖励模型)都会带来显存压力。GRPO 与 DAPO 去掉价值网络的设计使其成为可行方案;如果连在线采样都难以承受,则退回到 DPO/GSPO,仅依赖冻结参考策略 + 监督损失。
若奖励模型已被对抗性攻击或分布外问题污染,PPO 很容易放大偏差。此时可优先考虑 DPO/GSPO,因为它们直接优化偏好标签而非连续奖励值,且拥有参考策略约束。若仍需在线探索,则使用 GRPO 并对奖励做组内归一化,削弱绝对偏差影响。
若从 PPO 切换到 DPO 或 GSPO,或从 DPO 升级到 GRPO/DAPO,需注意以下问题:
PPO 的裁剪区间、KL系数在 DPO 中不适用;DPO 的温度系数 β 不能直接沿用 PPO 学习率;GRPO 的组大小可能需要根据GPU内存调整。建议在少量验证集上做温度扫描。
DPO 与 GSPO 对参考策略 πref 敏感,应使用 SFT 后的模型作为参考;若参考策略分布与目标策略偏差过大,训练会不稳定。GRPO 与 DAPO 使用旧策略作为参考,每轮需要重新计算旧策略概率,需保证存储效率。
GRPO/DAPO 需要显存一次性容纳一个提示的多个生成结果及其对数概率,若组大小为8,则相比DPO(单样本)显存需求提升约8倍。在资源紧张时,选择组大小为4或考虑梯度累积策略。
PPO 中通过 KL 惩罚项控制与参考策略的距离,DPO/GSPO 内部的参考策略比较本质上也隐式约束了距离,但二者对距离的度量方式不同。若需要严格保证输出分布变化不剧烈,应偏好 PPO 或给 DPO 添加显式 KL 项。
PPO 核心指标是奖励均值与优势方差;DPO 需监控偏好准确率(chosen 概率高于 rejected 的比例);GRPO 每轮应观察组内奖励标准差,若标准差过小,说明采样多样性不足,需调整采样温度。
PPO 作为经典RLHF方法,稳定但笨重;DPO 以极简方式去掉了奖励模型与在线采样,适合快速迭代;GRPO 在保持在线采样带来的探索收益的同时,通过分组归一化去掉价值网络,降低了大规模模型的显存压力;DAPO 进一步解决了训练早期的稀疏奖励与裁剪失效问题;GSPO 则提供了一个灵活损失设计框架,让研究者可根据数据场景自定义优化目标。
在实际选型中,没有“绝对最佳”的方法,只有“最契合当前约束”的方案。若计算资源慷慨、任务复杂且团队有强化学习经验,PPO 或 DAPO 可发挥最大潜力;若追求快速上线、数据现成且希望降低工程维护成本,DPO 或 GSPO 是可靠起点;若已具备自动奖励函数且希望达到更高对齐质量,GRPO 是性能与成本之间的平衡点。无论选择哪条路径,都应保留验证集监控、设置早停机制,并做好偏好数据质量的持续治理。