復(fù)旦NLP組開源PPO-Max:32頁論文詳解RLHF背后秘密,高效對齊人類偏好
近幾年,大型語言模型(LLM)技術(shù)飛速發(fā)展,以ChatGPT為首的對話助手更是將AI技術(shù)實用性增強。語言模型開發(fā)的最主要目標是成為「以人為中心」的助手,具有樂于助人、誠實且無害的性格特質(zhì),能夠與人類保持一致的價值觀,而基于人類反饋的強化學(xué)習(xí)(RLHF)則是支撐這一目標的關(guān)鍵技術(shù)。
目前的技術(shù)路線通常包括衡量人類偏好的獎勵模型、優(yōu)化策略模型輸出的近端策略優(yōu)化(Proximal Policy Optimization, PPO)以及提高逐步推理能力的過程監(jiān)督(process supervision)。
但現(xiàn)狀是,由于獎勵設(shè)計、環(huán)境交互、智能體訓(xùn)練等方面仍然存在挑戰(zhàn),再加上大型語言模型的訓(xùn)練需要付出巨大的試錯成本,人工智能領(lǐng)域的研究人員在推動LLM的技術(shù)對接和安全落地方面仍然存在很大的開發(fā)障礙,并且RLHF的穩(wěn)定訓(xùn)練也還是一個難題。
最近,復(fù)旦大學(xué)NLP組的研究人員公開了一篇論文,剖析了RLHF的框架,重新評估了PPO的內(nèi)部工作原理,并探討了組成PPO算法的各個部分對策略智能體訓(xùn)練的影響,結(jié)果發(fā)現(xiàn)策略約束是有效實施PPO算法的關(guān)鍵因素。
圖片
論文鏈接:https://arxiv.org/pdf/2307.04964.pdf
倉庫鏈接:https://github.com/OpenLMLab/MOSS-RLHF
研究人員探究了PPO算法的高級版本PPO-max,可以有效提高策略模型的訓(xùn)練穩(wěn)定性,并基于主要實驗結(jié)果,綜合分析了RLHF與SFT模型和ChatGPT的能力對比。
除了更多的定性結(jié)果外,研究人員還發(fā)現(xiàn)基于該算法成功訓(xùn)練的LLM往往能夠更好地理解查詢的深層含義,回復(fù)結(jié)果更能直擊用戶靈魂。
最后,缺乏開源實現(xiàn)也給LLMs的對齊(alignment)研究帶來了巨大挑戰(zhàn),研究人員也開源了相關(guān)代碼,并發(fā)布了中文和英文的獎勵模型。
基于人類反饋的強化學(xué)習(xí)RLHF
人工智能助手的訓(xùn)練過程包括三個主要階段:有監(jiān)督微調(diào)(SFT)、獎勵模型(RM)訓(xùn)練和獎勵模型上的近端策略優(yōu)化(PPO)。
在SFT階段,模型通過模仿人類標注的對話示例來學(xué)習(xí)通用的類人對話;在獎勵模型訓(xùn)練過程中,模型會根據(jù)人類反饋來比較不同回復(fù)的偏好;在PPO階段,根據(jù)獎勵模型的反饋更新模型,通過探索(exploration)和利用(exploitation)發(fā)現(xiàn)最優(yōu)策略。
圖片
RLHF過程中主要涉及RM訓(xùn)練和PPO強化學(xué)習(xí)階段,詳細技術(shù)細節(jié)請參閱原論文。
獎勵建模 Reward Modeling
在RM架構(gòu)中,研究人員使用基于Transformer的預(yù)訓(xùn)練語言模型,去掉最后unembedding層,并增加一個額外的線性層。
輸入任意文本,獎勵模型將最后一個token轉(zhuǎn)換為標量獎勵值:獎勵值越大,代表樣本越好。
訓(xùn)練獎勵模型通常需要一個「針對相同輸入生成的兩個回復(fù)之間的成對比較」數(shù)據(jù)集。
近端策略優(yōu)化Proximal Policy Optimization
PPO和TRPO是強化學(xué)習(xí)訓(xùn)練中的兩種關(guān)鍵技術(shù),可以在不損失穩(wěn)定性的情況下有效地訓(xùn)練策略,其基本思想是「穩(wěn)定的小步驟」(small, stable steps),即溫和地引導(dǎo)策略走向優(yōu)化,而非強制執(zhí)行可能會破壞整個學(xué)習(xí)過程穩(wěn)定的激進梯度更新。
在傳統(tǒng)的強化中,策略梯度原則要求新舊策略在參數(shù)空間中保持接近,不過參數(shù)空間的接近并不一定等同于相似的性能,參數(shù)的微小變化可能會極大影響策略的有效性。
此外,如果不加限制地邁出一大步,可能會導(dǎo)致策略性能崩潰,這種情況也叫做「跌落懸崖」(falling off the cliff),這種固有風(fēng)險限制了原始策略梯度的采樣效率。
圖片
TRPO對策略更新引入了另一種約束,不受限于參數(shù)的接近性,通過確保KL散度保持在可接受的范圍內(nèi)來調(diào)節(jié)策略的變化。
圖片
PPO有兩種主要變體:PPO-Penalty和PPO-Clip,TRPO對KL散度施加硬約束以防止有害更新,而PPO-Penalty則采用基于懲罰的方法代替約束來解決無約束優(yōu)化問題。
PPO-max
近端策略優(yōu)化(PPO)是實現(xiàn)與人類偏好一致的核心算法,但在實際應(yīng)用中,PPO的性能受到多種因素的影響,雖然之前有工作總結(jié)了一些再強化學(xué)習(xí)領(lǐng)域中必要且有效的技巧,但如何穩(wěn)定語言模型的RLHF訓(xùn)練仍是未知數(shù)。
圖片
這篇論文中,研究人員通過實驗探索了哪些技巧是比較關(guān)鍵的,哪些指標可以反映RLHF訓(xùn)練過程中和訓(xùn)練后的模型狀態(tài),然后用PPO-max來表示從實驗中發(fā)現(xiàn)的,最適合語言模型的實現(xiàn)方式。
模型和數(shù)據(jù)集
對于英語數(shù)據(jù),研究人員使用decoder-only架構(gòu)的原始LLaMA-7B模型,使用HH-RLHF數(shù)據(jù)集的16萬樣本對作為訓(xùn)練集,其中包括11.8萬條有用樣本和4.2萬條無害樣本;從8500條數(shù)據(jù)中隨機抽取1000條數(shù)據(jù)作為測試集,剩余數(shù)據(jù)作為驗證集。
圖片
對于中文數(shù)據(jù),使用OpenChineseLLaMA模型,基于LLaMA-7B在中文數(shù)據(jù)集上增量預(yù)訓(xùn)練后得到的,顯著提高了對中文的理解和生成能力。
研究團隊聘請了專業(yè)的標注人員對3.9萬對樣本進行人工標注,其中包括3.1萬個有用樣本和8000條無害樣本;在訓(xùn)練集中隨機抽取2.4萬個有用樣本和6萬個無害樣本,然后從剩余數(shù)據(jù)中隨機分配2.4萬個有用樣本和0.6萬個無害樣本組成測試集,其余數(shù)據(jù)用于驗證。
評價指標
研究人員的目標是找出一些能反映PPO訓(xùn)練質(zhì)量的指標,有助于跟蹤策略模型的有益、誠實和無害的能力,從而無需使用人工標注或GPT-4來評估。
圖片
可以觀察到,原始PPO在訓(xùn)練過程中存在模式崩潰現(xiàn)象,也意味著SFT模型被過度優(yōu)化并表現(xiàn)出高偏差行為。
并且訓(xùn)練損失有穩(wěn)定的收斂過程,但從人類和GPT-4評估的角度來看,較高的獎勵并不能反映出更好的策略行為,也就說明獎勵得分和訓(xùn)練損失并不能說明PPO是否正確優(yōu)化。
在原始PPO訓(xùn)練中,策略模型的回復(fù)獎勵逐漸偏離原始分布,表現(xiàn)出長尾特征。
研究人員還測試了其他指標如困惑度、策略模型和參考模型之間的KL散度以及生成回復(fù)的平均長度。
PPO-max
研究人員對PPO訓(xùn)練技巧中的評分重參數(shù)化(score reparameterization)方法、策略模型的優(yōu)化約束,以及策略模型和critic模型的不同初始化方法進行實驗驗證。
圖片
對PPO的每個部分選擇最有效的策略以實現(xiàn)PPO-max,具體實現(xiàn)可以參閱開源代碼。
首先根據(jù)歷史均值和方差記錄對當前獎勵組進行歸一化和裁剪,然后添加KL-懲罰項來約束策略優(yōu)化。
在模型加載階段,用獎勵模型初始化critic模型,并在正式應(yīng)用PPO之前對其進行預(yù)訓(xùn)練,然后使用全局梯度裁剪并設(shè)置較小的經(jīng)驗緩沖區(qū)。
圖片
為了減少對齊tax,在策略優(yōu)化中添加了預(yù)訓(xùn)練語言模型損失,如InstructGPT,并同時對估值函數(shù)損失進行裁剪。
實驗結(jié)果
研究人員將該模型和ChatGPT進行比較,選擇「無害性」作為比較指標,并采用GPT-4進行自動評估。
圖片
實驗結(jié)果可以看到,該RLHF模型仍然落后于OpenAI的ChatGPT,但與SFT模型相比,RLHF模型有了明顯的改進。
圖片
具體來說,在英文文本上訓(xùn)練的RLHF模型成功地將失敗率從45%降至24%;在中文文本上訓(xùn)練的RLHF模型也將失敗率從37%降至29%,表明RLHF方法增強了模型生成更有效回答的能力,縮小了與ChatGPT之間的差距。
語言理解評估
為了檢驗使用PPO對模型進行微調(diào)可能導(dǎo)致的自然語言理解能力的下降,使用C-Eval5對中文RLHF模型進行了測試,包含約1.3萬道多選題,涉及52個學(xué)科和4個難度級別。
實驗結(jié)果表明,采用PPO后,模型NLU的能力有所下降;通過將預(yù)訓(xùn)練數(shù)據(jù)納入PPO訓(xùn)練階段,PPO-ptx可以有效緩解了NLU能力的下降,底層原理是利用預(yù)訓(xùn)練中獲得的知識,并將其與PPO的強化學(xué)習(xí)框架相結(jié)合。
限制
雖然該研究已經(jīng)邁出了RLHF的第一步,但由于時間和資源的限制,這項工作仍然存在以下局限性:
1. 規(guī)模定律(Scaling Law)
這篇論文主要研究70億參數(shù)的模型,還沒有研究模型大小和數(shù)據(jù)規(guī)模對RLHF性能的影響。
2. 獎勵模型
實驗基于公開的英文人類偏好數(shù)據(jù)集和少量自建的中文數(shù)據(jù),數(shù)據(jù)質(zhì)量和數(shù)量不足以對獎勵模型進行全面評估。
3. 評估指標
目前評估標準主要依賴于人工評估和GPT-4自動評估,還沒有利用大量可用的基準和NLP任務(wù)來對模型進行詳細評估
4. 性能指標
該研究在PPO階段的重點是實現(xiàn)訓(xùn)練穩(wěn)定性,而不是提高最終性能,雖然穩(wěn)定性至關(guān)重要,但它并不一定能保證改善結(jié)果。
此外,獎勵得分不能可靠地作為預(yù)測訓(xùn)練階段RLHF性能的指標,也就意味著需要尋找更合適的訓(xùn)練階段性能指標。
參考資料: