十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

王林
發布: 2023-06-06 17:16:06
轉載
1157 人瀏覽過

讓語言模型的行為符合人類社會價值觀是目前語言模型發展的重要環節。相應的訓練也被稱為價值對齊 (value alignment)。

目前主流的方案是 ChatGPT 所採用的 RLHF (Reinforcenment Learning from Human Feedback),也就是在人類回饋上進行強化學習。這個方案首先先訓練一個 reward model (價值模型)作為人類判斷的代理。代理模型在強化學習階段為生成式語言模型的提供獎勵作為監督訊號。

此方法存在如下痛點:

#1.代理模型產生的獎勵很容易被破除或竄改。

2. 在訓練過程中,代理模型需要和生成式模型進行不斷交互,而這個過程可能非常耗時且效率不高。 為了確保高品質的監督訊號,代理模型不應小於生成式模型,這也意味著在強化學習最佳化過程中,至少有兩個比較大的模型需要交替進行推理(判斷得到的獎勵)和參數更新(生成式模型參數最佳化)。這樣的設定在大規模分散式訓練中可能會非常不便。

3. 價值模型本身並無和人類思考模型上明顯的對應。 我們腦海中並沒有一個單獨的評分模型,而且實際上長期維護一個固定的打分標準也非常困難。相反,我們的成長過程中價值判斷的形成大部分來自每天的社交 —— 透過對相似場景的不同社交回饋的分析,我們逐漸意識到什麼是會被鼓勵的,什麼是不允許的。這些透過大量 「社交 — 回饋 — 改進」 而逐漸累積的經驗和共識成為了人類社會共同的價值判斷。

最近一項來自達特茅斯,史丹佛,GoogleDeepMind 等機構的研究表明,利用社交遊戲構造的高品質數據配合簡單高效的對齊演算法,也許才是實現alignment 的關鍵所在。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

  • #文章網址:https://arxiv.org/pdf/2305.16960.pdf
  • 程式碼位址:https://github.com/agi-templar/Stable-Alignment
  • ##模型下載(包含基座,SFT,和對齊模型):https://huggingface.co/agi-css

作者提出一種在多智能體遊戲資料上訓練的對齊方法。基本思想可以理解為將訓練階段的獎勵模型和生成式模型的在線交互,轉移到遊戲中大量自主智能體之間的離線交互之中(高採樣率,提前預演博弈)。遊戲環境的運作獨立於訓練,並且可以大量並行。監督訊號從取決於代理獎勵模型的表現變成取決於大量自主智能體的集體智慧。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

為此作者設計了一個虛擬社會模型,稱為沙盒 Sandbox。沙盒是一個由格點構成的世界,每一個格點是一個 social agent (社交體)。社交體具有記憶系統,用於儲存每一次互動的問題,回答,回饋等各種資訊。在社交體每一次對問題做出回答時,都要先從記憶系統中檢索並返回和問題最相關的 N 條歷史問答,作為這次回應的上下文參考。透過這項設計,社交體能在多輪互動中的立場不斷更新,且更新的立場能和過去保持一定延續性。初始化階段每一個社交體都有不同的預先設立場。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

#將遊戲資料轉換為alignment 資料

############################################################### ##

在實驗中作者使用10x10 的格點沙盒(一共100 個社交體)進行社會仿真,並且制定了一個社會規則(即所謂Sandbox Rule):所有社交體必須透過使自己對於問題的回答更加socially aligned (社交對齊)來給其它社交體留下好的印象。此外沙盒也部署了沒有記憶的觀察者,在每一次社交前後,給社交體的答覆做出評分。評分基於 alignment 和 engagement 兩個維度。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

使用不同模型在沙盒中的模擬人類社會

#作者利用沙盒Sandbox 測試了不同大小,以及不同訓練階段的語言模型。整體而言,經過 alignment 訓練的模型 (即所謂 「對齊後的模型」),例如 davinci-003, GPT-4,和 ChatGPT,能在更少的互動輪次中就能產生符合社會規範的回應。換句話說,alignment 訓練的意義就在於讓模型在 「開箱即用」 的場景下更加安全,而不需要特別的多輪對話引導。而未經 alignment 訓練的模型,不僅需要更多的互動次數使回覆達到 alignment 和 engagement 的整體最優,而且這種整體最優的上限顯著低於對齊後的模型。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

作者同時提出一個簡單易行的對齊演算法,稱為Stable Alignment (穩定對齊),用於從沙盒的歷史資料中學習alignment。穩定對齊演算法在每個mini-batch (小批次)中進行打分調製的對比學習—— 回复的得分越低,對比學習的邊界值就會被設定的越大—— 換句話說,穩定對齊透過不斷採樣小批次數據,鼓勵模型產生更接近高分回复,更不接近低分回复。穩定對齊最終會收斂於 SFT 損失。作者也對穩定對齊和 SFT,RLHF 的差異進行了討論。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

作者特別強調來自沙盒Sandbox 的遊戲的數據,由於機制的設定,大量包含通過修訂( revision)而成為符合社會價值的數據。作者透過消融實驗證明這種大量自帶漸進式 (step-by-step)改進的數據是穩定訓練的關鍵。

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

#作者也和目前主流對準演算法效能和訓練穩定性進行了性能上的比較,證明穩定對齊不僅比reward modeling 更穩定,而且在通用性能和alignment 性能上都足以媲美RLHF (由於ChatGPT 使用未公開的模型,數據和演算法,因此僅作為參考)。

實例產生結果:

十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型

#更多細節請參考論文。

以上是十行程式碼媲美RLHF,用社群遊戲資料訓練社會對齊模型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!