RLHF 与偏好对齐:奖励模型、PPO 与更简洁的 DPO
完整讲清基于人类反馈的强化学习三步流水线,理解偏好数据如何训练奖励模型、PPO 如何用它优化语言模型,以及 DPO 如何跳过显式奖励模型直接对齐;最后讨论对齐税、安全与红蓝对抗
- 掌握 RLHF 标准三步:SFT → 奖励模型 → 强化优化
- 理解偏好成对数据与奖励模型在学什么
- 说清 PPO 路线与 DPO 路线的区别与取舍
- 理解对齐税、有用性与安全性的平衡及安全评测
让模型对齐「人类更喜欢哪个」
经过 SFT 的模型已经能好好回答,但同一问题的多个回答,哪个更有帮助、更诚实、更无害,需要人类偏好来校准。RLHF(基于人类反馈的强化学习)就是把这种偏好变成训练信号的标准流水线,它让模型从「能答」走向「答得好、答得稳」。
第一步 SFT
先用高质量示范得到会作答的起点模型
第二步 奖励模型 RM
对同一问题采样多个回答,人类标注两两偏好(谁更好)
训练 RM 给任意回答打分,拟合人类偏好
第三步 强化优化
以 RM 打分为奖励,用 PPO 等策略优化语言模型
同时加约束防止偏离 SFT 太远
奖励模型:把主观偏好变成可计算分数
让人逐条给回答打绝对分既慢又不一致,更可靠的是成对比较:同一个问题给两个回答,标注员只选哪个更好。奖励模型据此学习——好回答得分应高于差回答。训练好后,它就能对模型新生成的、人类没见过的回答自动打分,相当于把人类偏好「压缩」成一个可无限调用的奖励函数,解决了强化学习需要海量奖励信号的问题。
PPO 与 DPO:两条对齐路线
先单独训练奖励模型 RM
再用 PPO 把 RM 当奖励,强化优化语言模型
灵活、可控奖励,但系统复杂、训练不稳、成本高
不显式训练 RM、不跑强化学习
用数学等价变换,直接在成对偏好上做监督式损失优化
实现简单、训练稳定,效果常可媲美,应用广泛
DPO 的洞见是:最优策略和奖励函数之间存在数学对应,可以把「奖励最大化」这一步解析地消掉,直接用成对偏好数据计算一个分类式损失来更新模型。它省掉了 RM 在线采样打分和不稳定的 PPO,工程上轻很多。除此之外还有结合二者优点的变体(如先训 RM 再做离线优化的一系列方法),属于持续演进的研究方向。
对齐税、安全与红蓝对抗
对齐不是没有代价:过度追求安全/无害可能让模型变得啰嗦、回避正常问题、有用性下降,这被称为对齐税,目标是在有用(helpful)、诚实(honest)、无害(harmless)之间取得平衡而非一边倒。安全还要靠机制保障:
红队测试
主动构造诱导、越狱、危险请求,专找模型漏洞
安全数据
把危险问题与合规拒答/引导纳入 SFT 与偏好数据
运行时护栏
输入输出过滤、敏感分类、速率与滥用监控
持续迭代
上线后收集 badcase 回流,形成数据—训练—评测闭环
对齐让模型更符合人类意图,但不能保证它永远正确或绝对安全:偏好标注本身带主观性和文化差异,奖励模型可能被钻空子,能力与安全也需持续再平衡。工程上应把对齐、评测、护栏和人工兜底结合,而不是假设一次训练就能解决所有问题。
在经典 RLHF 中,奖励模型(RM)的训练数据和学习目标是?
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
先查数据:标签是否正确、有没有特征和标签泄漏、是否做了归一化;再查损失与学习率:学习率太大震荡、太小几乎不动;接着看批量大小和优化器,最后才怀疑模型结构。一个极好用的冒烟测试是:用极少量样本训练,看损失能不能被压到接近零——能,说明整条代码链路是通的;不能,问题一定在实现里,先别谈调参。