先说结论
PPO 式 RLHF 使用四个模型(策略、参考、奖励、价值函数)联合训练,通过裁剪策略更新比例防止训练不稳定。
先把核心脉络捋清楚
四个模型
| 模型 | 参数量 | 作用 | 是否更新 |
|---|---|---|---|
| Actor | 同基础模型 | 生成回复 | 是 |
| Critic | 同基础模型 | 估计状态价值 | 是 |
| Reward Model | 通常较小 | 提供奖励信号 | 冻结 |
| Reference | 同基础模型 | KL 惩罚基准 | 冻结 |
PPO 裁剪目标
训练循环
1. 采样 prompt x
2. Actor 生成回复 y
3. RM 计算 r_ω(x, y)
4. 总奖励 R = r_ω(x,y) - β·KL(π_θ || π_ref)
5. GAE 估计优势 A_t
6. PPO clipped 更新 Actor
7. MSE 更新 Critic
KL 惩罚
防止策略偏离参考模型过远,避免输出退化和 reward hacking。
容易踩的坑
- 训练发散:PPO 超参极其敏感(KL 系数、clip 范围、学习率)
- 显存爆炸:4 个模型同时驻留显存
- Reward Hacking:策略利用 RM 漏洞
如果要对外讲,可以怎么概括
"PPO-RLHF 需要同时维护四个模型:策略、参考、奖励和价值函数。核心是 PPO 的裁剪目标防止策略变化过大,加上 KL 惩罚防止偏离参考模型。最大痛点是训练不稳定和显存开销。对 7B 模型,4 个模型需要约 28B 参数同时驻留显存。这是 DPO 成为更受欢迎替代方案的核心原因。"
最后记几条
- 4 个模型:Actor + Critic + RM + Reference
- KL 惩罚防止 reward hacking
- GAE 估计优势函数
- 训练极不稳定,超参敏感
- 中小团队应优先考虑 DPO
延伸阅读
-
人类反馈强化学习RLHF — RLHF 全流程
-
偏好优化DPO_GRPO — 简化替代方案
-
GRPO与推理训练 — 不需要 Critic 的方法
参考资料
- Schulman et al., PPO (2017)
- InstructGPT (Ouyang et al., 2022)
- HuggingFace TRL PPOTrainer