小模型站起來了,瀏覽器里跑出SOTA,抱抱臉:快逃,合成數據不是未來
瀏覽器里直接能跑的SOTA小模型來了,分別在2億、5億和20億級別獲勝,抱抱臉出品。
秘訣只有兩個:
- 狠狠地過濾數據
- 在高度過濾的數據集上狠狠地訓練
抱抱臉首席科學家Thomas Wolf,總結團隊在開發(fā)小模型時的經驗,拋出新觀點,引起業(yè)界關注:
合成數據目前只在特定領域有用,網絡是如此之大和多樣化,真實數據的潛力還沒完全發(fā)揮。
目前360M模型版本已發(fā)布Demo,在線可玩(注意流量)。
在瀏覽器里調用本地GPU運行,連模型權重帶網頁前端UI,400MB搞定。
嚴格過濾網絡數據,性能直線上升
針對微軟Phi系列小模型,聲稱使用了一半合成數據,效果很好,但不公開數據。
開源界扛把子抱抱臉看不下去了:
造一個對標的大型合成數據集,開源它。
而且,團隊隱隱暗示了,此舉也有檢驗微軟在測試集上刷榜的傳聞,到底有沒有這回事的考慮。
抱抱臉使用當時最好的開源模型Mixtral-8-7B構造了25B合成數據。
訓練出來的模型效果還不錯,但仍然在某種程度上低于Phi-1和Phi-1.5的水平。
他們嘗試了讓大模型在中學水平上解釋各種主題,最終只有在MMLU測試上表現不好,因為MMLU是博士水平的題目。
真正的性能突破,反而來自一項支線任務:
除了用大模型從頭生成合成數據,也試試用大模型篩選過濾網絡數據。
具體來說是使用Llama3-70B-Struct 生成的標注開發(fā)了一個分類器,僅保留FineWeb數據集中最具教育意義的網頁。
使用經過嚴格過濾的網絡數據后,性能直線上升,并在大多數基準測試中超過了所有其他類似大小的模型,包括Phi-1.5。
抱抱臉團隊稱這項實驗結果是“苦樂參半”的:雖然模型性能前所未有的高,但也顯示出了合成數據還是比不過真實數據。
后來他們用同樣的思路從自然語言擴展到代碼,過濾的代碼數據集也被證明是非常強大的。
將HumanEval基準測試成績從13%左右直接提高到20%以上。
最終他們構造的混合數據集中,去重的過濾數據集占絕大部分,純合成數據Cosmopedia v2只占15%。
所以總得來說,合成數據還有用嗎?
團隊認為,可能只對確實缺少真實數據的領域更有意義了,比如推理和數學。
即使小模型也要訓練數萬億tokens
就在他們對這些新發(fā)現和結果感到興奮時,一位新實習生Elie Bakouch加入了。
雖然他當時只是實習生,但確是一位精通各類訓練技巧的專家。
在Elie的幫助下,團隊將模型尺寸從1.7B開始下降到360M甚至170M,也就是對標經典模型GPT-1、GPT-2和BERT。
在這個過程中有了第二個重要發(fā)現:與過去的共識不同,即使是小模型也要在數萬億token上訓練,時間越長越好。
此外數據退火(Anneal the data)也被證明是有效的,也就是在訓練的最后一部分保留一組特殊的高質量數據。
最終發(fā)布的系列模型適合部署在從智能手機到筆記本電腦的各種設備上,最大的1.7B模型BF16精度只占3G內存。
作為參考,iPhone 15入門版也有6G,安卓手機就更多了。
雖然這次訓練出來的基礎模型足夠好,但團隊也還是發(fā)現一個問題。
過去的對齊和微調技術,如SFT、DPO、PPO等都是針對大模型非常有效,但對小模型效果并不理想。
團隊分析,對齊數據集中包含許多對小模型來說過于復雜的概念,并且缺乏精心設計的簡單任務。
下一個新坑也挖好了,有興趣的團隊可以開始搞起,沒準就成了小模型大救星。
在線試玩:https://huggingface.co/spaces/HuggingFaceTB/instant-smollm