RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)是一种通过人类偏好信号来训练 AI 模型的方法,是当前大语言模型后训练对齐的核心技术。
核心思想
用人类偏好来定义”什么是好的回答”,然后通过强化学习让模型学会生成人类偏好的输出。
训练流程
┌─────────────────────────────────────────────────────────────┐
│ Step 1: SFT │
│ 预训练模型 + 指令数据 → 微调后模型 │
├─────────────────────────────────────────────────────────────┤
│ Step 2: 训练奖励模型 (Reward Model) │
│ 人类对多个回答进行排序 → 训练 RM 学习人类偏好 │
├─────────────────────────────────────────────────────────────┤
│ Step 3: PPO 强化学习 │
│ 用 RM 作为奖励信号,优化策略模型生成更高奖励的回答 │
└─────────────────────────────────────────────────────────────┘
关键组件
| 组件 | 作用 | 说明 |
|---|---|---|
| SFT 模型 | 起点 | 经过监督微调的基础模型 |
| 奖励模型(RM) | 打分器 | 预测人类对回答的偏好分数 |
| 策略模型 | 生成器 | 被优化的目标模型 |
| 参考模型 | 约束 | 防止策略模型偏离太远(KL 散度约束) |
人类偏好数据收集
- 给定同一 prompt,让模型生成多个回答
- 人类标注员对回答进行排序或选择
- 将排序转化为偏好对(chosen vs rejected)
奖励模型训练
目标:学习一个函数 r(x, y),使得人类偏好的回答得分更高
其中 是人类偏好的回答, 是不偏好的回答。
PPO 优化
目标函数:
- 最大化奖励模型的打分
- 同时用 KL 散度约束防止模型”跑偏”
优点
- 能够捕捉难以显式定义的人类偏好
- 可以优化主观质量(如有帮助性、安全性)
- 在 ChatGPT 等产品中证明了有效性
缺点
- 训练复杂,涉及多个模型和阶段
- 奖励黑客:模型可能学会”讨好”奖励模型而非真正对齐
- 人类标注成本高、可能存在偏见
- PPO 训练不稳定,需要精细调参
代表工作
- OpenAI: InstructGPT、ChatGPT
- Anthropic: Claude(Constitutional AI 在 RLHF 基础上改进)
- DeepMind: Sparrow