如今一場席捲人工智能圈的「石油危機」已經出現,幾乎每一家AI廠商都在竭力尋求新的語料來源,但再多的數據似乎也填不滿AI大模型的胃口。更何況越來越多的內容平台意識到了手中數據的價值,紛紛開始敝帚自珍。為此,「合成數據」也成為了整個AI行業探索的新方向。
只不過在相當長的一段時間裡,合成數據是否可堪一用都是未知的,直到日前Meta的AI研究員Thomas Scialom博士給出了這個問題的答案。據他透露,Meta的Llama 3開源大模型在訓練中並沒有依賴任何人類編寫的答案,而是完全基於Llama 2生成的合成數據。
Thomas Scialom在介紹Llama 3的訓練細節時,提及了合成數據在大模型不同場景的應用,諸如代碼執行的反饋、編程語言的翻譯、文檔的反向翻譯,長文本的問答、長文檔摘要、代碼庫推理等領域都大量使用了合成數據。而這,也解釋了Meta在今年春季推出的Llama 3大模型規模是如何超過4000億參數,並實現七倍於Llama 2的訓練數據量。
合成數據一般指的是通過算法模仿真實世界數據的特徵產出新的數據,那麼這種「左腳踩右腳上天」的操作又是如何實現呢?由Meta和微軟的相關團隊分別公布的兩篇論文,就能為我們揭示使用合成數據訓練大模型的秘密。其中,Meta將使用合成數據進行訓練的大模型稱為「自我獎勵語言模型」,也就是大模型本身生成訓練數據,並評估這些數據的質量,然後用這些數據來自己訓練自己。
自我獎勵語言模型實際上就是所謂AI反饋強化學習(RLAIF)的應用,Meta的具體操作是先基於少量人工標註數據預訓練一個初始模型,然後再讓初始模型基於問題生成多個候選回覆,並使用吳恩達博士提出的LLM-as-a-Judge方式,讓大語言模型對自己生成的回覆打分,並根據打分形成新的訓練數據,從而繼續訓練模型。
在這一過程中,最重要的就是讓大模型能夠按照示例生成和評估新指令,再添加到自己的訓練集中。由於計算機使用的二進制語言和人類語言不同,研究人員需要將人類語言轉換成計算機能理解的形式,這就是所謂的「文本嵌入」。比如微軟的研究團隊就通過定義一系列文本嵌入任務,並為這些任務設計了特定的提示,來指導大語言模型生成特定數據。
研究人員創建的特定提示會包括兩個關鍵要素,即問題和角色,然後再進行排列組合。比如司機和數學問題結合,就可以生成中小學階段的題目,引導大語言模型以相應的視角合成數據,這就是自我獎勵語言模型的秘密。緊接著研究人員只需將生成的數據進行清洗和格式化,去除重複內容、修正格式錯誤,以確保它們符合訓練的需要。
合成數據的優勢,是能夠在數學和物理意義上反映真實數據的屬性,並且由於無需人工標註,所以也大幅減少了因數據採集流轉流程以及人為標準不一致所帶來的人為誤差。那麼問題就來了,既然合成數據可以成為解決訓練數據稀缺以及衍生而來的高成本問題,為什麼大量AI廠商還是傾向於挖掘或購買人類生成的數據呢?
其中最關鍵的原因,就是儘管採用了精心設計的prompt和有監督訓練,但大語言模型固有的偏差和幻覺等問題仍可能會給數據集引入噪聲,而在錯誤的、有幻覺的或有偏見的合成數據基礎上訓練的大語言模型,會無法泛化到現實世界場景。建立在合成數據基礎上的大語言模型需要避免被機器學習「污染」,而訓練數據中合成數據的占比越大,自然語言理解能力就越不容易提升。
比如斯坦福教授Percy Liang就指出,合成數據缺乏珍貴的「人性」,以至於基於合成數據訓練的大模型並不足以達到AGI。更為重要的是,合成數據可以用來驗證或擴展人類已經的領域,卻無法揭示初始數據集中不存在的領域,它的邊界就是初始數據集的邊界。
故而,Meta基於Llama 2生成的合成數據訓練了Llama 3在理論上是有一定可能性的,只不過他們並沒有告訴大家,這一過程到底花費了多少人力、多少時間。儘管合成數據確實會比真實數據更便宜,但剔除不合格的合成數據到底需要花費多少成本還是未知數。
如果合成數據真的在各方面都比真實數據便宜,即使頂著幻覺和AI倫理的問題,各大AI廠商也沒道理繼續盯著由人類生成的數據了。