全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

为了将大型语言模型(LLM)与人类的价值和意图对齐,学习人类反馈至关重要,这能确保它们是有用的、诚实的和无害的。在对齐 LLM 方面,一种有效的方法是根据人类反馈的强化学习(RLHF)。尽管经典 RLHF 方法的结果很出色,但其多阶段的过程依然带来了一些优化难题,其中涉及到训练一个嘉奖模型,然后优化一个方略模型来最大化该嘉奖。近段时间已有一些研究者探索了更容易的离线算法,其中之一便是直接偏好优化(DPO)。DPO 是通过参数化 RLHF 中的嘉奖函数来直接根据偏好数据学习方略模型,这样就无需显式的嘉奖模型了。该方法

为了将大型语言模型(LLM)与人类的价值和意图对齐,学习人类反馈至关重要,这能确保它们是有用的、诚实的和无害的。在对齐 LLM 方面,一种有效的方法是根据人类反馈的强化学习(RLHF)。尽管经典 RLHF 方法的结果很出色,但其多阶段的过程依然带来了一些优化难题,其中涉及到训练一个嘉奖模型,然后优化一个方略模型来最大化该嘉奖。

近段时间已有一些研究者探索了更容易的离线算法,其中之一便是直接偏好优化(DPO)。DPO 是通过参数化 RLHF 中的嘉奖函数来直接根据偏好数据学习方略模型,这样就无需显式的嘉奖模型了。该方法容易稳定,已经被广泛用于实践。

利用 DPO 时,得到隐式嘉奖的方式是利用当前方略模型和监督式微调(SFT)模型之间的推戴似然比的对数 的对数比。但是,这种建立嘉奖的方式并未与引导生成的指标直接对齐,该指标大约是方略模型所生成推戴的平均对数似然。训练和推理之间的这种分别可能导致性能不佳。

为此,弗吉尼亚大学的助理教授孟瑜与普林斯顿大学的在读博士夏梦舟和助理教授陈丹琦三人共同提出了 SimPO—— 一种容易却有效的离线偏好优化算法。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

论文标题:SimPO: Simple Preference Optimization with a Reference-Free Reward

论文地址:https://arxiv.org/pdf/2405.14734

代码 & 模型:https://github.com/princeton-nlp/SimPO

该算法的核心是将偏好优化指标中的嘉奖函数与生成指标对齐。SimPO 包含两个主要组件:(1)在长度上归一化的嘉奖,其计算方式是利用方略模型的嘉奖中所有 token 的平均对数概率;(2)指标嘉奖差额,用以确保获胜和失败推戴之间的嘉奖差超过这个差额。

总结起来,SimPO 具有以下特点:

容易:SimPO 不需要参考模型,因此比 DPO 等其它依赖参考模型的方法更轻量更容易实现。

性能优势明显:尽管 SimPO 很容易,但其性能却明显优于 DPO 及其最新变体(比如近期的无参考式指标 ORPO)。如图 1 所示。并且在不同的训练树立和多种指令遵从基准(包括 AlpacaEval 2 和高难度的 Arena-Hard 基准)上,SimPO 都有稳定的优势。

尽量小的长度利用:相比于 SFT 或 DPO 模型,SimPO 不会显著增加推戴长度(见表 1),这说明其长度利用是最小的。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

该团队进行了大量分析,结果表明 SimPO 能更有效地利用偏好数据,从而在验证集上对高质量和低质量推戴的似然进行更准确的排序,这进一步能造就更好的方略模型。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

如表 1 所示,该团队基于 Llama3-8B-instruct 建立了一个具有顶尖性能的模型,其在 AlpacaEval 2 上得到的长度受控式胜率为 44.7,在排行榜上超过了 Claude 3 Opus;另外其在 Arena-Hard 上的胜率为 33.8,使其成为了目前最强大的 8B 开源模型。

SimPO:容易偏好优化

为便于理解,下面首先介绍 DPO 的背景,然后说明 DPO 的嘉奖与生成所用的似然度量之间的分别,并提出一种无参考的替代嘉奖公式来缓解这一问题。最后,通过将指标嘉奖差额项整合进 Bradley-Terry 模型中,推导出 SimPO 指标。 

背景:直接偏好优化(DPO)

DPO 是最常用的离线偏好优化方法之一。DPO 并不会学习一个显式的嘉奖模型,而是利用一个带最优方略的闭式表达式来对嘉奖函数 r 进行重新参数化:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

其中 π_θ 是方略模型,π_ref 是参考方略(通常是 SFT 模型),Z (x) 是配分函数。通过将这种嘉奖建立方式整合进 Bradley-Terry (BT) 排名指标,全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型,DPO 可利用方略模型而非嘉奖模型来表示偏好数据的概率,从而得到以下指标:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

其中 (x, y_w, y_l) 是由来自偏好数据集 D 的 prompt、获胜推戴和失败推戴构成的偏好对。

一种与生成结果对齐的容易无参考嘉奖

DPO 的嘉奖与生成之间的分别。利用 (1) 式作为隐式的嘉奖表达式有以下缺点:(1) 训练阶段需要参考模型 π_ref,这会带来额外的内存和计算成本;(2) 训练阶段优化的嘉奖与推理所用的生成指标之间存在分别。具体来说,在生成阶段,会利用方略模型 π_θ 生成一个能近似最大化平均对数似然的序列,定义如下:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

在解码过程中直接最大化该指标是非常困难的,为此可以利用多种解码方略,如贪婪解码、波束搜索、核采样和 top-k 采样。此外,该指标通常用于在语言模型执行多选任务时对选项进行排名。在 DPO 中,对于任意三元组 (x, y_w, y_l),满足嘉奖排名 r (x, y_w) > r (x, y_l) 并不一定意味着满足似然排名全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型。事实上,在利用 DPO 训练时,留存集中大约只有 50% 的三元组满足这个条件(见图 4b)。

建立在长度上归一化的嘉奖。很自然地,我们会考虑利用 (3) 式中的 p_θ 来替换 DPO 中的嘉奖建立,使其与引导生成的似然指标对齐。这会得到一个在长度上归一化的嘉奖:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

其中 β 是控制嘉奖分别大小的常量。该团队发现,根据推戴长度对嘉奖进行归一化非常关键;从嘉奖公式中移除长度归一化项会导致模型倾向于生成更长但质量更低的序列。这样一来,建立的嘉奖中就无需参考模型了,从而实现比依赖参考模型的算法更高的内存和计算效率。

SimPO 指标

指标嘉奖差额。另外,该团队还为 Bradley-Terry 指标引入了一个指标嘉奖差额项 γ > 0,以确保获胜推戴的嘉奖 r (x, y_w) 超过失败推戴的嘉奖 r (x, y_l) 至少 γ:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

两个类之间的差额已知会影响分类器的泛化能力。在利用随机模型初始化的标准训练树立中,增加指标差额通常能提升泛化性能。在偏好优化中,这两个类别是单个输入的获胜或失败推戴。

在实践中,该团队观察到随着指标差额增大,生成质量一开始会提升,但当这个差额变得过大时,生成质量就会下降。DPO 的一种变体 IPO 也建立了与 SimPO 类似的指标嘉奖差额,但其整体指标的效果不及 SimPO。

指标。最后,通过将 (4) 式代入到 (5) 式中,可以得到 SimPO 指标:

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

总结起来,SimPO 采用了与生成指标直接对齐的隐式嘉奖形式,从而消除了对参考模型的需求。此外,其还引入了一个指标嘉奖差额 γ 来分离获胜和失败推戴。

实验树立

模型和训练树立。该团队的实验利用了 Base 和 Instruct 两种树立下的两类模型 Llama3-8B 和 Mistral-7B。

评估基准。该团队利用了三个最常用的开放式指令遵从基准:MT-Bench、AlpacaEval 2 和 Arena-Hard v0.1。这些基准可评估模型在各种查询上的多样化对话能力,并已被社区广泛采用。表 2 给出了一些细节。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

基线方法。表 3 列出了与 SimPO 做对比的其它离线偏好优化方法。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

实验结果

主要结果与消融研究

SimPO 的表现总是显著优于之前已有的偏好优化方法。如表 4 所示,尽管所有的偏好优化算法的表现都优于 SFT 模型,但容易的 SimPO 却在所有基准和树立上都取得了最佳表现。这样全面的大幅领先彰显了 SimPO 的稳健性和有效性。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

基准质量各不相同。可以观察到,在 Arena-Hard 上的胜率明显低于在 AlpacaEval 2 上胜率,这说明 Arena-Hard 是更困难的基准。

Instruct 树立会带来显著的性能增益。可以看到,Instruct 树立在所有基准上都全面优于 Base 树立。这可能是因为这些模型利用了更高质量的 SFT 模型来进行初始化以及这些模型生成的偏好数据的质量更高。

SimPO 的两种关键设计都很重要。表 5 展示了对 SimPO 的每种关键设计进行消融实验的结果。(1) 移除 (4) 式中的长度归一化(即 w/o LN);(2) 将 (6) 式中的指标嘉奖差额树立为 0(即 γ = 0)。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

移除长度归一化对结果的影响最大。该团队研究发现,这会导致模型生成长且重复的模式,由此严重拉低输出的整体质量。将 γ 设为 0 也会导致 SimPO 的性能下降,这说明 0 并非最优的指标嘉奖差额。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

有关这两项设计选择的更深度分析请参阅原论文。

深度对比 DPO 与 SimPO

最后,该团队还从四个角度全面比较了 DPO 与 SimPO:(1) 似然 – 长度相关性、(2) 嘉奖建立、(3) 嘉奖准确度、(4) 算法效率。结果表明 SimPO 在准确度和效率方面优于 DPO。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

DPO 嘉奖会隐式地促进长度归一化。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

尽管 DPO 嘉奖表达式 全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型(不包含配分函数)缺乏一个用于长度归一化的显式项,但方略模型和参考模型之间的对数比可以隐式地抵消长度偏见。如表 6 与图 4a 所示,相比于没有任何长度归一化的方法(记为 SimPO w/o LN),利用 DPO 会降低平均对数似然和推戴长度之间的斯皮尔曼相关系数。但是,当与 SimPO 比较时,其仍然表现出更强的正相关性。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

DPO 嘉奖与生成似然不匹配。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

DPO 的嘉奖与平均对数似然指标之间存在分别,这会直接影响生成。如图 4b 所示,在 UltraFeedback 训练集上的实例中,其中 全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型,几乎一半的数据对都有全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型。相较之下,SimPO 是直接将平均对数似然(由 β 缩放)用作嘉奖表达式,由此完全消除了其中的分别。

DPO 在嘉奖准确度方面不及 SimPO。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

图 4c 比较了 SimPO 和 DPO 的嘉奖准确度,这评估的是它们最终学习到的嘉奖与留存集上的偏好标签的对齐程度。可以观察到,SimPO 的嘉奖准确度高于 DPO,这说明 SimPO 的嘉奖设计有助于实现更有效的泛化和更高质量的生成。

SimPO 的内存效率和计算效率都比 DPO 高。

全面超越DPO:陈丹琦团队提出容易偏好优化SimPO,还炼出最强8B开源模型

SimPO 的另一大优势是效率,毕竟它不利用参考模型。图 4d 给出了在 8×H100 GPU 上利用 Llama3-Base 树立时,SimPO 和 DPO 的整体运行时间和每台 GPU 的峰值内存利用量。相比于原版 DPO 实现,得益于消除了利用参考模型的前向通过,SimPO 可将运行时间降低约 20%,将 GPU 内存利用量降低约 10%。

 更多详细内容,请阅读原文。

给TA打赏
共{{data.count}}人
人已打赏
工程

ICML 2024 | 脱离LoRA架构,训练参数大幅减少,新型傅立叶微调来了

2024-5-27 15:21:00

工程

不影响输入品质还能追踪溯源,「大模型无偏水印」入选ICLR 2024 Spotlight

2024-5-28 14:57:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索