LESSON 5.4 · 推导 · 120 分钟
DPO:绕开奖励模型的偏好优化
DPO 使用同一提示下的 chosen/rejected 回答对,比较当前策略对两者的对数概率差,并减去固定参考策略的对应差值,再通过带 β 温度的 logistic 损失提高 chosen 的相对优势。它把带 KL 约束的偏好优化改写成一个直接作用于语言模型的分类式目标,因此标准流程不需要单独拟合奖励模型或进行在线 rollout。
DIRECT ANSWER · VERIFIED SOURCES ·
DPO 如何不用单独训练奖励模型和在线强化学习就学习偏好?
DPO 使用同一提示下的 chosen/rejected 回答对,比较当前策略对两者的对数概率差,并减去固定参考策略的对应差值,再通过带 β 温度的 logistic 损失提高 chosen 的相对优势。它把带 KL 约束的偏好优化改写成一个直接作用于语言模型的分类式目标,因此标准流程不需要单独拟合奖励模型或进行在线 rollout。
视频对齐
视频对齐点:紧盯四项 log-prob——策略与参考模型各自对 chosen/rejected 的序列对数概率——以及它们如何组成 margin、乘 β、进入 log-sigmoid。
关键结论
- 参考策略定义“不要偏离太远”的基线,训练时通常冻结,只更新当前策略。
- β 控制相对参考策略的偏好强度;它不是普通学习率,效果依赖数据和实现约定。
- 损失使用回答 token 的条件对数概率,提示 token 通常不计入 chosen/rejected 的评分。
边界与常见误解
DPO 简化了经典 RLHF 管线,但没有消除偏好数据偏差、标签噪声、长度效应或分布外退化。它优化成对相对偏好,并不自动保证事实性、安全性或所有群体的偏好一致。
一手来源
学完你应该能够
- 能不用术语堆砌,解释「DPO:绕开奖励模型的偏好优化」解决了什么问题。
- 能围绕 reference policy、KL、DPO objective 画出变量与因果关系。
- 能完成「从公式实现 DPO loss」,并用证据而不是感觉判断结果。
核心概念
reference policy
reference policy比较策略对 chosen/rejected 的相对 log-prob,并用参考策略约束偏移。它省去在线 rollout,但仍依赖偏好数据覆盖和 beta 强度。
KL
KL把概率预测变成可相加的代价。负对数会重罚模型对真实答案给出极低概率;交叉熵等于数据熵加上分布错配,因此优化时真正能降低的是错配部分。
DPO objective
DPO objective把计算、参数或序列分给多设备,同时引入通信成本。选择策略时要比较消息大小、链路带宽、同步频率和流水线空泡,而不是只看 GPU 数量。
实践任务
从公式实现 DPO loss
- 预测:在运行代码前,写下你预期的输出、趋势或失败位置。
- 构建:写出已知量与目标量,只保留回答核心问题所需的最小组件。
- 验证:使用固定评测集、人工复核、置信区间与失败样本分层;保存参数、随机种子与原始结果。
- 迁移:改变用户群、风险等级或奖励信号后重新设计评测,说明原结论是否仍成立。