ICML 2024 Oral | DPO是否比PPO更適合LLM,清華吳翼團(tuán)隊(duì)最新揭秘
吳翼,清華大學(xué)交叉信息院助理教授,曾任 OpenAI 全職研究員,研究領(lǐng)域?yàn)閺?qiáng)化學(xué)習(xí),大模型對(duì)齊,人機(jī)交互,機(jī)器人學(xué)習(xí)等。2019 年在美國(guó)加州大學(xué)伯克利分校獲得博士學(xué)位,師從 Stuart Russell 教授;2014 年本科畢業(yè)于清華大學(xué)交叉信息院(姚班)。其代表作包括:NIPS2016 最佳論文,Value Iteration Network;多智能體深度強(qiáng)化學(xué)習(xí)領(lǐng)域最高引用論文,MADDPG 算法;OpenAI hide-and-seek 項(xiàng)目等。
如何讓大模型更好的遵從人類指令和意圖?如何讓大模型有更好的推理能力?如何讓大模型避免幻覺(jué)?能否解決這些問(wèn)題,是讓大模型真正廣泛可用,甚至實(shí)現(xiàn)超級(jí)智能(Super Intelligence)最為關(guān)鍵的技術(shù)挑戰(zhàn)。這些最困難的挑戰(zhàn)也是吳翼團(tuán)隊(duì)長(zhǎng)期以來(lái)的研究重點(diǎn),大模型對(duì)齊技術(shù)(Alignment)所要攻克的難題。
對(duì)齊技術(shù)中,最重要的算法框架就是根據(jù)人類反饋的強(qiáng)化學(xué)習(xí)(RLHF, Reinforcement Learning from Human Feedback)。RLHF 根據(jù)人類對(duì)大模型輸出的偏好反饋,來(lái)學(xué)習(xí)基于人類反饋的獎(jiǎng)勵(lì)函數(shù)(Reward Model),并進(jìn)一步對(duì)大模型進(jìn)行強(qiáng)化學(xué)習(xí)訓(xùn)練,讓大模型在反復(fù)迭代中學(xué)會(huì)辨別回復(fù)的好壞,并實(shí)現(xiàn)模型能力提升。目前世界上最強(qiáng)的語(yǔ)言模型,比如 OpenAI 的 GPT 模型和 Anthropic 的 Claude 模型,都極其強(qiáng)調(diào) RLHF 訓(xùn)練的重要性。OpenAI 和 Anthropic 內(nèi)部也都開發(fā)了基于大規(guī)模 PPO 算法的 RLHF 訓(xùn)練系統(tǒng)進(jìn)行大模型對(duì)齊。
然而,由于 PPO 算法流程復(fù)雜,算力消耗大,美國(guó) AI 公司的大規(guī)模 RLHF 訓(xùn)練系統(tǒng)也從不開源,所以盡管 PPO 算法非常強(qiáng)大,學(xué)術(shù)界的對(duì)齊工作卻一直很少采用復(fù)雜的 PPO 算法進(jìn)行 RLHF 研究,轉(zhuǎn)而普遍使用 SFT(監(jiān)督微調(diào))或者 DPO(Direct Policy Optimization)等更簡(jiǎn)化、更直接、對(duì)訓(xùn)練系統(tǒng)要求更低的對(duì)齊算法。
那么,簡(jiǎn)單的對(duì)齊算法一定效果更好嗎?吳翼團(tuán)隊(duì)發(fā)表在 ICML 2024 的工作 “Is DPO Superior to PPO for LLM Alignment? A Comprehensive Study” 仔細(xì)探討了 DPO 與 PPO 算法的特點(diǎn),并指出提升 RLHF 算法效果的關(guān)鍵點(diǎn)。在該工作中,吳翼團(tuán)隊(duì)基于自研的大規(guī)模 RLHF 訓(xùn)練系統(tǒng),首次采用 PPO 算法及參數(shù)量更少的開源模型,在公認(rèn)最困難的挑戰(zhàn) —— 代碼生成任務(wù) CodeContest—— 上超過(guò)閉源大模型 AlphaCode 41B。
相關(guān)成果被 ICML 2024 錄用為 Oral Presentation,并將在 7 月 23 日于 ICML 2024 第一個(gè) Oral session Alignment-1 上和 OpenAI、Anthropic 等知名機(jī)構(gòu)的工作一起進(jìn)行公開匯報(bào)。
接下來(lái)讓我們對(duì)比一下 GPT-4 和經(jīng)過(guò) PPO 算法訓(xùn)練的 CodeLlama 34B 模型在代碼生成上的效果,在例子 1 中,經(jīng)過(guò) PPO 算法訓(xùn)練的 CodeLlama 34B 模型與 GPT-4 模型生成了質(zhì)量相當(dāng)?shù)拇a。
在示例 2 中,可以看到經(jīng)過(guò) PPO 算法訓(xùn)練的 CodeLlama 34B 模型與 GPT-4 模型都能生成完整并且可運(yùn)行的 python 代碼。然而,在這個(gè)例子下,GPT-4 生成了錯(cuò)誤的代碼,在測(cè)試數(shù)據(jù)上無(wú)法正確輸出。而經(jīng)過(guò) PPO 算法訓(xùn)練的 CodeLlama 34B 模型生成的代碼可以通過(guò)測(cè)試。
在 ICML 2024 的這篇論文中,研究團(tuán)隊(duì)詳細(xì)探討了 DPO 與 PPO 算法的特點(diǎn),并指出提升 DPO 和 PPO 能力的關(guān)鍵點(diǎn)。
- 論文標(biāo)題:Is DPO Superior to PPO for LLM Alignment? A Comprehensive Study
- 論文地址:https://arxiv.org/pdf/2404.10719
DPO 算法的局限性
相比于 PPO,DPO 使用離線數(shù)據(jù)而非在線采樣數(shù)據(jù)訓(xùn)練。經(jīng)分析,DPO 算法會(huì)導(dǎo)致訓(xùn)練出的模型對(duì)訓(xùn)練數(shù)據(jù)分布之外的輸出產(chǎn)生偏好,在某些情況下產(chǎn)生不可預(yù)料的回復(fù)。
于是,為了提升 DPO 算法的能力,研究團(tuán)隊(duì)總結(jié)了兩個(gè)關(guān)鍵技術(shù):在 RLHF 訓(xùn)練前進(jìn)行額外的 SFT 訓(xùn)練,以及使用在線采樣數(shù)據(jù)而非離線數(shù)據(jù)。
實(shí)驗(yàn)表明,使用額外的 SFT 訓(xùn)練可以使 base 模型以及 reference 模型更偏向于數(shù)據(jù)集內(nèi)的分布,大大提升 DPO 算法效果;另一方面,使用在線采樣數(shù)據(jù)進(jìn)行迭代訓(xùn)練的 DPO 算法可以得到穩(wěn)步提升,表現(xiàn)遠(yuǎn)遠(yuǎn)優(yōu)于基礎(chǔ)的 DPO 算法。
PPO 算法的關(guān)鍵點(diǎn)
除去 DPO,論文中也總結(jié)了發(fā)揮 PPO 最大能力的三個(gè)關(guān)鍵點(diǎn):
- 使用大的批大小(large batch size)
- 優(yōu)勢(shì)歸一化(advantage normalization)
- 以及對(duì) reference model 使用指數(shù)移動(dòng)平均進(jìn)行更新(exponential moving average for the reference model)。
研究團(tuán)隊(duì)成功使用 PPO 算法在對(duì)話任務(wù) Safe-RLHF/HH-RLHF 以及代碼生成任務(wù) APPS/CodeContest 上達(dá)到了 SOTA 的效果。
在對(duì)話任務(wù)上,研究團(tuán)隊(duì)發(fā)現(xiàn)綜合了三個(gè)關(guān)鍵點(diǎn)的 PPO 算法顯著優(yōu)于 DPO 算法以及在線采樣的 DPO 算法 DPO-Iter。
在代碼生成任務(wù) APPS 和 CodeContest 上,基于開源模型 Code Llama 34B,PPO 算法也達(dá)到了最強(qiáng)的水平,在 CodeContest 上超越了之前的 SOTA,AlphaCode 41B。
想要實(shí)現(xiàn)效果較好的大模型對(duì)齊,高效率的訓(xùn)練系統(tǒng)是不可缺少的,在實(shí)現(xiàn)大規(guī)模強(qiáng)化學(xué)習(xí)訓(xùn)練上,吳翼團(tuán)隊(duì)有長(zhǎng)期的積累,從 2021 年開始就搭建了專屬的分布式強(qiáng)化學(xué)習(xí)框架。
- NeurIPS 2022 The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games [1]:提出并開源了用于多智能體的強(qiáng)化學(xué)習(xí)并行訓(xùn)練框架 MAPPO,支持合作場(chǎng)景下的多智能體訓(xùn)練,該工作被大量多智能體領(lǐng)域工作采用,目前論文引用量已超過(guò) 1k。
- ICLR 2024 Scaling Distributed Reinforcement Learning to Over Ten Thousand Cores [2]: 提出了用于強(qiáng)化學(xué)習(xí)的分布式訓(xùn)練框架,可輕松擴(kuò)展至上萬(wàn)個(gè)核心,加速比超越 OpenAI 的大規(guī)模強(qiáng)化學(xué)習(xí)系統(tǒng) Rapid。
- ReaLHF: Optimized RLHF Training for Large Language Models through Parameter Reallocation [3]: 最近,吳翼團(tuán)隊(duì)進(jìn)一步實(shí)現(xiàn)了分布式 RLHF 訓(xùn)練框架 ReaLHF。吳翼團(tuán)隊(duì)的 ICML Oral 論文正是基于 ReaLHF 系統(tǒng)產(chǎn)出的。ReaLHF 系統(tǒng)經(jīng)過(guò)長(zhǎng)時(shí)間的開發(fā),經(jīng)歷大量的細(xì)節(jié)打磨,達(dá)到最優(yōu)性能。相比于之前的開源工作,ReaLHF 可以在 RLHF 這個(gè)比預(yù)訓(xùn)練更復(fù)雜的場(chǎng)景下達(dá)到近乎線性的拓展性,同時(shí)具有更高的資源利用率,在 128 塊 A100 GPU 上也能穩(wěn)定快速地進(jìn)行 RLHF 訓(xùn)練,相關(guān)工作已開源:https://github.com/openpsi-project/ReaLHF
除了提升大語(yǔ)言模型代碼能力之外,吳翼團(tuán)隊(duì)還采用多種將強(qiáng)化學(xué)習(xí)算法和大模型結(jié)合的方式,實(shí)現(xiàn)了多種復(fù)雜 LLM Agent,并可以和人類進(jìn)行復(fù)雜交互。
在 MiniRTS 中使用強(qiáng)化學(xué)習(xí)既能聽從人類指令也能做出最優(yōu)決策的語(yǔ)言智能體 [4]。
在狼人殺中訓(xùn)練策略多樣化的強(qiáng)化學(xué)習(xí)策略以提升大模型的決策能力 [5]。
在 Overcooked 游戲中結(jié)合小模型與大模型實(shí)現(xiàn)能進(jìn)行實(shí)時(shí)反饋的合作 Language Agent [6]。
結(jié)合強(qiáng)化學(xué)習(xí)訓(xùn)練的機(jī)器人控制策略與大語(yǔ)言模型推理能力讓機(jī)器人能夠執(zhí)行一系列復(fù)雜任務(wù) [7]。
為了使大模型能真正走進(jìn)千家萬(wàn)戶,對(duì)齊技術(shù)是至關(guān)重要的,對(duì)于學(xué)術(shù)界和大模型從業(yè)者來(lái)說(shuō),好的開源工作和論文無(wú)疑會(huì)大大降低實(shí)驗(yàn)成本和開發(fā)難度,也期待隨著技術(shù)發(fā)展,會(huì)有更多服務(wù)于人類的大模型出現(xiàn)。