跳转到内容

RLHF 全流程

InstructGPT 确立的三阶段:监督微调、从人类偏好训练奖励模型、用 PPO 在 KL 约束下最大化奖励。本章给出每阶段的数据需求、目标函数与常见失败模式,以及 KL 惩罚作为"信任域"的角色。

RLHF(Reinforcement Learning from Human Feedback)让 RL 成为大模型时代最重要的后训练技术。InstructGPT (Ouyang et al., 2022) 确立的三阶段:

阶段一:监督微调(SFT)。用高质量的演示数据(标注员写的指令-回复对)对预训练模型做行为克隆(→ 行为克隆与 DAgger)。目的:把"会续写文本"的基座变成"会回答指令"的模型。数据量不大(数万量级),质量最重要。

阶段二:奖励模型(RM)。标注员对同一提示的多个回复做成对比较(哪个更好);训练一个奖励模型 rϕ(x,y)r_\phi(x, y) 从偏好数据学习标量奖励(Bradley–Terry 模型,→ 奖励模型)。目的:把"什么是好回复"变成一个可优化的标量函数。

阶段三:RL 微调。用 PPO 最大化奖励模型的输出,同时对参考模型(SFT 模型)加 KL 惩罚:

max⁡θ Ex∼D, y∼πθ[ rϕ(x,y)−β KL(πθ(⋅∣x) ∥ πref(⋅∣x))].\max_\theta\ \mathbb{E}_{x \sim \mathcal{D},\, y \sim \pi_\theta}\Big[\, r_\phi(x, y) - \beta\, \mathrm{KL}\big( \pi_\theta(\cdot \mid x)\ \|\ \pi_{\text{ref}}(\cdot \mid x) \big) \Big].

KL 惩罚在 RLHF 中扮演两个角色,都是信任域思想的延续:

  • 信任域:限制策略漂离参考模型,防止一步更新过大导致性能崩溃(经典 RL 的理由);
  • 对齐锚:奖励模型只在参考模型的输出分布附近可靠(它在这个分布上训练),漂远了就是外推,会被精确利用(reward hacking 的来源之一)——KL 惩罚把策略留在奖励模型"认识"的区域内。

β\beta 是核心超参:太小压不住 hacking 与语言退化,太大模型学不到东西(退回 SFT)。奖励过优化随 KL 增大呈现先升后降的规律(→ 奖励黑客与对齐税)。

阶段数据量级常见失败
SFT演示(指令→回复)数万格式对但质量低;多样性不足
RM成对偏好数十万标注不一致;非传递偏好;OOD 过度自信
RL提示分布数万提示奖励黑客;语言退化;熵坍缩

偏好数据的质量与一致性是整条流水线的上限:奖励模型学的是标注员的判断,标注员不一致(同一标注员前后矛盾、不同标注员分歧),上限就被钉死。

把 RLHF 与经典 RL 的设定对照,有一个重要的简化:RLHF 更像一个上下文老虎机而非长期 MDP(→ 多臂老虎机)——

  • 每个提示是一次独立的决策,回复之间没有状态的转移耦合(这个对话不影响下一个提示的分布);
  • 奖励只在序列末尾给出(人类对整个回复打分),中间没有过程奖励;
  • 没有真正的"长期信用分配"问题(信用分配就是整个序列)。

这解释了为什么"稀疏奖励"在 RLHF 中没有游戏中那么致命,也解释了为什么 GRPO(去价值网络、组内相对优势)在这里够用(→ GRPO 与可验证奖励)。

  • KL 惩罚防止策略漂离参考模型(奖励黑客与语言退化)
  • 偏好数据的质量与一致性是上限
  • 整个流程是一个上下文老虎机而非长期 MDP