天天看點

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

作者:機器之心Pro

機器之心專欄

機器之心編輯部

人類大腦中真的存在一個打分模型負責價值判斷嗎?

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

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

這一方法存在如下痛點:

1. 代理模型産生的獎勵很容易被破解或者篡改。比如如果代理模型的訓練語料中,比較長的并且詳細的文本大部分被标記為高分,那麼代理模型很可能錯誤獎勵冗長但是卻不切題的回複。多個顯式的獎勵目标很可能互相沖突,比如無害的回答很可能沒有資訊量。

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

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

最近一項來自達特茅斯,斯坦福,谷歌 DeepMind 等機構的研究表明,利用社交遊戲構造的高品質資料配合簡單高效的對齊算法,也許才是實作 alignment 的關鍵所在。

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

文章位址:https://arxiv.org/pdf/2305.16960.pdf

代碼位址:https://github.com/agi-templar/Stable-Alignment

模型下載下傳(包含基座,SFT,和對齊模型):https://huggingface.co/agi-css

作者提出一種在多智能體遊戲資料上訓練的對齊方法。基本思想可以了解為将訓練階段的獎勵模型和生成式模型的線上互動 (低采樣率,存在獎勵破解問題)轉移到遊戲中大量自主智能體之間的離線互動之中(高采樣率,提前預演博弈)。遊戲環境的運作獨立于訓練,并且可以大量并行。監督信号從取決于代理獎勵模型的性能變成取決于大量自主智能體的集體智慧。

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

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

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

将遊戲資料轉化為 alignment 資料

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

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

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

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

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

作者同時提出一種簡便易行的對齊算法,稱為 Stable Alignment (穩定對齊),用于從沙盒的曆史資料中學習 alignment。穩定對齊算法在每一個 mini-batch (小批次)中進行打分調制的對比學習 —— 回複的得分越低,對比學習的邊界值就會被設定的越大 —— 換句話說,穩定對齊通過不斷采樣小批次資料,鼓勵模型生成更接近高分回複,更不接近低分回複。穩定對齊最終會收斂于 SFT 損失。作者還對穩定對齊和 SFT,RLHF 的差異進行了讨論。

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

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

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型
10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

作者還和目前主流對齊算法性能和訓練穩定性進行了性能上的比較,證明穩定對齊不僅比 reward modeling 更穩定,而且在通用性能和 alignment 性能上都足以媲美 RLHF (由于 ChatGPT 使用未公開的模型,資料和算法,是以僅作為參考)。

執行個體生成結果:

10行代碼媲美RLHF,用社交遊戲資料訓練社會對齊模型

更多細節請參考論文。

繼續閱讀