RLHF 和 DPO 有什么区别?偏好对齐应该如何选择?
简化版
经典 RLHF 通常先用偏好数据训练奖励模型,再用 PPO 等强化学习算法优化策略,并用 KL 约束避免偏离参考模型;DPO 直接用 chosen/rejected 偏好对优化策略,不显式训练奖励模型,也不需要在线强化学习。DPO 流程更简单,但仍依赖高质量偏好数据和参考策略,并非所有任务都优于 RLHF。
详细版
经典 InstructGPT 式流程是:
- 用示范数据做 SFT;
- 对同一 Prompt 的多个回答进行人工排序;
- 用排序数据训练奖励模型;
- 用 PPO 最大化奖励,同时通过 KL 惩罚限制策略漂移。
DPO 把同样的成对偏好转成分类式目标,直接提高 chosen 相对 rejected 的概率,并相对参考模型控制变化。它省去独立奖励模型和 RL 采样环节,训练通常更简单稳定;但离线偏好覆盖不足、标签噪声和长度偏差仍会影响结果。
完整版教学
记忆钩子:对齐题的主线不是让模型更听话这么简单,而是偏好数据、奖励信号、优化约束和安全边界如何共同塑造行为。
一、为什么 SFT 后还需要偏好对齐
SFT 告诉模型“一个可接受答案长什么样”,但复杂问题可能有多个合理回答。偏好数据通过比较两个候选,表达哪一个更有帮助、更安全或更符合风格。
这些偏好只代表标注规则和样本分布,不等于普遍人类价值。
二、经典 RLHF
奖励模型学习对回答打分,策略模型再通过强化学习提高预期奖励。KL 约束用于防止策略为了追逐奖励而过度偏离参考模型。
难点包括维护奖励模型、在线生成样本、PPO 稳定性、奖励黑客和较高算力成本。
三、DPO 的核心
DPO 利用受 KL 约束的最优策略与隐式奖励之间的关系,把问题改写为直接优化偏好对的目标。训练数据仍是 Prompt、chosen 和 rejected,通常还需要参考模型提供相对基准。
它“不显式训练奖励模型”,不表示没有偏好建模;偏好信号被直接写进策略损失。
四、DPO 的关键因素
偏好对必须有可辨别差异,chosen 和 rejected 都过差或几乎相同会带来弱信号。超参数 beta 控制偏好优化与偏离参考策略之间的权衡,具体含义要以实现的损失定义为准。
长度、格式和措辞可能成为捷径,应检查模型是不是只学会偏爱更长或更像模板的答案。
五、如何选择
已有稳定离线偏好对、希望降低工程复杂度时,DPO 是强基线。需要持续与环境交互、在线探索或复杂奖励组合时,RL 方法仍有价值。
无论选择哪种,都要同时评估有用性、安全、事实性、过度拒答和通用能力保持。
六、面试拆解算例
对齐题可以用一个偏好训练小实验来拆。假设有 20,000 条提示,每条采样 2 个回答,标注员选出更好的一个,就得到 20,000 对偏好样本。奖励模型不是学习“绝对正确答案”,而是学习 chosen 比 rejected 更符合规范的概率;如果样本里大量偏好“更长、更像解释”的回答,奖励模型就可能把啰嗦误学成高质量。
preference_pair = (prompt, chosen, rejected)
loss = -log sigmoid(r(prompt, chosen) - r(prompt, rejected))
KL_penalty = beta * KL(policy || reference_policy)
| 环节 | 关键输入 | 常见风险 | 检查办法 |
|---|---|---|---|
| 偏好采集 | prompt 与候选回答 | 标注偏见、覆盖不足 | 一致性抽检 |
| 奖励建模 | chosen/rejected 对 | 奖励作弊、长度偏置 | 分桶评估 |
| 策略优化 | 奖励 + KL 约束 | 过优化、能力掉点 | 回归集对比 |
| 安全评估 | 红队与拒答样本 | 过拒或漏拒 | 人工审查 |
SFT 模型 -> 采样回答 -> 人类/AI 偏好 -> 奖励信号 -> 策略优化
| | | | |
基础能力 多样候选 规范边界 代理目标 行为改变
因此回答「RLHF 和 DPO 有什么区别?偏好对齐应该如何选择?」时,要把“偏好从哪里来、奖励学到了什么、优化怎样被约束、上线怎么防奖励作弊”串起来。对齐不是单个算法名,而是一条把人类规范变成模型行为的工程链路。
七、常见误区与追问
- 误区:对齐就是让模型回答更礼貌。 礼貌只是表层行为,真正的对齐要处理有害请求、事实忠诚、拒答边界、用户意图和系统规范之间的冲突。
- 追问:偏好数据会不会把模型训偏? 会,所以要控制标注规范、样本分布、审查一致性和红队覆盖,否则奖励模型会学到标注偏见或格式偏好。
- 误区:奖励越高代表模型越安全。 奖励只是代理目标,模型可能通过迎合格式、绕开难题或钻评估漏洞拿高分,这就是奖励作弊。
- 追问:为什么要保留 KL 或参考模型约束? 它限制新策略偏离基座太远,避免过度优化奖励导致语言质量下降、能力坍缩或拒答过度。
- 误区:DPO 出现后 RLHF 就没有价值。 DPO 简化了训练链路,但复杂偏好、多轮工具使用和过程监督场景仍可能需要更细的奖励建模或强化学习。
八、加强记忆
RLHF 是先训练“裁判”再用强化学习训练“选手”,DPO 是直接根据胜负偏好调整选手;DPO 少了一套显式裁判和 PPO 流程,但偏好数据质量与策略漂移控制仍不可少。