news 2026/6/15 21:02:41

DPO微调

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DPO微调

🍋🍋AI学习🍋🍋

🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。
💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博主哦🤞


一、DPO 的核心思想

“语言模型本身就可以作为隐式的奖励模型,无需显式训练 RM。”

更具体地说:

  • 给定一个参考策略(通常是 SFT 模型),最优策略与参考策略的概率比直接反映了人类偏好的“隐式奖励”。
  • 因此,我们可以直接用偏好数据优化策略模型,而不需要中间的奖励模型或强化学习。

这使得 DPO 成为一种端到端、稳定、高效、易于实现的偏好对齐方法。


二、数学原理

1. RLHF 的目标回顾

在 RLHF 中,我们希望找到策略 π∗,使其最大化期望奖励:

其中 r(x,y) 是奖励模型给出的标量分数。

但直接优化这个目标会导致语言崩坏,因此引入 KL 正则项,得到正则化目标

其中 π ref​ 是参考策略(如 SFT 模型),β>0 是温度系数。

2. 关键洞察:最优策略的解析形式

对上述目标求导并令梯度为零,可得最优策略的闭式解

其中 Z(x) 是归一化常数。

移项后得到:

注意:logZ(x) 对同一个 prompt x 是常数,因此在比较两个回答 yw​ 和 yl​ 时会被抵消!

于是有:

3. 构造 DPO 损失函数

人类偏好告诉我们:yw​ 比 yl​ 更好 ⇒ 希望 r(x,yw​)>r(x,yl​)

因此,我们可以直接最大化上述差值。采用 Bradley-Terry 偏好模型,定义损失为:

其中:

  • πθ​:待优化的策略模型(可与 πref​ 初始化相同)
  • π ref​:参考模型(冻结,不更新参数
  • σ:sigmoid 函数
  • β:控制优化强度的超参数

这就是 DPO 的全部!没有 RM,没有 PPO,只有一次标准的监督训练。


三、DPO 训练流程(Step-by-Step)

输入准备

你需要一个偏好数据集D={(x,yw​,yl)}​,其中:

  • x:用户指令(prompt)
  • yw​:被人类选中的“更好”回答
  • yl​:被拒绝的“较差”回答

数据来源:

  • 人工标注(如 Anthropic HH、OpenAI Summarize)
  • 合成数据(用 GPT-4 生成对比对)
  • 在线收集(A/B 测试日志)

模型准备

  • 参考模型 πref​:通常是一个经过 SFT 的模型(如 Alpaca、Qwen-Chat)。训练过程中冻结
  • 策略模型 πθ​:可初始化为 πref​,然后微调。

训练过程

对每个 batch:

  1. 将 (x,yw​) 和 (x,yl​) 分别输入 πθ​ 和 πref​
  2. 计算 log-prob:
    • logπθ​(y∣x)=∑t=1T​logπθ​(yt​∣x,y<t​)
    • 同理计算 logπref​(y∣x)
  3. 计算 logits 差值:

    Δ=β([logπθ​(yw​)−logπref​(yw​)]−[logπθ​(yl​)−logπref​(yl​)])

  4. 损失:L=−logσ(Δ)
  5. 反向传播,只更新 πθ​

注意:log-prob 需要对整个序列计算(通常忽略 prompt 部分,只算 response 的 token)


四、关键实现细节

1. 如何计算 logπ(y∣x)?

  • 使用模型的token-level logits
  • 对 response 部分(不含 prompt)求和:

2. 是否需要 mask prompt?

必须 mask!否则模型会优化 prompt 的 likelihood,导致过拟合。

3. 参考模型是否必须不同?

  • 通常 πθ​ 和 πref​共享初始权重,但训练中 πref​ 冻结。
  • 也可以用更强的模型作 πref​(如用 GPT-4 生成参考 log-prob),但需离线计算。

4. 支持 PEFT 吗?

完全支持!DPO + LoRA 是 2025 年最主流的轻量对齐方案。


五、超参数调优指南

超参推荐值说明
β0.1 ~ 0.5核心参数!太小学不到偏好,太大破坏语言质量。常用 0.3
Learning Rate1e-6 ~ 5e-6比 SFT 更小,因 DPO 更敏感
Batch Size越大越好偏好损失对 batch noise 敏感,建议 ≥ 32(可通过梯度累积)
Max Length与 SFT 一致通常 1024~2048 tokens
Weight Decay0.01防止过拟合
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:35:32

7大核心功能重构:绝区零自动化解决方案的技术突破与实践指南

7大核心功能重构&#xff1a;绝区零自动化解决方案的技术突破与实践指南 【免费下载链接】ZenlessZoneZero-OneDragon 绝区零 一条龙 | 全自动 | 自动闪避 | 自动每日 | 自动空洞 | 支持手柄 项目地址: https://gitcode.com/gh_mirrors/ze/ZenlessZoneZero-OneDragon 绝…

作者头像 李华
网站建设 2026/6/15 12:03:01

四步重塑小米AI音箱:从语音助手到全屋智能中枢的进化之路

四步重塑小米AI音箱&#xff1a;从语音助手到全屋智能中枢的进化之路 【免费下载链接】mi-gpt &#x1f3e0; 将小爱音箱接入 ChatGPT 和豆包&#xff0c;改造成你的专属语音助手。 项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt 你是否曾经对着家里的智能音…

作者头像 李华
网站建设 2026/6/15 12:04:05

简历优化大师:LobeChat让HR一眼相中你

LobeChat&#xff1a;当AI成为你的HR顾问&#xff0c;简历优化还能这么高效&#xff1f; 在求职市场竞争白热化的今天&#xff0c;一份简历从投递到进入面试环节的平均筛选时间不足10秒。HR面对海量简历&#xff0c;往往只能凭关键词和表达逻辑快速判断候选人的匹配度。而大多…

作者头像 李华
网站建设 2026/6/15 14:40:10

LobeChat能否用于生成简历模板?HR筛选友好格式输出

LobeChat能否用于生成简历模板&#xff1f;HR筛选友好格式输出 在求职市场竞争日益激烈的今天&#xff0c;一份能通过HR初筛的简历&#xff0c;往往决定了你是否有机会进入下一轮。但现实是&#xff0c;许多技术背景扎实、经验丰富的候选人&#xff0c;却因为“简历写得像岗位说…

作者头像 李华
网站建设 2026/6/15 12:08:10

Beyond Compare 5快速授权终极指南:完整解决方案

Beyond Compare 5快速授权终极指南&#xff1a;完整解决方案 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen 还在为Beyond Compare 5的授权限制而烦恼吗&#xff1f;面对功能强大的文件对比工具…

作者头像 李华
网站建设 2026/6/15 18:54:37

8、GIMP 特效制作全攻略

GIMP 特效制作全攻略 在图形处理的世界里,借助合适的工具和技巧能够创造出令人惊叹的效果。本文将详细介绍如何使用 GIMP 软件制作多种特效,让你的图形作品更加生动、逼真。 特效制作的基本思路 在开始制作特效之前,有一些基本的思路和技巧值得牢记: 1. 勇于尝试 :通…

作者头像 李华