預訓練數據正在枯竭——運算資源的增長速度遠超可用網路文本的增長速度。當數據成為瓶頸時,如何從有限的真實數據中榨取更多價值?史丹佛大學的一項研究給出了一個出人意表的答案:把同一篇文件的多個合成變體「縫合」成一篇超長的「巨型文件」(megadoc),數據效率可從1.48倍提升至1.80倍。
問題的起點:合成數據能改善原始分佈的建模嗎?
論文關注一個核心問題:當預訓練受數據量限制而非算力限制時,合成數據增強能否降低模型在原始網路文本分佈上的驗證損失(i.i.d. loss)?這裡的關鍵在於「原始分佈」——合成數據來自完全不同的分佈,它對建模原始數據到底有沒有用?
論文的實驗設置非常明確:使用2億(200M)真實token(來自164,000篇DCLM文件),訓練一個過參數化的3億(300M)參數自回歸Transformer,上下文長度4096,目標是在無限訓練算力下訓練出最好的模型。合成數據生成器使用Llama 3.1 8B Instruct。
第一步:簡單改寫就能帶來顯著提升
論文首先測試了最簡單的合成數據方法:對每篇真實文件生成多個英文維基百科風格的改寫,溫度設為1,最大生長度1024 token。平均每篇改寫文件708 token,比原始DCLM文件的平均長度1243 token更短。
[Figure 2: 擴展合成生成數量] 左圖展示了隨著每篇文件的改寫數量G增加,i.i.d.驗證損失單調下降的趨勢,在32次改寫時趨近高原期。右圖顯示下游基準測試的準確率提升與損失改善趨勢一致。
訓練時,論文將數據分為兩個流:真實數據流和合成數據流(包含G×D篇改寫加D篇原始文件),通過精細調節混合比例和epoch數來訓練。基線模型在2億真實token上取得3.55的i.i.d.損失,而混合32次改寫後,損失降至3.41,對應1.48倍數據效率提升。下游任務(PIQA、SciQ、ARC Easy)的平均準確率提升了5%。
但問題來了:損失曲線在32次改寫附近明顯趨於高原期,繼續增加生成次數收益甚微。
核心創新:從「多篇短文件」到「一篇巨型文件」
標準改寫方法將所有合成文件當作獨立樣本隨機打亂訓練,但這忽略了一個重要結構——同一篇真實文件背後的多個合成變體是高度相關的。論文提出了一個全新的視角:將同一文件的多個合成生成拼接成一篇超長的「megadoc」(巨型文件)。
[Figure 3: 巨型文件的合成數據流] 簡單改寫將所有生成結果和真實文件隨機排列;縫合改寫將同一真實文件的所有改寫拼接在一起,真實文件可以放在最前或最後;潛在思維則在文件的固定分割點插入連接前綴和後綴的推理鏈。
論文提出了兩種構造megadoc的方法:
(1)縫合改寫: 受In-context Pre-training(ICPT)啟發,將同一真實文件的G篇改寫與原文用EOS連接成一篇長文件。與ICPT需要對整個語料庫做嵌入和高相似度遍歷不同,縫合合成數據幾乎是零成本的,因為先驗就知道哪些生成結果彼此相關。實驗發現,將真實文件放在megadoc末尾效果最好。論文推測這與「逆向任務更難但更有價值」有關——從簡化的改寫還原出更詳細的真實文件,能讓模型學到更可遷移的結構。
(2)潛在思維: 受Latent Thoughts方法啟發,將每篇文件分成G+1等長片段,在每個分割點讓生成器產出一段從前綴推導後綴的推理鏈,用標籤包裹後插入原文。平均每段思維只有424 token,比平均改寫的708 token更短。
[Figure 1: 通過擴展生成數量和利用巨型文件來增強合成數據] 基線模型達到3.55損失。簡單改寫(橙色)隨生成次數增加而單調改善但趨於高原期。縫合改寫(藍色)和潛在思維(灰色)不僅損失更低,且在生成次數增加時高原效應更弱。
效果:數據效率從1.48倍躍升至1.80倍
[Figure 5: 縫合和潛在思維的生成數量擴展] 縫合改寫和潛在思維在i.i.d.損失、長上下文損失和下游基準準確率上均優於簡單改寫,且改善幅度隨生成次數增加而擴大。
在32次生成時,縫合改寫達到1.64倍數據效率,潛在思維達到1.80倍數據效率,均顯著優於簡單改寫的1.48倍。更重要的是,megadoc方法的收益隨生成次數增加而持續擴大:在4次生成時最佳改善為0.02,到32次生成時擴大為0.07。下游基準測試的平均準確率分別提升了6%和9%。
在長上下文任務上,效果更為突出。在arXiv電腦科學論文上測試,32次生成時分別獲得了0.14和0.19的損失改善。論文還驗證了megadoc方法在短文件(600 token以下)上同樣比簡單改寫擴展得更好,說明收益並非僅限於長上下文。
為什麼megadoc的擴展性更好?
論文將megadoc的優勢歸因於兩個效應的疊加:megadoc本身帶來的常數級損失改善,以及允許更長時間訓練而不過擬合的能力。具體來說,縫合改寫允許將真實數據的epoch數從16提升到32,混合比例從0.75提升到0.9,總訓練步數增加了約5倍而不出現過擬合。
[Figure 6: 巨型文件受益於更多的真實和合成數據訓練步數] 控制訓練步數後,megadoc仍有改善但不再隨生成次數擴展,說明更長訓練是其優勢擴展性的關鍵來源。
與集成方法的組合
論文進一步驗證了合成數據方法能否與集成這一強效數據效率方法疊加。結果表明,自蒸餾不能與集成組合——集成自蒸餾模型的漸近損失(3.32)與標準集成(3.31)幾乎相同。而簡單改寫、縫合改寫和潛在思維三種方法都能與集成組合,每種方法都將集成漸近損失改善了至少0.12。
[Figure 7: 改寫與集成的組合] 自蒸餾無法改善集成漸近線,而三種合成數據增強方法均能改善集成漸近線,表明其收益與集成和自蒸餾具有本質區別。
結論
論文使用了比學生模型更強的外部生成器。但三條證據支持合成數據收益並非純粹的蒸餾產物:(1)將學生模型從3億擴大到15億後,三種方法的損失改善幅度都更大而非更小;(2)先前工作證明Llama 3.1 8B Instruct可以通過自生成改寫實現自我改善;(3)多項研究發現,改寫生成器的能力在超過一定規模後不再顯著幫助,暗示改寫更像是一種增強手段而非蒸餾。
合成數據的價值不僅在於「造更多數據」,更在於構造出更好的學習任務。從把多篇獨立文件縫合成一篇megadoc這個簡單的視角轉變中,論文展示了當數據受限時,如何設計能隨運算資源增長而持續受益的合成數據演算法。
原文標題:Data-efficient pre-training by scaling synthetic megadocs