基於人類回饋的強化學習

直接偏好最佳化(direct preference optimization, DPO)

標準的 RLHF 流程是支兩步舞:先用偏好訓練一個獎勵模型,再針對它跑強化學習。DPO 問了一個更銳利的問題——要是我們乾脆省掉中間人呢?結果是,你可以把數學重新排列,讓策略直接在偏好對上最佳化,完全不需要獨立的獎勵模型、也完全不需要強化學習迴圈:只剩一個對「被偏好勝過被拒絕」資料、形式像監督式的損失。

DPO 正是從 KL 正則化 RLHF 的那個目標出發——最大化獎勵減去對參考的 KL——並利用其最佳策略已知的封閉形式,把隱含的獎勵改用策略本身來表達。把這個代入 Bradley-Terry 偏好似然,一切就塌縮成一個簡單的損失:相對於被拒絕的回應,提高策略對被偏好回應的對數機率,兩者都對著凍結的參考來衡量。策略悄悄變成了它自己的獎勵模型。

DPO 比以 PPO 為基礎的 RLHF 簡單、穩定得多——不必訓練獎勵模型、不必展開、不必價值頭——已成為偏好微調的熱門預設。但它完全是離線的,只從一組固定的比較學習,所以無法像線上 PPO 那樣去為真正全新的高獎勵行為探索,而且它仍可能對偏好資料裡烙進的怪癖與偏差過度配適。

\mathcal{L}_{\mathrm{DPO}}=-\mathbb{E}_{(x,y_w,y_l)}\Big[\log\sigma\Big(\beta\log\tfrac{\pi_\theta(y_w\mid x)}{\pi_{\mathrm{ref}}(y_w\mid x)}-\beta\log\tfrac{\pi_\theta(y_l\mid x)}{\pi_{\mathrm{ref}}(y_l\mid x)}\Big)\Big]

直接在策略上最佳化偏好——獎勵模型消失了。

又称
DPO