PPO 算法在 LLM 中的应用
要解决的问题
RM 给出标量奖励后,需在 离散 token 空间 上更新策略 ,且序列很长、方差大。策略梯度方法不稳定;近端策略优化(PPO) 通过 clipped surrogate 限制单步更新幅度,成为 RLHF 阶段的事实标准(与 InstructGPT 同期普及)。
核心概念
令 为 advantage(可用 GAE 估计), 为重要性采样比。PPO clipped 目标:
LLM 场景下常见设定:
| 组件 | 说明 |
|---|---|
| 状态 | 已生成 token 前缀 |
| 动作 | 下一 token |
| 奖励 | 常在 序列末 给 ;中间 token 由 GAE 回传 |
| 参考策略 | 多为 SFT;KL 惩罚并入 reward 或 loss |
| Critic | 值函数 ,常与 policy 共享骨干 |
总目标常写为:
其中 为 value loss, 为熵 bonus(鼓励探索,系数常很小)。
方法 / RLHF 中的 PPO 循环
- 从 prompt 集采样 。
- rollout 生成 (可 temperature 采样)。
- 计算 (KL 惩罚形式之一,见 4.3.4)。
- 用 GAE 得 ,多 epoch mini-batch 更新 。
- 周期性同步 。
工程实践
| 挑战 | 缓解 |
|---|---|
| 四模型显存 | ZeRO、CPU offload、colocate 推理 |
| 长序列 | 限制 max response len;reward 仅末 token |
| 训练崩溃 | 降 LR、减 、增 、早停 KL 飙升 |
| 实现 | trl.PPOTrainer、OpenRLHF、NeMo-Aligner |
可观测:KL 散度、平均 reward、clip fraction、entropy、response 长度。
代表工作
- Schulman et al., 2017 — Proximal Policy Optimization Algorithms(原论文)。
- Ouyang et al., 2022 — LLM RLHF 中的 PPO 配方。
- Zheng et al., 2023 — RLHF 实践 类博客与
rlhf开源实现对比(arXiv: "Secrets of RLHF" 等)。
局限与注意点
- PPO 超参敏感;复现困难 是社区共识。
- 仅末 token reward 使 信用分配 粗糙,长 CoT 场景更明显。
- 许多团队改用 DPO / GRPO 等绕过 PPO+critic(4.4、6.3 GRPO)。