合成資料已經成為了大語言模型演化之路上最重要的一塊基石了。
去年底,有網友曝出前OpenAI首席科學家Ilya多次表示LLM的發展沒有資料瓶頸,合成資料可以解決大部分問題。
圖片
英偉達資深科學家Jim Fan在研究了最新一批論文後得出結論,他認為將合成數據與傳統遊戲和影像生成技術結合,可以讓LLM實現巨大的自我進化。
圖片
而正式提出這個方法的論文,是由來自UCLA的華人團隊。
圖片
論文網址:https://www.php.cn/link/236522d75c8164f90a85448456e1d1aa
他們使用自我對弈機制(SPIN)產生合成數據,並透過自我微調的方法,不依賴新的數據集,將表現較弱的LLM在Open LLM Leaderboard Benchmark上的平均分數從58.14提升至63.16。
研究人員提出了一種名為SPIN的自我微調的方法,透過自我對弈的方式-LLM與其前一輪迭代版本進行對抗,從而逐步提升語言模型的效能。
圖片
這樣就不需要額外的人類標註資料或更高階語言模型的回饋,也能完成模型的自我進化。
主模型和對手模型的參數完全一致。用兩個不同的版本進行自我對弈。
對弈過程用公式可以概括為:
#自我對弈的訓練方式,總結起來思路大概是這樣:
透過訓練主模型來區分對手模型產生的反應和人類目標反應,對手模型是輪迭代獲得的語言模型,目標是產生盡可能難以區分的響應。
假設第t輪迭代得到的語言模型參數為θt,則在第t 1輪迭代中,使用θt作為對手玩家,針對監督微調資料集中每個prompt x,使用θt產生響應y'。
然後優化新語言模型參數θt 1,使其可以區分y'和監督微調資料集中人類響應y。如此可以形成一個漸進的過程,逐步逼近目標響應分佈。
這裡,主模型的損失函數採用對數損失,考慮y和y'的函數值差。
對手模型加入KL散度正規化,防止模型參數偏離太多。
具體的對抗賽局訓練目標如公式4.7所示。從理論分析可以看出,當語言模型的反應分佈等於目標反應分佈時,最佳化過程收斂。
如果使用對弈之後產生的合成資料進行訓練,再使用SPIN進行自我微調,能有效提升LLM的效能。
圖片
###但之後在初始的微調資料上再次簡單地微調卻又會導致效能下降。 ######而SPIN只需要初始模型本身和現有的微調資料集,就能讓LLM透過SPIN獲得自我提升。
特別是,SPIN甚至超越了透過DPO使用額外的GPT-4偏好資料訓練的模型。
圖片
而且實驗也表明,迭代訓練比更多epoch的訓練能更有效地提升模型表現。
圖片
延長單次迭代的訓練持續時間不會降低SPIN的效能,但會達到極限。
迭代次數越多,SPIN的效果的就越明顯。
網友在看完這篇論文之後感嘆:
#合成資料將主宰大語言模型的發展,對於大語言模型的研究者來說將會是非常好的消息!
圖片
自我對弈讓LLM能持續提升
具體來說,研究人員所發展的SPIN系統,是由兩個相互影響的模型相互促進的系統。
用表示的前一次迭代t的LLM,研究人員使用它來產生對人工註解的SFT資料集中的提示x的回應y 。
接下來的目標是找到一個新的LLM#,能夠區分生成的反應y和人類生成的響應y'。
這個過程可以看作是一個兩人遊戲:
#主要玩家或新的LLM試圖辨別對手玩家的反應和人類生成的反應,而對手或舊的LLM產生反應與人工註解的SFT資料集中的資料盡可能相似。
透過對舊的進行微調而獲得的新LLM更喜歡的回應,從而產生與更一致的分佈。
在下一次迭代中,新獲得的LLM成為反應生成的對手,自我對弈過程的目標是LLM最終收斂到,使得最強的LLM不再能夠區分其先前產生的反應版本和人類生成的版本。
如何使用SPIN提升模型效能
#研究人員設計了雙人遊戲,其中主要模型的目標是區分LLM產生的反應和人類生成的回應。同時,對手的作用是產生與人類的反應無法區分的反應。研究人員的方法的核心是訓練主要模型。
首先說明如何訓練主要模型來區分LLM的回覆和人類的回應。
研究人員方法的核心是自我賽局機制,其中主玩家和對手都是相同的LLM,但來自不同的迭代。
更具體地說,對手是上一次迭代中的舊LLM,而主玩家是當前迭代中要學習的新LLM。在迭代t 1時包括以下兩個步驟:(1)訓練主模型,(2)更新對手模型。
訓練主模型
#首先,研究人員將說明如何訓練主玩家區分LLM反應和人類反應。受積分機率度量(IPM)的啟發,研究人員制定了目標函數:
#更新對手模型
對手模型的目標是找到更好的LLM,使其產生的反應與主模型的p資料無異。
實驗
研究者使用HuggingFace Open LLM Leaderboard作為廣泛的評估來證明SPIN的有效性。
在下圖中,研究人員將經過0到3次迭代後透過SPIN微調的模型與基本模型zephyr-7b-sft-full的性能進行了比較。
研究人員可以觀察到,SPIN透過進一步利用SFT資料集,在提高模型效能方面表現出了顯著的效果,而基礎模型已經在該資料集上進行了充分的微調。
在第0次迭代中,模型反應是從zephyr-7b-sft-full產生的,研究人員觀察到平均分數總體提高了2.66%。
在TruthfulQA和GSM8k基準測試中,這項改進尤其顯著,分別提高了超過5%和10%。
在迭代1中,研究人員採用迭代0中的LLM模型來產生SPIN的新回應,並遵循演算法1中概述的流程。
此迭代平均產生1.32%的進一步增強,在Arc Challenge和TruthfulQA基準測試中尤其顯著。
隨後的迭代延續了各種任務增量改進的趨勢。同時,迭代t 1時的改進自然更小
圖片
zephyr-7b-beta是從zephyr-7b- sft-full衍生出來的模型,使用DPO在大約62k個偏好資料上訓練而成。
研究人員注意到,DPO需要手動輸入或高階語言模型回饋來確定偏好,因此資料產生是一個相當昂貴的過程。
相較之下,研究者的SPIN只需要初始模型本身就可以。
此外,與需要新資料來源的DPO不同,研究人員的方法完全利用現有的SFT資料集。
下圖顯示了SPIN在迭代0和1(採用50k SFT資料)與DPO訓練的表現比較。
圖片
研究人員可以觀察到,雖然DPO利用了更多新來源的數據,但基於現有SFT數據的SPIN從迭代1開始,SPIN甚至超越了DPO的性能、SPIN在排行榜基準測試中的表現甚至超過了DPO。
參考資料:
以上是UCLA華人提出全新自我對弈機制! LLM自己訓練自己,效果碾壓GPT-4專家指導的詳細內容。更多資訊請關注PHP中文網其他相關文章!