很多人第一次接觸各家大模型時,都會覺得它們的回答能帶來意想不到的驚喜,但有時,AI回答又怪怪的、囉嗦、甚至有點危險。

這背後,其實就是一個核心問題:對齊(Alignment)。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_數據

預訓練讓模型會“説話”,但對齊訓練,才讓模型更符合人類偏好:更有用、更安全、更有温度。在當下的大模型時代,有三種常被提到的對齊方法:PPO、DPO和KTO。

本期,LLaMA-Factory Online將用盡量通俗的方式,幫你搞懂它們的底層邏輯。

一、PPO:造一個“裁判”,再用強化學習調教模型

PPO(Proximal Policy Optimization,近端策略優化)最經典的應用就是:RLHF(Reinforcement Learning from Human Feedback,人類反饋強化學習)。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_數據_02

它的思路是“三件套”:

● 先由“SFT老師”教模型基礎禮儀

用高質量指令-回答數據,把預訓練模型變成一個基本聽話的聊天助手

● 再訓練一個“閲卷老師RM”初步打分

讓人類對一批迴答打偏好,用這些偏好去訓練一個專門“打分”的模型,以後看到一個回答,這個打分模型就會判斷:“這個 0.9 分” 或 “這個只有 0.2 分”

● 最後用PPO算法,讓模型按閲卷老師給的分數改進回答

先讓模型生成回答,高分回答方向上的參數被獎勵模型“鼓勵”,低分回答方向被“懲罰”。每次更新,又會用 PPO 的“裁剪機制”限制更新幅度,防止模型突然學偏


為什麼大家愛用 PPO?又為什麼很多團隊逐漸“逃離”它?

優點:

● 上限高,通用性強:有了獎勵模型,你可以把任意“主觀偏好”變成一個可學習的分數。模型的回答是否符合事實、是否禮貌、是否安全、是否有條理等要素,都可以揉進一個獎勵裏,PPO 按這個總分來優化,想象空間很大。

● 理論成熟,工業驗證充分:ChatGPT、Claude 早期版本等,都用 PPO+RLHF 這套路線走起來的,對大廠來説,這是“保險方案”。


缺點:

● 流程複雜、成本高:至少要維護兩個大模型(基座 + RM),訓練管線複雜、顯存壓力巨大,對中小團隊來説,非常“肉疼”。

● 容易被“誤導獎勵”:裁判是模型,它也會“犯蠢”:比如誤把“長篇大論”當成高質量,結果你看到的就是:回答變得又長又囉嗦,但不一定更有用。

● 對長推理任務不友好:很多數學/代碼題,只在“最終答案對不對”這裏給獎勵,中間推理過程沒標註。價值函數不好學,PPO 更新就會非常不穩定。這也是後來 GRPO、GSPO 等新算法誕生的重要原因。

如果你手頭只有幾張 GPU,還想用 PPO+RM 跑一套完整 RLHF 流程,大概率會被現實猛猛教育一下。

但如果你有技術、有精力,可以在LLaMA-Factory Online中,以平民價用H卡訓練市面上各種強大模型,享受優惠的同時,性能絕不縮水。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_損失函數_03

二、DPO:直接教學生分好壞

DPO(Direct Preference Optimization,直接偏好優化)的出發點很簡單:既然人類已經告訴我們 A 比 B 好,為什麼還要多繞一步去訓一個獎勵模型?直接用這對偏好數據更新大模型本身不就行了?

所以,DPO 直接跳過獎勵模型RM的訓練流程,用一個特殊的損失函數,讓模型滿足這樣的目標:在同樣的輸入下,提高“偏好回答”的生成概率,降低“非偏好回答”的生成概率。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_損失函數_04

一條典型 DPO 樣本是這樣的結構:

{
輸入:用户問題 x
偏好回答: y_preferred
非偏好回答: y_dispreferred
}

我們可以發現,和PPO相比,DPO中間整整省掉了一整個模型和一套管線。

DPO 的優缺點:典型的“中量級選手”

優點:

● 不用獎勵模型,算力成本與工程複雜度驟降,比 PPO 至少少一大截,對中小團隊、開源社區尤其友好。

● 訓練穩定,沒有價值函數、優勢估計這些“強化學習坑點”,訓練過程更像普通 SFT。

● 效果可觀,在很多對話任務上,適當規模的成對偏好數據 + DPO就能把一個 SFT 模型拉到接近GPT-3.5的體驗。

缺點:

● 非常依賴偏好數據質量。如果標註員的標準不統一、甚至本身理解有誤,模型就會學錯偏好,而且很難通過“獎勵模型分析”把問題拆出來。

● 對複雜、多維度目標支持較弱。比如代碼生成,你同時在意:正確性、效率、可讀性,但單純的偏好往往很難覆蓋所有維度,不如 PPO+RM 那麼靈活可控。

● 標註成本仍不低。成對偏好數據畢竟需要兩個候選回答,再由人類比較、選擇哪個更好。相比“單條打好/壞”,還是貴不少——這就給 KTO 留出了舞台。


三、KTO:好與壞的極簡判斷

KTO(Kahneman–Tversky Optimization)名字裏的兩位,就是諾獎得主卡尼曼和特沃斯基——他們提出了著名的前景理論:人類對“損失”的敏感度,遠遠大於對“收益”的敏感度,例如撿 100 塊錢沒有你丟 100 塊錢那麼“疼”。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_數據_05

KTO 把這個想法搬到了模型訓練裏,核心有兩點:

● 不再需要成對數據,只要給每個回答一個標籤:

可取 / Desirable:+1

不可取 / Undesirable:-1

● 對“壞回答”懲罰更重,對“好回答”獎勵更細膩

生成壞回答 → 懲罰力度大

沒生成好回答 → 也會被“温柔地懲罰一下”

讓模型學會:“少犯錯,比偶爾超常發揮重要得多。”


和 DPO 的成對數據比,KTO 的數據格式非常樸素:

{
"input_x": "計算 2 + 3 × 4 的結果", 
"response": "2 + 3 = 5,5 × 4 = 20。",  
"desirability_label": -1  // 壞
}
{
"input_x": "計算 2 + 3 × 4 的結果", 
"response": "2 + 3 = 5,5 × 4 = 20。",  
"desirability_label": -1  // 壞
}

人類標註任務從“二選一”降維到“單條打分”:看到一個回答 → 點👍 / 👎即可。

在實際平台中,這和我們給機器人“好評 / 差評”的交互方式非常接近,可以利用大量弱標註數據,快速積累樣本。


KTO 的優缺點:極度節省,換來的是“粗粒度”

優點:

● 標註成本極低,不需要成對比較,大部分人只要有“常識+審美”,就能給出好/壞評價,非常適合從線上用户反饋中直接挖掘訓練數據。

● 訓練流程簡單、計算開銷小,本質上是一個帶特殊損失函數的“帶標籤微調”,沒有價值函數、羣體對比這種 RL 元素,工程實現很友好。

● 對“不平衡場景”特別有用。比如醫療場景中:錯誤回答的危害遠超過正確回答帶來的“驚喜”。使用 KTO,可以重點懲罰那些危險、錯誤、消極的回答,讓模型優先減少災難性輸出。


缺點:

● 只能學“好/壞”,難學“細微偏好”,比如兩條回答都正確,一條詳細帶例子,一條簡潔乾脆,這時你想讓模型傾向其中一種風格,單一好/壞標籤表達力就不夠了。

● 對標籤質量敏感,若打標籤的人並不專業,甚至情緒化,模型容易學到稀奇古怪的偏好。

● 缺少“事實性約束”,只要標註員沒把事實錯誤當“壞”,模型就可能把“圓滑但不一定對”的回答學成“好風格”。

四、PPO、DPO、KTO,不同團隊怎麼選?

最後,把這三位主角拉到一張決策表上:

維度

PPO(RLHF)

DPO

KTO

訓練流程

最複雜:SFT + 獎勵模型 + RLHF

類 SFT:直接用偏好對訓練

類 SFT:用好/壞標籤訓練

數據要求

成對偏好 + 獎勵模型訓練數據

成對偏好數據

單條好/壞標籤

算力 & 工程

★★★★★

★★★

★★

對齊精細程度

★★★★★(可多維度綜合)

★★★★(對話/任務效果很好)

★★(粗粒度好/壞)

典型適用場景

通用大模型、追求 SOTA 的大廠

垂直問答、領域助手、開源模型

安全防護、粗對齊、低預算項目


如果用一句話給不同類型團隊提建議:

● 大廠 / 研究機構

有工程團隊、有算力、有大量標註資源:優先採用 PPO+RM,在此基礎上再探索 GRPO、GSPO 等更前沿算法。

● 中小型團隊 / 垂直應用

有一定數據 & 預算,希望在一個細分領域做出體驗不錯的模型,DPO就是非常務實的首選:成本可控、效果明顯、社區實踐多、工具鏈成熟(如 HuggingFace TRL)。

● 個人開發者 / 極度預算敏感項目

手裏只有少量“好/壞”反饋,或者主要依賴線上用户點擊、評分:從 KTO 起步,把最差的回答先“擋下去”,再視情況逐步升級到 DPO。

但事實上,大量開源優質數據都可以在LLaMA-Factory Online上輕鬆獲得,你也可以在這個平台直接用高算力顯卡落地你的想法,所以從DPO起步是完全可以的。

PPO最強,DPO一般?一文帶你瞭解常見三種強化學習方法,文末有大模型微調神器!_損失函數_06

LLaMA-Factory Online已經把過去需要專業工程團隊才能搭起來的流水線,做成了一個開箱可用的在線一站式平台:

● 無配置負擔——瀏覽器打開即可訓練,無需寫腳本、配環境、調依賴

● 支持全流程訓練:SFT、DPO、KTO、PPO、LoRA、QLoRA 全套都能跑

● 高性價比算力——H20、A100、4090 等多種 GPU 即開即用

● 兼容 HuggingFace / OpenAI 接口,訓練後的模型可直接部署上線

● 支持主流大模型:Llama、Qwen、Baichuan、Gemma、Mistral……想訓就訓


你不再需要幾十萬的集羣成本,也不用自己搭 RLHF 訓練框架,一個瀏覽器 + 一點訓練數據,你就能和大廠同款技術體系賽跑。對於想快速驗證想法、打造垂直領域智能體、或在真實業務中使用大模型的團隊來説,這就是實打實的生產力提升。