兩只羊駝掐頭去尾拼一起,屠榜HuggingFace
HuggingFace開源大模型排行榜,又被屠榜了。
前排被清一色的SOLAR 10.7B微調版本占據(jù),把幾周之前的各種Mixtral 8x7B微調版本擠了下去。
SOLAR大模型什么來頭?
相關論文剛剛上傳到ArXiv,來自韓國公司Upstage AI,使用了新的大模型擴展方法depth up-scaling(DUS)。
簡單來說就是兩只7B羊駝掐頭去尾,一只砍掉前8層,一只砍掉后8層。
剩下兩個24層縫合在一起,第一個模型的第24層與第二個模型的第9層拼接,最后變成新的48層10.7B大模型。
論文聲稱新方法超過傳統(tǒng)擴展方法如MoE,而且可以與沿用基礎大模型完全相同的基礎設施。
不需要門控網(wǎng)絡等附加模塊,針對MoE優(yōu)化訓練框架了,也不需要自定義CUDA內核來快速推理,可以無縫集成到現(xiàn)有方法中,同時保持高效。
團隊選擇7B規(guī)模最強的單體大模型Mistral 7B作為底材,用新方法拼接起來,再超越原版以及MoE版。
同時,經(jīng)過對齊的Instruct版本也超越對應的MoE Instruct版本。
將縫合進行到底
為什么是這種拼接方式,論文中介紹來自一種直覺。
從最簡單的擴展方式開始,也就是把32層的基礎大模型重復兩次,變成64層。
這樣做的好處是不存在異質性,所有層都來自基礎大模型,但第32層和第33層(與第1層相同)的接縫處有較大的“層距離”(layer distance)。
之前有研究表明,Transformer不同層做不同的事,如越深的層擅長處理越抽象的概念。
團隊認為層距離過大可能妨礙模型有效利用預訓練權重的能力。
一個潛在的解決方案是犧牲中間層,從而減少接縫處的差異,DUS方法就從這里誕生。
根據(jù)性能與模型尺寸的權衡,團隊選擇從每個模型中刪除8層,接縫處從32層連第1層,變成了24層連第9層。
簡單拼接后的模型,性能一開始還是會低于原版基礎模型,但經(jīng)過繼續(xù)預訓練可以迅速恢復。
在指令微調階段,除了使用開源數(shù)據(jù)集,還制作了數(shù)學強化數(shù)據(jù)集,對齊階段使用DPO。
最后一步,把使用不同數(shù)據(jù)集訓練的模型版本加權平均,也是把縫合進行到底了。
有網(wǎng)友質疑測試數(shù)據(jù)泄露的可能性。
團隊也考慮到這一點,在論文附錄中專門報告了數(shù)據(jù)污染測試結果,顯示出低水平。
最后,SOLAR 10.7B基礎模型和微調模型都以Apache 2.0協(xié)議開源。
試用過的網(wǎng)友反饋,從JSON格式數(shù)據(jù)中提取數(shù)據(jù)表現(xiàn)不錯。
論文地址:https://arxiv.org/abs/2312.15166