Skip to content

Direct Preference Optimization (DPO)

一种轻量级的偏好对齐方法,通过直接优化策略从偏好数据中学习,无需训练单独的奖励模型。

概述

DPO (Direct Preference Optimization) 由 Rafailov 等人于 2023 年提出,解决了 RLHF(RLHF)的核心痛点:需要维护和训练一个奖励模型,并且 RL 训练过程(PPO)复杂且不稳定。DPO 直接从偏好数据中优化策略模型,通过封闭形式的奖励函数参数化,将 RL 优化问题转化为简单的分类损失。

核心原理

DPO 的核心思想

传统 RLHF 是两阶段过程:

  1. 训练一个奖励模型,拟合人类偏好判断
  2. 用 PPO 算法优化语言模型以最大化奖励

DPO 将奖励函数用策略本身的参数化表示,从而在一个步骤中完成对齐:

$$\mathcal{L}{DPO}(\pi\theta; \pi_{ref}) = -\mathbb{E}{(x, y_w, y_l) \sim \mathcal{D}} \left[ \log \sigma \left( \beta \log \frac{\pi\theta(y_w|x)}{\pi_{ref}(y_w|x)} - \beta \log \frac{\pi_\theta(y_l|x)}{\pi_{ref}(y_l|x)} \right) \right]$$

其中 $y_w$ 是偏好回答,$y_l$ 是非偏好回答,$\beta$ 控制对参考策略的偏离程度。

DPO vs RLHF 对比

维度RLHF (PPO)DPO
训练阶段3 阶段(SFT → RM → RL)2 阶段(SFT → DPO)
奖励模型需额外训练和部署不需要
训练稳定性不稳定,需大量调参稳定,类似 SFT 训练
显存需求4 个模型(策略、参考、奖励、价值)2 个模型(策略、参考)
实现复杂度高(PPO 实现细节多)低(标准分类 loss)
数据效率可使用奖励模型评分生成新数据固定偏好数据集
离线对齐不原生支持原生支持
超参数敏感性

DPO 变体

KTO (Kahneman-Tversky Optimization)

  • 不需要成对偏好数据,只需要"好"或"不好"的单侧标签
  • 基于前景理论(Prospect Theory)
  • 更适合实际标注场景(标注者只需评判单个回答)

IPO (Identity Preference Optimization)

  • 解决了 DPO 中隐式奖励过大导致的过拟合问题
  • 通过正则化约束保持接近参考策略

SimPO (Simple Preference Optimization)

  • 使用序列平均对数概率(而非概率比)作为隐式奖励
  • 无需参考模型,进一步简化训练流程

ORPO (Odds Ratio Preference Optimization)

  • 将对齐损失和监督学习损失联合优化
  • 不需要单独的 SFT 阶段

采用 DPO 的代表模型

模型规模对齐方法特点
Llama 3 (Meta)8B/70B/405BDPO大规模 DPO 量产验证
Mistral Large 2123BDPO多语言偏好对齐
Yi-1.5 (01.AI)6B/9B/34BDPO中文 DPO 实践
Qwen 2.50.5B-72BDPO混合 RLHF + DPO
DeepSeek V2236BDPOMoE 模型 DPO
Zephyr (HuggingFace)7BdDPO完全开源的对齐管线

工程实践

偏好数据构建

偏好数据集的核心要素:

  • 多样性: 覆盖不同类型的任务(问答、创作、推理、编码)
  • 质量: 偏好判别的一致性(多位标注者之间的 Cohen's Kappa)
  • 难度: 包含模型容易犯错的有挑战性的样本

DPO 超参数

参数推荐范围说明
β (beta)0.1 - 0.5控制 KL 正则化强度,越小越接近参考策略
学习率1e-6 - 5e-6通常比 SFT 学习率低
批量大小32 - 128偏好数据需要足够大 batch
训练轮次1 - 3防止过拟合(DPO 容易 overfit)

常见陷阱

  1. 过拟合: DPO 可以轻松最大化偏好差距 → 需要 early stopping 或正则化
  2. 数据质量 > 数量: 1000 条高质量偏好数据 > 10000 条噪声数据
  3. 彩票效应: DPO 可能让模型学会"投机取巧",短回答或格式化技巧

相关概念

参考来源

  • Rafailov et al. (2023). "Direct Preference Optimization: Your Language Model is Secretly a Reward Model." NeurIPS 2024.
  • Ethayarajh et al. (2024). "KTO: Model Alignment as Prospect Theoretic Optimization."
  • Meng et al. (2024). "SimPO: Simple Preference Optimization with a Reference-Free Reward."
  • Hong et al. (2024). "ORPO: Monolithic Preference Optimization without Reference Model."
  • Meta (2024). "The Llama 3 Herd of Models" — DPO 在 405B 规模的实践报告。

AI Knowledge Base — 持续积累