【基础知识】DPO(Direct Preference Optimization)的原理以及公式是怎样的?

论文:Direct Preference Optimization: Your Language Model is Secretly a Reward Model

1.基本原理

DPO(Direct Preference Optimization)的核心思想是直接优化语言模型(LM)以符合人类偏好,而不是首先拟合一个奖励模型然后使用强化学习(RL)进行优化。这是通过对偏好学习问题进行重新参数化来实现的,其中使用了一个简单的二元交叉熵目标函数来直接从人类偏好中训练LM。下面是DPO方法的数学推导核心步骤:

1.1 基本概念

首先,假设我们有一个预训练的语言模型 π ref \pi_{\text{ref}} πref和一组人类对模型生成结果的偏好数据。我们的目标是训练一个新的策略模型 π \pi π,使其生成的输出更符合人类的偏好。

1.2 引入奖励模型

在传统的RLHF(Reinforcement Learning from Human Feedback)框架中,人类的偏好被用来训练一个奖励模型 r r r,该模型预测人类对于给定输入和输出对的偏好强度。然后,使用RL算法优化语言模型以最大化这个预测的奖励。

1.3 直接偏好优化(DPO)

DPO的关键创新是避免显式训练奖励模型,而是直接根据人类的偏好来优化语言模型。为了实现这一点,我们首先定义一个基于偏好的目标函数,直接将人类的偏好转化为模型训练的损失函数。

具体来说,如果人类偏好偏向于两个潜在输出中的一个 y 1 y_1 y1相对于 y 2 y_2 y2,我们可以使用以下的二元交叉熵损失函数来直接优化语言模型 π \pi π
L ( π ) = − ∑ ( x , y 1 , y 2 ) ∈ D [ p ( y 1 ≻ y 2 ∣ x ) log ⁡ π ( y 1 ∣ x ) + ( 1 − p ( y 1 ≻ y 2 ∣ x ) ) log ⁡ ( 1 − π ( y 1 ∣ x ) ) ] L(\pi) = - \sum_{(x, y_1, y_2) \in D} \left[ p(y_1 \succ y_2 | x) \log \pi(y_1 | x) + (1 - p(y_1 \succ y_2 | x)) \log (1 - \pi(y_1 | x)) \right] L(π)=(x,y1,y2)D[p(y1y2x)logπ(y1x)+(1p(y1y2x))log(1π(y1x))]
其中, p ( y 1 ≻ y 2 ∣ x ) p(y_1 \succ y_2 | x) p(y1y2x)表示在给定输入 x x x的情况下,人类偏好 y 1 y_1 y1胜过 y 2 y_2 y2的概率, D D D是包含输入和偏好对的数据集。

通过最小化这个损失函数,模型学习直接从人类偏好中产生更受偏好的输出,而无需间接地通过奖励模型。

1.4 实现细节

在实践中, π \pi π可以通过对预训练的语言模型进行微调来实现。微调的过程中,调整模型参数以最小化上述损失函数,使模型输出与人类偏好更加一致。

1.5 总结

DPO方法的关键在于直接利用人类偏好数据来优化语言模型,从而避免了RLHF流程中奖励模型拟合和RL优化的复杂性和不稳定性。这种方法简化了偏好学习的过程,降低了实现的复杂性,并有可能提高模型根据人类偏好生成输出的效率和准确性。


2. 详细公式

论文中的Direct Preference Optimization (DPO)公式推导涉及几个重要步骤,主要是从基于偏好的学习问题到直接优化策略的转变。以下是关键公式推导的详细步骤:

2.1 强化学习目标与KL约束

在强化学习中,常见的目标是最大化期望奖励,同时可能希望优化后的策略不要与原始策略偏离太远。这可以通过KL散度(Kullback-Leibler divergence)来约束,形成如下优化问题:

max ⁡ π E x ∼ D , y ∼ π ( ⋅ ∣ x ) [ r ( x , y ) ] − β D K L ( π ( ⋅ ∣ x ) ∣ ∣ π ref ( ⋅ ∣ x ) ) \max_{\pi} \mathbb{E}_{x \sim D, y \sim \pi(\cdot|x)} [r(x, y)] - \beta D_{KL}(\pi(\cdot|x) || \pi_{\text{ref}}(\cdot|x)) πmaxExD,yπ(x)[r(x,y)]βDKL(π(x)∣∣πref(x))

其中, r ( x , y ) r(x, y) r(x,y)是奖励函数, π ( ⋅ ∣ x ) \pi(\cdot|x) π(x)是策略, π ref ( ⋅ ∣ x ) \pi_{\text{ref}}(\cdot|x) πref(x)是参考策略(例如预训练的语言模型), β \beta β是一个权衡因子。

2.2 从奖励函数到优化策略的转变

文章提出了一种方法,通过改变变量将奖励优化问题直接转化为策略优化问题。核心思想是将奖励函数 r ( x , y ) r(x, y) r(x,y)与策略 π ( ⋅ ∣ x ) \pi(\cdot|x) π(x)之间建立一个显式的函数关系。假设存在这样的映射,使得优化后的策略 π ∗ \pi^* π可以直接从奖励函数中获得,即:

π ∗ ( y ∣ x ) = π ref ( y ∣ x ) exp ⁡ ( 1 β r ( x , y ) ) Z ( x ) \pi^*(y|x) = \frac{\pi_{\text{ref}}(y|x) \exp(\frac{1}{\beta} r(x, y))}{Z(x)} π(yx)=Z(x)πref(yx)exp(β1r(x,y))

  • π ref ( y ∣ x ) \pi_{\text{ref}}(y|x) πref(yx)代表参考策略,通常是预训练的语言模型提供的策略。
  • β \beta β是一个控制策略偏离参考策略程度的参数。
  • Z ( x ) Z(x) Z(x)是归一化常数,确保 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)为概率分布。

其中, Z ( x ) Z(x) Z(x)是归一化因子,确保 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)是一个有效的概率分布。

Z ( x ) Z(x) Z(x)具体是什么?

在DPO方法中, Z ( x ) Z(x) Z(x)是一个归一化常数,也称为配分函数(partition function)。它确保了由奖励函数 r ( x , y ) r(x, y) r(x,y)和参考策略 π ref ( y ∣ x ) \pi_{\text{ref}}(y|x) πref(yx)转换得到的最优策略 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)是一个有效的概率分布。具体来说, Z ( x ) Z(x) Z(x)的表达式为:

Z ( x ) = ∑ y π ref ( y ∣ x ) exp ⁡ ( 1 β r ( x , y ) ) Z(x) = \sum_{y} \pi_{\text{ref}}(y|x) \exp\left(\frac{1}{\beta} r(x, y)\right) Z(x)=yπref(yx)exp(β1r(x,y))

其中:

  • x x x是给定的输入(如文本、状态等)。
  • y y y遍历所有可能的输出(如文本的可能续写、动作的可能选择等)。
  • π ref ( y ∣ x ) \pi_{\text{ref}}(y|x) πref(yx)是参考策略(如预训练语言模型)在给定输入 x x x时输出 y y y的概率。
  • r ( x , y ) r(x, y) r(x,y)是对输入 x x x和输出 y y y的奖励函数,反映了这对输入输出的偏好程度或质量。
  • β \beta β是一个正则化参数,控制策略偏离参考策略的程度。
Z ( x ) Z(x) Z(x)的作用

Z ( x ) Z(x) Z(x)的作用主要有两点:

  1. 归一化:通过除以 Z ( x ) Z(x) Z(x),确保了 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)的所有可能输出 y y y的概率之和为1,满足概率分布的基本要求。
  2. 调整权重:通过与 exp ⁡ ( 1 β r ( x , y ) ) \exp\left(\frac{1}{\beta} r(x, y)\right) exp(β1r(x,y))的乘积形式,将奖励函数 r ( x , y ) r(x, y) r(x,y)转换为概率的权重,再通过归一化调整这些权重,使得高奖励的输出在新的策略 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)中获得更高的概率。
Z ( x ) Z(x) Z(x)的物理意义

在物理学中,配分函数在统计力学中扮演核心角色,用于描述系统在不同状态下的概率分布。在机器学习和特别是强化学习中,配分函数的概念被借鉴来确保策略或概率模型的归一化,并在某种程度上反映了系统状态的“能量”分布。

通过这样的转换和归一化过程,DPO方法能够将奖励函数直接映射到策略优化上,有效地利用人类的偏好数据来指导模型的训练,无需经过复杂的奖励模型学习和强化学习优化步骤。

这一转变的关键

这一步的关键在于将奖励函数 r ( x , y ) r(x, y) r(x,y)与策略 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx)之间建立直接的关系,从而可以直接对策略进行优化。DPO方法利用偏好数据和一个简单的分类损失函数来优化策略 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx),而不是通过估计奖励函数和随后的RL过程。

这种转变的优势在于:

  • 简化了学习流程:避免了学习一个中间的奖励模型和使用复杂的强化学习算法。
  • 效率和稳定性:直接优化策略更高效,避免了RL中的不稳定性和收敛问题。
  • 理论上的优雅:提供了从人类偏好直接提取策略的理论依据,使得这一过程更加直接和理论上可解释。

通过这种方法,DPO能够在不牺牲性能的情况下,简化偏好学习的流程,提高学习效率和稳定性。

2.3 直接优化策略

在确定了 π ∗ ( y ∣ x ) \pi^*(y|x) π(yx) r ( x , y ) r(x, y) r(x,y)之间的关系后,可以直接通过最大化偏好数据上的似然来优化策略,而不需要显式地拟合一个奖励函数。具体地,给定人类偏好数据 D = { ( x i , y i , 1 , y i , 2 ) } i D = \{(x_i, y_{i,1}, y_{i,2})\}_i D={(xi,yi,1,yi,2)}i,其中 y i , 1 y_{i,1} yi,1是偏好于 y i , 2 y_{i,2} yi,2的回答,我们可以最大化如下目标:

max ⁡ π ∑ i log ⁡ σ ( 1 β log ⁡ π ( y i , 1 ∣ x i ) π ( y i , 2 ∣ x i ) ) \max_{\pi} \sum_i \log \sigma \left( \frac{1}{\beta} \log \frac{\pi(y_{i,1}|x_i)}{\pi(y_{i,2}|x_i)} \right) πmaxilogσ(β1logπ(yi,2xi)π(yi,1xi))

这里, σ ( ⋅ ) \sigma(\cdot) σ()是逻辑Sigmoid函数,该目标直接优化策略 π \pi π以便在给定偏好数据上表现更好。

结论

通过这样的推导,DPO方法能够绕过显式的奖励模型学习和复杂的强化学习过程,直接通过简单的分类损失来优化语言模型的策略,使其更好地符合人类的偏好。这种方法不仅简化了偏好学习的流程,还在实验中显示出与现有方法相当或更优的性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/738726.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】调试工具 - gdb

目录 一、gdb概述: 二、list(查看源文件代码): 三、run(运行程序): ​四、断点相关操作: 1、查看断点: 2、在指定行设置断点: 3、在函数入口处设置断…

[计算机效率] 便笺的使用

2.4 便笺 便笺程序是一种方便用户记录、查看和编辑便签的简单应用程序。在Windows系统中,便笺通常作为系统自带的实用工具之一,可以帮助用户快速创建、编辑和组织便签,以便随时记录重要的信息、任务或提醒事项。 便笺程序通常具有以下特点&a…

阿里云企业2核4G5M服务器ECS u1性能测评

阿里云服务器ECS u1实例,2核4G,5M固定带宽,80G ESSD Entry盘优惠价格199元一年,性能很不错,CPU采用Intel Xeon Platinum可扩展处理器,购买限制条件为企业客户专享,实名认证信息是企业用户即可&a…

Metasploit(MSF)使用教程(以ms17_010永恒之蓝为例)

一.Metasploit简介: Metasploit就是一个漏洞框架。它的全称叫做The Metasploit Framework,简称MSF。是一个免费、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数2000多个已知软件漏洞的专业级漏洞攻击工…

如何运用惟客数据CDP客户数据平台构建好用户画像?

​惟客数据CDP是一个企业级客户数据资产平台,能够跨平台整合全域客户数据,统一客户身份,实时全景客户画像,基于大数据计算和挖分析提供深度客户洞察,实现精细化运营和精准营销。部署更轻更快,快速实现企业数…

API接口数据集接口pytorch api接口获取数据

API是应用程序的开发接口,在开发程序的时候,我们有些功能可能不需要从到到位去研发,我们可以拿现有的开发出来的功能模块来使用,而这个功能模块,就叫做库(libary)。比如说:要实现数据传输的安全&#xff0c…

10分钟读懂Diffusion:图解Diffusion扩散模型

数据派THU 本文通过图解的方式让大家快速了解 Diffusion 原理。 [ 导读 ]想必大家都听说过——图像领域大火的深度生成模型Diffusion Model,为了让大家快速了解 Diffusion 原理,这篇文章我们通过图解的方式。希望对你有所帮助,让你在学习和应…

3D Gaussian Splatting for Real-Time Radiance Field Rendering(慢慢啃,还是挺复杂的)

三个关键要素 从相机配准的过程中得到的稀疏点云开始,使用3D Gaussian表示场景; 3D Gaussian: 是连续体积辐射场能够防止不必要的空空间优化。对 3D Gaussion进行交叉优化和密度控制: 优化各向异性血方差对场景精确表示。使用快速可视感知渲染算法来进行快速的训练…

CVE-2024-27199 JetBrains TeamCity 身份验证绕过漏洞2

漏洞简介 TeamCity Web 服务器中发现了第二个身份验证绕过漏洞。这种身份验证旁路允许在没有身份验证的情况下访问有限数量的经过身份验证的端点。未经身份验证的攻击者可以利用此漏洞修改服务器上有限数量的系统设置,并泄露服务器上有限数量的敏感信息。 项目官网…

ORACLE PDB如何配置自启动

有两种方式实现完成,其中 oracle12.1只能使用触发器 oracle12.2可用ALTER pluggable DATABASE ALL save state; 高版本建议优先使用第二种模式 一、触发器模式 CREATE TRIGGER open_all_pdbsAFTER STARTUP ON DATABASE BEGINEXECUTE IMMEDIATE alter pluggable dat…

当HR问你:“什么事会让你有成就感”你该怎么回答?【文章底部添加进大学生就业交流群】

当HR问你“什么事会让你有成就感”时,你可以通过以下方式回答: 强调目标实现: 表达你在达成挑战性目标时感到的满足感。举例说明你在过去的工作或项目中如何设定并成功实现了目标。 强调对团队成功的贡献: 谈论你与团队合作取得成…

Caffeine--实现进程缓存

本地进程缓存特点 缓存在日常开发中起着至关重要的作用, 由于存储在内存中, 数据的读取速度非常快,能大量减少对数据库的访问,减少数据库的压力. 缓存分为两类: 分布式缓存, 例如Redis: 优点: 存储容量大, 可靠性更好, 可以在集群间共享缺点: 访问缓存存在网络开销场景: 缓存数…

c++: 引用能否替代指针? 详解引用与指针的区别.

文章目录 前言1. 引用和指针的最大区别:引用不能改变指向2. 引用和指针在底层上面是一样的3. 引用和指针在sizeof面前大小不同4. 有多级指针,没有多级引用5.引用是引用的实体,指针会向后偏移同一个类型的大小 总结 前言 新来的小伙伴如果不知道引用是什么?可以看我的上一篇文…

Python实战:Python中的数字与字符串:选择合适的类型

在Python编程中,数字和字符串是两种基本的数据类型,但它们在用途和特性上有所不同。本文将深入探讨Python中的数字(整数、浮点数、复数)和字符串,包括它们的定义、特点、使用场景以及如何选择合适的数据类型。我们将通…

el-table-column嵌套el-form-item不能进行校验问题解决

项目为vue3elementPlus开发的项目 业务要求:table表格展示数据,其中有一行是ip地址可展示可修改,此处要求增加自定义校验规则 先看一下效果: 此处先描述一下,问题出在了哪里,我将el-table的data,使用一个…

Java程序员常用网站(推荐)

文章目录 一、下载网站1 Jdk下载2 清华大学开源软件镜像站2.1 Mysql下载 3 常见工具3.1 typora markdown文档编辑器3.2 Apifox 软件测试工具3.3 GIT3.4 Maven3.5 PDF转word3.6 office3.7 xmind 思维导图3.8 draw.io 画图 4 Java 技术书籍大全 PDF5 Java 8 编程思想中文版6 GitH…

日常004:对文件、目录拥有rwx权限后可以做什么?

日常004:对文件、目录拥有rwx权限后可以做什么? ‍ 1.rwx权限针对文件的内容,而非文件本身。 2.文件夹是特殊的文件,它的内容就是ls -a​的所有文件和文件夹 r 读取目录w 添加、删除、重命名文件x 进入目录 ‍ 删除文件使用的是所…

connection SQLException, url:jdbc ,errorCode 0, state 08S01

connection SQLException, url: jdbc:mysql://localhost:3306/itcast_health?useUnicodetrue&characterEncodingutf-8, errorCode 0, state 08S01 添加:&useSSLfalse 添加前 添加后: 查询数据库正常

7.5寸WIFI电子桌牌 PW75R_DM

产品型号 PW75R_DM 尺寸(mm) 190*152*45mm 显示技术 电子墨水屏双面显示 显示区域(mm) 163.2(H) * 97.92(V) 分辨率(像素) 800*480 外观颜色 银灰色 显示颜色 黑/白/红 视觉角度 180 工作温度 0 - 40℃ 电池容量 2000mAh 供电方式 锂电池供电(…

张驰咨询 - 推动新质生产力,新材料行业定制管理咨询解决方案

在这个快速变革的时代,张驰咨询携手各行业领军企业,共同打造新质生产力的未来。我们深入理解每个行业的发展现状及特点,洞察企业面临的痛点,用精准咨询方案,为新能源汽车、光伏产业、机器人、高端装备以及新材料和电子…