跳转至

AI Post Traning: DPO

导言

在LLM对齐的早期探索中,研究者们建立了两种影响深远的基础范式。

  1. 一种是基于强化学习的PPO,它将经典的RL框架引入LLM微调,通过复杂的系统协调实现了强大的性能;
  2. 另一种是DPO,它通过深刻的理论洞见,将对齐问题转化为一个更简洁的监督学习问题,显著提升了训练的稳定性和效率。

鉴于PPO-RLHF的复杂性,研究者们开始寻求更简洁、更直接的对齐方法。直接偏好优化(Direct Preference Optimization, DPO)应运而生,它巧妙地绕过了显式的奖励建模和复杂的RL优化循环,为偏好对齐提供了一个优雅的替代方案。

这篇文章介绍DPO, 和Step-Video论文介绍了Video-DPO, 这类训练中最后通过人工标注优化的方法。

必看好文6

为什么需要后训练?

想象一下,我们辛辛苦苦训练出了一个拥有海量知识的基础大模型。它能记住无数事实、理解复杂的语法结构,甚至具备潜在的推理能力。但这还不够!就像一个学富五车的学者,如果他不了解如何有效地与人沟通、不明白你的具体需求,或者无法根据情境调整自己的表达方式,他的学识就难以充分发挥价值。5

大语言模型(LLMs)的基础模型(Base Model)在海量数据上预训练后,虽然掌握了基础能力,但它们并不能直接理解和遵循人类的复杂指令,也无法自然地与人互动,更不用说根据用户的偏好或特定任务需求来调整行为。它们可能不知道何时需要一步步推理(思维),何时需要直接给出答案(非思维),也不知道如何生成符合特定格式、长度或风格的文本。

后训练的目标是将基础模型与人类偏好和下游应用更好地对齐。简单来说,就是教模型“读懂人心”,让它知道我们想要什么,并以我们希望的方式来回应。

Qwen3的后训练尤其强调两大目标:

  1. 思维控制,让模型能选择是否推理以及控制推理深度;
  2. 以及强到弱蒸馏,利用大模型的知识高效地训练小模型。

DPO (2023)

  • DPO 是基于人类直接反馈可以有效地指导人工智能行为发展的原理而提出的。
  • 通过直接利用人的偏好作为训练信号,DPO 简化了校准过程,将其框定为一个直接学习任务。
  • 优势:简化了人工智能系统的适应性,以更好地满足用户需求,绕过了与构建和利用奖励模型相关的复杂性。

LLM-DPO

使用成对的例子和相应的人类偏好,使用二元交叉熵损失函数对模型进行微调。这种统计方法将模型的输出与首选结果进行比较,量化模型的预测与所选择的首选结果的匹配程度。

偏好数据,可以表示为三元组(提示语prompt, 良好回答chosen, 一般回答rejected)。

损失函数

  • 思路: 最大化奖励模型(此处的奖励模型即为训练的策略),使得奖励模型对chosen和rejected数据的差值最大,进而学到人类偏好。

python 代码实现转化

可以参考23

Video-DPO

思路和LLM-DPO一样,其核心思想简洁直观且易于实现。具体而言,给定相同条件下的人类偏好数据和非偏好数据,目标是调整当前策略(即模型),使其更倾向于生成偏好数据,同时避免生成非偏好数据。为了稳定训练,引入参考策略(即参考模型)以防止当前策略偏离参考策略过远。策略目标函数定义为:4

\[ L_{\text{DPO}} = -\mathbb{E}_{(y, x_w, x_l) \sim D} \left[ \log \sigma \left( \beta \left( \log \frac{\pi_\theta(x_w|y)}{\pi_{\text{ref}}(x_w|y)} - \log \frac{\pi_\theta(x_l|y)}{\pi_{\text{ref}}(x_l|y)} \right) \right) \right] \tag{8} \]

其中,\(\pi_\theta\)为当前策略,\(\pi_{\text{ref}}\)为参考策略,\(x_w\)\(x_l\)分别为偏好样本和非偏好样本,\(y\)为条件(如文本提示)。

数据对收集

为收集训练所需的偏好数据对\((x_w, x_l|y)\),我们构建多样化提示集:

  1. 首先从训练数据中随机选取提示以保证多样性;
  2. 其次邀请标注员根据模拟真实用户交互的指南合成新提示;
  3. 最后对每个提示生成多组视频,由人类标注员打分并筛选偏好数据。

标注过程通过质量控制确保一致性。

训练时,每次迭代选择一个提示及其对应的正负样本对,并通过固定初始噪声和时间步长保持数据一致性以提升训练稳定性。

超参调整

  • 背景:原目标函数(式8)基于DiffusionDPO(Wallace等,2024)和DPO(Rafailov等,2024),但针对流匹配框架(Flow Matching)进行了调整。
  • 通过将策略相关项记为\(z\),可推导梯度:
\[ \frac{\partial L_{\text{DPO}}}{\partial \theta} \propto -\beta (1 - \sigma(\beta z)) \cdot \frac{\partial z}{\partial \theta} \tag{9} \]
  • 问题:当\(\beta\)过大(如DiffusionDPO中\(\beta=5000\))且\(z<0\)时,梯度可能爆炸(放大\(\beta\)倍),需通过梯度裁剪和极低学习率(如\(1e-8\))维持稳定,但会导致收敛缓慢。
  • 改进:为此,我们降低\(\beta\)并提高学习率,显著加速收敛。

奖励模型

  • 问题:实验表明,人类反馈有效提升了生成质量,但当模型能轻易区分正负样本时改进饱和。
  • 解释:这可能因训练数据来自早期模型版本,迭代后当前策略已显著偏离历史策略,导致旧数据利用率下降。(DPO循环时无法记住前面的DPO数据)
  • 改进:
    • 为此,我们提出训练基于人类标注数据的奖励模型,
    • 目的:动态评估新生成样本的质量,并通过周期性微调保持与当前策略对齐,
    • 效果:最终实现实时数据打分与筛选(On-Policy),提升数据效率。

实例

见 Multimodel RL 一文

DPO vs PPO-RLHF

DPO与PPO-RLHF相比,展现出显著的优势:

  • 简洁性: DPO将复杂的RLHF流程简化为一步监督微调。它不需要训练一个独立的奖励模型,也不需要复杂的强化学习采样和优化循环。
  • 稳定性与效率: 由于避免了RL训练中的不稳定性(如奖励滥用和超参数敏感性),DPO的训练过程通常更稳定,计算效率也更高。
  • 性能: 实验表明,DPO不仅实现起来更简单,而且在多种任务(如摘要和对话)上能够达到甚至超过PPO的性能。DPO训练的模型在与人类评估者的比较中也表现出更高的胜率。

总而言之,DPO通过一个深刻的理论洞见,成功地将偏好学习问题转化为了一个可以直接优化的分类问题,极大地简化了LLM的对齐过程。

图中的chosen表示为下标w(即win),rejected表示为下标l(即lose)

上图左边是RLHF算法,右边为DPO算法,两图的差异对比即可体现出DPO的改进之处:2

  1. RLHF算法包含奖励模型(reward model)和策略模型(policy model,也称为演员模型,actor model),基于偏好数据以及强化学习不断迭代优化策略模型的过程。
  2. DPO算法不包含奖励模型和强化学习过程,直接通过偏好数据进行微调,将强化学习过程直接转换为SFT过程,因此整个训练过程简单、高效,主要的改进之处体现在于损失函数。

策略选择

遵循以下几个因素:1

  1. 任务复杂性: 如果您的项目涉及到
    1. 复杂的交互或者需要理解细微的人类反馈,RLHF 可能是更好的选择。
    2. 更直接的任务或需要快速调整时,DPO 可能更有效。
  2. 资源考量: 考虑计算资源和人工注释器的可用性。DPO 通常在计算能力方面要求较低,在收集必要数据方面可以更直接。
  3. 期望控制水平: RLHF 提供了更多的细粒度控制微调过程,而 DPO 提供了一个直接的路径,以调整模型输出与用户的喜好。评估在微调过程中需要多少控制和精度。

为何DPO与GRPO并行发展?

一个常见的观察是,在学术界和工业界的讨论中,DPO似乎在一段时间后热度有所减退,而GRPO及其变体则成为提升模型推理能力的新宠。这种现象并非意味着一种算法优于另一种,而是反映了LLM对齐任务的日益分化和专业化。6

DPO的领域:通用偏好对齐的基础设施DPO的 brilliantly之处在于它将复杂的RLHF流程简化为一个稳定的、类似监督学习的框架。它极其擅长处理那些基于人类主观偏好的对齐任务,例如:

在这些场景下,人类偏好通常是成对的(A比B好),难以用一个绝对的标量分数来精确衡量。DPO的分类损失函数与这种数据形式完美契合。因此,DPO并没有“销声匿迹”,而是已经成为许多机构进行基础安全和风格对齐的标准工具和基础设施。它解决的是对齐的“下限”问题,即确保模型行为符合基本的人类规范。

  • 风格与语调:让模型说话更礼貌、更专业或更有趣。
  • 安全性与无害性:拒绝回答有害问题,避免生成有偏见的内容。
  • 帮助性:生成更符合用户模糊意图的、结构更清晰的回答。

GRPO的领域:提升推理能力的“奥林匹克赛场”与此同时,研究的前沿阵地转移到了提升LLM在复杂、多步推理任务上的能力,例如数学、编程和科学推理。这类任务具有一个关键特性:它们的正确性通常可以被程序自动验证(RL with Verifiable Rewards, RLVR)。这为强化学习提供了一个近乎完美的训练环境:

GRPO及其后续算法正是为这个“赛场”量身定做的。它们通过移除评论家模型,极大地降低了RL训练的成本,使得在这种数据驱动的迭代循环中进行大规模训练成为可能。因此,GRPO的流行,反映了社区当前的研究焦点——探索LLM智能的“上限”,即它能达到的最高推理水平。

  • 清晰的奖励信号:奖励不再是模糊的人类偏好,而是来自验证器的、通常是二元(正确/错误)的清晰信号。
  • 迭代式自我提升:模型可以通过大量的“练习”(生成解法 -> 获得反馈 -> 更新策略)来不断提升解决问题的能力,这正是RL的核心优势。

综上所述,DPO和GRPO并非竞争关系,而是互补关系。DPO为模型打下了通用对齐的坚实基础,而GRPO则是在此基础上,针对特定高阶能力进行强化训练的利器。二者的并行发展,标志着LLM对齐技术正走向成熟和专业化。

GRPO 就是 DPO(都可看成对比学习) ? 2-GRPO 媲美 16-GRPO,训练时间缩短 70%

GRPO 就是 DPO ? 2-GRPO 媲美 16-GRPO,训练时间缩短 70%

Video-FineTuning

EasyAnimate V5

为了进一步优化生成视频的质量以更好地对齐人类偏好,我们采用奖励反向传播(DRaFT 和 DRTune)对 EasyAnimateV5.1 基础模型进行后训练,使用奖励提升模型的文本一致性与画面的精细程度。

如下三个视频,首个视频是没有使用奖励模型的生成效果,第二个视频是使用HPS作为奖励模型的生成效果,第三个视频是使用MPS作为奖励模型的生成效果。可以看到后面两个模型明显更为讨人喜欢。

细节

我们在EasyAnimate ComfyUI中详细说明了奖励反向传播的使用方案。我们实际使用了HPS v2.1和MPS两个模型对EasyAnimateV5.1进行奖励反向,两个模型都是人类偏好模型,作为反馈,调整后的EasyAnimateV5.1具有更好的文视频一致性,且画面更加精细。

Visual-RFT

视觉强化微调!DeepSeek R1技术成功迁移到多模态领域,全面开源

参考文献


  1. https://www.53ai.com/news/finetuning/2024090863750.html 

  2. https://www.cnblogs.com/mengrennwpu/p/17999027 

  3. https://github.com/MLNLP-World/LLMs-from-scratch-CN/blob/main/ch07/04_preference-tuning-with-dpo/dpo-from-scratch.ipynb 

  4. step-video-t2v 

  5. https://zhuanlan.zhihu.com/p/1907752312404973549 

  6. PPO、DPO、GRPO及其变体(Dr. GRPO、GSPO、GMPO、LitePPO)策略优化算法综述 

评论