論文標題:Direct Preference Optimization: Your Language Model is Secretly a Reward Model
論文鏈接:https://arxiv.org/abs/2305.18290
論文來源:NeurIPS 2023
一凭戴、概述
為了能夠?qū)⒄Z言模型的行為與人類偏好對齊卸例,現(xiàn)有的方法使用精心設計的人類偏好數(shù)據(jù)集集傲绣,將期望的行為灌輸?shù)秸Z言模型中,這些偏好數(shù)據(jù)集代表了人類認為安全和有益的行為類型。目前的大模型偏好對齊主要依賴于基于人類反饋的強化學習技術(shù)(Reinforcement Learning from Human Feedback, RLHF)碾盟,RLHF方法利用獎勵模型(Reward Model)擬合人類偏好數(shù)據(jù)集,然后使用強化學習技術(shù)優(yōu)化語言模型策略(policy),以使其能夠產(chǎn)生高獎勵的響應徘禁,且不會偏離原始模型太遠。雖然RLHF訓練的模型具有令人印象深刻的對話和編碼能力存皂,但RLHF pipeline比監(jiān)督學習要復雜得多晌坤,涉及在訓練循環(huán)中訓練多個語言模型并從語言模型策略中采樣逢艘,這會造成巨大的計算成本。
本文研究驗證了現(xiàn)有方法使用的基于強化學習的目標可以用一個簡單的二元交叉熵目標來直接優(yōu)化骤菠,無需獎勵模型與強化學習它改,由此簡化了偏好學習的pipeline。本文提出直接偏好優(yōu)化(Direct Preference Optimization, DPO)技術(shù)商乎,能夠隱式地優(yōu)化與現(xiàn)有RLHF算法相同的目標(即在一個KL散度約束下最大化獎勵)央拖,且很容易實現(xiàn)和能夠直接訓練。DPO更新過程會增大偏好響應相較于不偏好響應的log概率鹉戚,同時其包含一個動態(tài)的鲜戒、每個樣本上的重要性權(quán)重,以避免模型退化(這種退化在使用樸素的概率比值目標時會發(fā)生)抹凳。
與現(xiàn)有的方法類似遏餐,DPO依賴于一種理論偏好模型(比如Bradley-Terry模型),這一類模型度量一個給定的獎勵函數(shù)(Reward Function)對齊經(jīng)驗偏好數(shù)據(jù)的好壞程度赢底。不同的是失都,DPO并沒有采用訓練獎勵模型以及強化學習的方式,而是利用一種獎勵模型的重參數(shù)化技巧幸冻,使得能夠閉式地(in close form)獲取最優(yōu)的策略模型粹庞。給定模型響應的人類偏好數(shù)據(jù)集,DPO可以使用簡單的二元交叉熵目標來優(yōu)化策略洽损,得到適合偏好數(shù)據(jù)的隱式獎勵函數(shù)的最優(yōu)策略庞溜。
二、前提
RLHF pipeline通常包含三個階段:1)監(jiān)督微調(diào)(Supervised Fine-Tuning, SFT)碑定;2)偏好采樣和獎勵學習流码;3)強化學習優(yōu)化。
- SFT階段
RLHF通常從在一個預訓練語言模型上利用下游任務(如對話不傅、總結(jié)等)的高質(zhì)量演示數(shù)據(jù)監(jiān)督微調(diào)開始旅掂,來獲得一個模型。
- 獎勵建模階段
在第二階段访娶,利用prompt來使得SFT模型產(chǎn)生成對的響應
商虐。這些響應接著將由人類標注更加偏好哪一個,標注為
崖疤,這里的
和
分別表示
偏好的和不偏好的補全∶爻担現(xiàn)在假設這些偏好符合某個隱式獎勵模型
,也就是我們無法直接訪問的獎勵函數(shù)的真實分布劫哼。
通常有一些可用于建模偏好的模型叮趴,例如Bradley-Terry (BT)模型(如果我們有幾個排名的答案的話,可以采用更一般的Plackett-Luce排名模型)权烧。BT模型的基本思想是眯亦,通過對各個對象進行配對比較伤溉,可以估計出每個對象的“實力”或“能力”,從而計算出在任意一對對象之間進行比較時妻率,某個對象獲勝的概率乱顾。具體來說,假設有個對象(例如運動員宫静、產(chǎn)品等)走净,我們用
表示對象
的實力參數(shù)。對于兩個對象
和
孤里,對象
在比較中獲勝的概率
可以表示為:
其中伏伯,和
都是正的實力參數(shù)。BT模型廣泛應用于競技體育排名捌袜、音樂和藝術(shù)競賽说搅、市場研究中的產(chǎn)品比較等領(lǐng)域。通過配對比較虏等,Bradley-Terry模型能夠提供一個相對簡單但有效的框架來比較多個對象的相對實力或偏好蜓堕。
在偏好對齊的場景下,BT模型可將真實的人類偏好分布建模為:
真實的獎勵函數(shù)與真實的偏好分布
都是不可訪問的博其,不過我們可以通過人類標注的方式獲得從
中采樣的人類偏好數(shù)據(jù)集
,然后利用這個數(shù)據(jù)集即可參數(shù)化一個獎勵模型
迂猴,并根據(jù)極大似然估計來估計其參數(shù)慕淡。將這個問題作為一個二分類問題的話,我們便有了RLHF中建模獎勵函數(shù)的負對數(shù)似然損失:
其中為Logistic函數(shù)沸毁。在語言模型的場景下峰髓,獎勵函數(shù)
通常從SFT模型
初始化而來,在其最后一個transformer層的頂部添加一個線性層息尺,使其輸出一個標量預測值作為獎勵值携兵。為了確保這個獎勵函數(shù)具有低方差,現(xiàn)有方法通常會標準化獎勵值搂誉,即
徐紧。
- 強化學習微調(diào)階段
在強化學習階段,我們使用前一階段學習到的獎勵函數(shù)來為語言模型提供反饋炭懊,通常強化學習階段相當于以下優(yōu)化問題:
這里的是一個超參數(shù)并级,用于控制偏離基礎參考策略(reference policy)
的程度,
也就是初始的SFT模型
侮腹,在優(yōu)化過程中其參數(shù)是固定的嘲碧。
為實際優(yōu)化的策略模型,通常策略模型也由
初始化而來父阻。上式的KL散度約束是很重要的愈涩,因為獎勵模型
是在SFT模型
的輸出分布上訓練得到的望抽,因此只有在這個分布上獎勵模型的預測值才是準確的,這個KL散度約束防止了策略模型的輸出分布偏離
的輸出分布履婉,同時也保持了生成內(nèi)容的多樣性并且防止模式坍塌到單一的高獎勵答案煤篙。
由于語言生成的離散性,上面的目標是不可微的谐鼎,因此通常使用強化學習來優(yōu)化這個目標舰蟆。標準的方法將獎勵函數(shù)構(gòu)造成,然后使用PPO來最大化這個獎勵函數(shù)狸棍。RLHF的詳細流程可參考生成式大模型的RLHF技術(shù)(一):基礎身害。
三、方法
本文的目標是推導出一種直接使用偏好的策略優(yōu)化方法草戈,不像之前的RLHF方法需要學習一個獎勵模型然后利用強化學習來優(yōu)化策略模型塌鸯,本文的方法利用一種特殊的獎勵模型參數(shù)化,使得能夠閉式地獲取最優(yōu)的策略模型唐片,而不需要一個強化學習的訓練過程丙猬。DPO利用從獎勵函數(shù)到最優(yōu)策略的解析映射推導,使得我們能夠?qū)ⅹ剟詈瘮?shù)上的損失轉(zhuǎn)換為策略模型上的損失费韭。這種變量改變方法避免了擬合一個顯式的茧球、獨立的獎勵模型,同時仍然在現(xiàn)有的人類偏好模型下(即BT模型)進行優(yōu)化星持。本質(zhì)上抢埋,策略模型同時代表了語言模型和(隱式的)獎勵模型。
- DPO目標的推導
對于前面的KL散度約束的獎勵最大化目標公式(4)督暂,其在一般的獎勵函數(shù)下的最優(yōu)解
為:
這里的揪垄,詳細推導請參看本文最后一個章節(jié)的第1小節(jié)。對于
而言逻翁,其中的
我們可以通過ground-truth獎勵函數(shù)
的極大似然估計
來得到饥努,但配分函數(shù)
的估計仍然是unfeasible的。這是因為
和
作為語言模型的輸入輸出文本八回,其狀態(tài)空間非常地廣闊酷愧。因此這個最優(yōu)解的表示在實踐中是很難計算的。不過我們可以重新排列公式(5)來用最優(yōu)策略
辽社、參考策略
以及未知的配分函數(shù)
來重參數(shù)化獎勵函數(shù)
:
公式(6)中的重參數(shù)化設計可以應用到ground-truth獎勵和對應的最優(yōu)策略模型
上伟墙。幸運的是,BT模型只依賴于兩個補全的獎勵的差值
滴铅,詳細推導請參看本文最后一個章節(jié)的第2小節(jié)戳葵。用
和
替換公式(6)中的
和
,然后將
代入BT模型汉匙,即可使用最優(yōu)策略模型
和參考模型
來表示人類偏好概率拱烁,也就是說BT模型下的最優(yōu)的RLHF策略模型
滿足以下偏好模型:
現(xiàn)在我們有了以最優(yōu)策略模型表示(而非以獎勵模型表示)的人類偏好概率生蚁,因此我們就可以使用一個面向一個參數(shù)化策略模型的極大似然目標。類似于公式(3)中的獎勵建模過程戏自,我們的策略目標函數(shù)變?yōu)榱耍?/p>
于是邦投,我們現(xiàn)在利用一個替代參數(shù)化來擬合隱式獎勵,其最佳策略為優(yōu)化后的擅笔。此外志衣,由于該過程等價于擬合一個重新參數(shù)化的BT模型,因此該過程具有一定的理論性質(zhì)猛们,比如在適當?shù)钠脭?shù)據(jù)分布假設下的一致性念脯。
- DPO更新做了什么?
為了更好地理解DPO,我們可以分析一下DPO損失函數(shù)的梯度弯淘,其在參數(shù)
上的梯度可以寫作:
這里的是由語言模型
和參考模型
隱式定義的獎勵绿店。直觀來看,損失函數(shù)
的梯度增加了偏好補全
的似然庐橙,并降低了不偏好補全
的似然假勿。需要注意的是,這些樣本的權(quán)重取決于隱式獎勵模型
對不偏好的補全進行評分的高低程度态鳖,縮放因子為
转培,即隱式獎勵模型對這些補全排序的錯誤程度,同時考慮到KL散度約束的強度浆竭。本文的實驗表明了這種加權(quán)的重要性堡距,因為這種方法的樸素版本如果沒有加權(quán)系數(shù),可能會導致語言模型退化兆蕉。
- DPO pipeline
DPO的整體pipeline為:
①對每個prompt采樣補全
,并由人類標注以獲得離線偏好數(shù)據(jù)集
缤沦;
②對于給定的虎韵、
和
,優(yōu)化
來最小化
缸废。
在DPO方法中包蓝,由于偏好數(shù)據(jù)集是從采樣而來划鸽,因此我們設置
霉翔。在實踐中鸠踪,人們可能會希望直接使用公開可用的偏好數(shù)據(jù)集乘客,而不是自己生成樣本并收集人類的偏好函喉。在這種情況下
是不可訪問的锁保,因此我們通過最大化偏好補全
的似然來初始化
禁偎,即
杀怠。這一設置有助于緩解DPO在不可用的真實參考分布和
之間的分布偏移恕汇。
推導
本節(jié)補充一些前文省略的公式推導過程腕唧。
- 推導KL散度約束的獎勵最大化目標的最優(yōu)解
首先對于前面的公式(4)或辖,其在任意獎勵函數(shù)和一般的非參數(shù)化策略類
下的一般形式為:
在該式基礎上,有以下推導過程:
這里的為配分函數(shù):
注意這里的只與
和參考策略
有關(guān)枣接,不依賴于策略
∷滔荆現(xiàn)在我們可以定義:
這里的滿足
且
,因此實際上我們是定義了一個有效的概率分布
但惶。由于
不是
的函數(shù)耳鸯,我們可以重新組織一下公式(11),繼續(xù)以下推導過程:
現(xiàn)在膀曾,由于并不依賴于
县爬,因此上述目標的最小值將會在第一個KL散度項最小時達成。由吉布斯不等式可知妓肢,當且僅當兩個概率分布完全相同時KL散度達到最小值0捌省。因此我們所求的
的最優(yōu)解即為
:
- BT模型下DPO目標推導
對于公式(2)中展示的BT模型對人類偏好的建模,可以做以下轉(zhuǎn)換:
這里的為sigmoid函數(shù)碉钠。根據(jù)公式(6)可知我們可以將不可訪問的ground truth獎勵函數(shù)
用最優(yōu)的策略
來表示:
將公式(15)代入公式(14)即可得:
這個概率即是公式(8)中所采用的單實例損失纲缓。