生活分享

直接偏好最佳化(DPO):用回答比較直接調整模型

直接偏好最佳化利用同一問題下的較佳與較差回答,直接調整模型對回答的相對偏好。本文依原始論文和 TRL 文件說明參考模型、偏好配對及訓練目標,以產品說明摘要示範資料如何影響結果,也區分 DPO、SFT 與典型 RLHF。讀完能理解它省略了哪些訓練環節,以及為什麼流程較簡單仍不能跳過資料品質、評估和能力退化檢查。

更新日期: 閱讀時間約 7 分鐘

同一問題的偏好答案與非偏好答案直接送入訓練模型,旁邊另有參考模型作為約束
圖片:Mokaair (© Mokaair)

直接偏好最佳化,英文 Direct Preference Optimization,簡稱 DPO,是利用偏好配對資料直接訓練語言模型的方法。每個樣本通常包含一個問題,以及在同一問題下較被偏好和較不被偏好的回答。它讓模型學習兩者的相對差異,而不只是模仿一份單獨的標準答案。這個名稱指一種訓練方法,不是使用者按一下喜歡就會即時更新的功能。

原始 DPO 論文從帶參考策略限制的偏好學習目標推導出直接最佳化方式,省去典型流程中獨立訓練獎勵模型、再用它做強化學習的環節。本篇聚焦這個基本方法,搭配 TRL 官方實作說明,不把函式庫內所有後續變體都稱為原始 DPO。以下用虛構產品說明摘要示範,並非實際訓練結果。

資料長什麼樣子

假設提示詞要求「根據這份說明摘要可用功能,沒有寫的不要猜」。候選甲簡潔但省略限制,候選乙完整保留條件;標註者依準則把乙列為較佳,把甲列為較差。DPO 使用的是這種比較資料。較佳不代表完美,較差也不一定句句錯誤,所以資料審核仍要知道偏好理由,而不是只儲存兩個欄位名稱。

兩份回答必須對應同一問題與相同背景。若甲看到舊版說明,乙看到新版,標註差異可能來自輸入不同,而不是回答行為好壞。把這樣的配對拿來訓練,會讓模型收到難以解釋的訊號。資料整理時要固定問題、背景與評分準則,保留來源版本,並檢查截斷是否讓其中一份回答失去關鍵內容。

直接最佳化的是相對關係

可以把 DPO 的核心理解為:相對參考模型,調整目前模型對較佳回答與較差回答的偏好關係。參考模型提供比較基準,避免把訓練看成無限制提高某段文字機率。實際目標使用回答的序列機率與偏好,並含控制偏離程度的;它不是「好答案加分、壞答案刪除」這麼簡單的文字操作。

本篇不把參數值寫成通用配方,因為資料、模型和實作會影響行為。TRL 文件明示參考模型的使用,也提供不同損失設定與變體。讀程式範例時要確認正在使用哪個目標,不應因類別名稱仍叫 DPOTrainer,就把所有選項的理論保證視為相同。具體訓練設定需要配合留出的測試集觀察。

同一產品說明形成保留限制和省略限制的兩份回答,偏好配對與參考模型共同參與 DPO 更新,再以新說明評估
參考模型是訓練基準,較佳標記來自事先定義的準則。 · 圖片:Mokaair (© Mokaair)

示範:保留產品限制

假設虛構說明寫「可離線編輯既有文件;首次下載與同步需要連線」。輸入要求簡短摘要,候選甲寫「所有功能都可離線使用」,候選乙寫「既有文件可離線編輯,下載與同步仍需連線」。按忠於原文的準則,乙應被偏好。訓練想強化的行為是保留關鍵限制,而不是單純偏好較長的句子。

因此還應加入反向對照:較短回答同樣完整、較長回答卻加入沒有依據的功能。若資料裡永遠是長回答獲選,模型可能學到長度這個捷徑,沒有學會真正的證據要求。也需要讓不同語氣、句型和功能主題出現,避免只記住「仍需連線」這種表面詞彙。範例展示的是資料設計原則,不代表 DPO 一定會犯或避免哪種錯。

評估時用未見過的產品說明,檢查限制是否保留、是否新增功能,以及摘要是否仍符合長度要求。若模型變得每次都寫「請以官方說明為準」,卻沒有實際整理已提供的內容,這不算達成任務。保守措辭不能代替忠於證據,偏好評估也不應只獎勵固定免責句。

和 SFT、RLHF 的關係

SFT 常提供期望輸出,讓模型學習示範行為;DPO 則使用較佳與較差的配對,直接學相對偏好。實務上可以先 SFT,讓模型學會基本格式,再進一步利用偏好資料。LoRA 也可以作為更新部分參數的方式配合訓練,它回答的是怎麼更新,不是偏好資料該長什麼樣子。

典型 RLHF 會先從比較資料訓練獎勵模型,再利用強化學習調整策略;原始 DPO 簡化了這條訓練路徑。這不表示人類偏好已變成客觀真理,也不表示 DPO 永遠比所有 RLHF 變體更好。不同方法的資料取得方式、線上探索與最佳化能力不同,原論文的實驗結果只能支持其研究條件下的比較,不能直接搬成普遍排名。

資料偏差與能力退化怎麼檢查

偏好可能來自人類、模型協助標註或其他規則,來源不同就有不同誤差。若評審偏好自信、迎合或冗長回答,訓練也可能朝那些特徵移動。應記錄標註準則與分歧,把明顯矛盾的配對挑出來檢查。兩份都錯的答案不適合僅因其中一份稍好,就被無條件當成理想方向反覆放大。

模型可能在偏好測試上進步,卻在原有分類或格式任務退步。驗收要包含保留能力、無答案題和與訓練分佈不同的問題,並與原模型使用相同推論設定比較。訓練損失或內部隱含獎勵改善,只是過程訊號;最終仍要看實際輸出是否符合人的任務,而不是把某條曲線當成產品品質。

匯入前可以先用少量人工核對的配對檢查資料格式與訓練目標,再逐步擴大。保留基礎模型、參考模型、資料版本和評估記錄,才能在結果不佳時回溯。DPO 的吸引力是把某些偏好訓練環節變得直接,但節省的流程不應拿來省略對資料、限制與真實效果的檢查。還要注意偏好資料的有效範圍。若產品規則更新,過去被選為較佳的回答可能已不適用;若更換參考模型,原有結果也不一定能直接重現。維護者需要知道資料是在什麼前提下標註,才不會把過期偏好繼續當成不變標準。

概念對照;來源查證於 2026 年 9 月。
方法處理重點需要留意
SFT輸入與期望輸出直接學習示範
典型 RLHF偏好、獎勵模型與強化學習流程包含獎勵近似
原始 DPO問題與偏好回答配對直接調整策略的相對偏好

  • 生活分享

    世界模型(World Model)是什麼:讓 AI 預測「接下來會怎樣」

    世界模型指 AI 內部用來預測「這樣做之後會怎樣」的模型,但這個詞至少有三種用法:強化學習代理在想像中練習用的環境模型、LeCun 主張預測抽象表示的架構路線,以及能隨操作即時生成畫面的互動環境。內容用示例說明怎麼在想像中規劃,並列出大型語言模型有沒有世界模型的正反研究,附讀新聞時的檢查問題。

  • 生活分享

    視覺語言模型(VLM)是什麼:讓 AI 讀圖片、再用文字回答

    視覺語言模型(VLM)能同時接收圖片與文字,再用文字回答。內容拆解視覺編碼器、連接層與語言模型三段結構,說明 CLIP、Flamingo、LLaVA 三篇論文各補上哪一塊,並和多模態 AI、文字生圖分清楚;也整理它常犯的錯:數錯數量、搞混位置、說出圖裡沒有的東西,附上讀收據時逐行核對的步驟。

  • 生活分享

    溫度(Temperature)是什麼:AI 回答變化程度的取樣參數

    溫度(temperature)是文字生成時調整取樣的參數,讓模型從下一個 token 的機率分布裡抽得更集中或更分散。用假想的台南早餐示例算出低溫與高溫的差別,說明 top-p 的來源和它與 top-k 的差別,並依官方文件與論文指出:調低溫度不代表更準,設成 0 也不保證每次相同,部分模型還不開放調整。

  • 生活分享

    合成資料(Synthetic Data)是什麼:兩種用途、品質控管與模型崩潰

    合成資料是由演算法或模型產生、模仿真實資料特徵的資料,常見用途有兩種:訓練模型,以及在隱私需求下替代真資料。內容依 Self-Instruct、模型崩潰研究(替換與累積資料的差別)與 NIST、ICO 的隱私文件,說明做法、抽查流程,以及它不能保證的事。

最新旅遊情報攻略

資料來源

生活分享