如今,想訓(xùn)個(gè)SOTA的大模型,不僅缺數(shù)據(jù)和算力,甚至連電都不夠用了。 最近馬斯克就公開表示,因?yàn)榭嘤谫I不到足夠的芯片,xAI只能推遲Gork 2的訓(xùn)練和發(fā)布。 Grok 3及更高版本,甚至需要10萬(wàn)個(gè)H100,按每臺(tái)H100售價(jià)3萬(wàn)美元來(lái)算,僅芯片就要花掉28億美元。 那么問(wèn)題來(lái)了,有沒(méi)有一種可能,只用更少的算力,就讓大模型實(shí)現(xiàn)更高的性能? 就在5月28日,浪潮信息給業(yè)界打了個(gè)樣——全面開源MoE模型「源2.0-M32」! 簡(jiǎn)單來(lái)說(shuō),源2.0-M32是一個(gè)包含了32個(gè)專家(Expert)的混合專家模型,總參數(shù)量達(dá)到了400億,但激活參數(shù)僅37億。 開源項(xiàng)目地址:https://github.com/IEIT-Yuan/Yuan2.0-M32 基于算法、數(shù)據(jù)和算力方面的全面創(chuàng)新,源2.0-M32的模型性能得到了大幅提升,一句話總結(jié)就是:模更強(qiáng),算更優(yōu)! 在業(yè)界主流的基準(zhǔn)評(píng)測(cè)中,它的性能也能直接全面對(duì)標(biāo)Llama 3-70B! 32個(gè)小模型,挑戰(zhàn)700億Llama3巨獸 話不多說(shuō),先看跑分: 直觀可見,在MATH和ARC-Challenge基準(zhǔn)測(cè)試中,源2.0-M32的準(zhǔn)確率分別為55.89和95.8,超過(guò)了Llama 3-70B。 甚至在編碼、MMLU中,M32實(shí)現(xiàn)了與Llama 3-70B相當(dāng)?shù)男阅堋?/span> 在代碼生成任務(wù)中,源2.0-M32的性能僅次于DeepseekV2和Llama 3-70B,并遠(yuǎn)遠(yuǎn)超過(guò)其他模型。 與DeepseekV2相比,M32模型每個(gè)token使用的激活參數(shù)不到其1/4,計(jì)算量不足其1/5,而準(zhǔn)確率達(dá)到其90%以上的水平。 而與Llama 3-70B相比,模型激活參數(shù)和計(jì)算量的差距更大,但M32仍達(dá)到了其91%的水平。 在代碼能力上,源2.0-M32不僅通過(guò)了近3/4的HumananEval測(cè)試題,而且在經(jīng)過(guò)14個(gè)樣本的學(xué)習(xí)之后,準(zhǔn)確率更是提升到了78%。 就數(shù)學(xué)任務(wù)結(jié)果來(lái)看,源2.0-M32在MATH基準(zhǔn)測(cè)試中得分最高。 與Mixtral-8×7B相比,M32的激活參數(shù)只有它的約0.29倍,但性能卻高出了近一倍。 在GSM8K基準(zhǔn)上,M32的性能與Llama 3-70B非常接近,并且超過(guò)了其他模型。 比如在回答「100-200之間,所有7的倍數(shù)的和是多少」的問(wèn)題中,M32和Llama 3-70B的PK結(jié)果如下。 因?yàn)閷?duì)中文理解上的優(yōu)勢(shì),M32成功給出了正確答案,而Llama 3-70B就不幸翻車了。 當(dāng)然,面對(duì)英文的數(shù)學(xué)題,M32也沒(méi)在怕的。 注意,這道題的題干中提出了一個(gè)要求——分母應(yīng)該是有理數(shù),M32非常準(zhǔn)確地獲知了這一點(diǎn),因而把1/√3變成了√3/3。 這就有點(diǎn)意思了。 下面這道題,要求計(jì)算997的的逆元,也即使997乘以某個(gè)數(shù),讓它對(duì)100的求余為1。 源2.0-M32非常準(zhǔn)確地理解了這個(gè)過(guò)程,而且通過(guò)一步步的迭代,準(zhǔn)確地求解出了一個(gè)具體數(shù)值。 而看這邊的Llama 3-70B,很明顯就沒(méi)有理解題干,也沒(méi)有構(gòu)建出準(zhǔn)確的求解關(guān)系,結(jié)果也是錯(cuò)的。 在多語(yǔ)言測(cè)試MMLU中,源2.0-M32的表現(xiàn)雖然不及規(guī)模更大的模型,但優(yōu)于Mixtral-8×7B、Phi-3-mini和Llama 3-8B。 最后,在推理挑戰(zhàn)中,源2.0-M32在解決復(fù)雜科學(xué)問(wèn)題方面表現(xiàn)出色,同樣超越了Llama 3-70B。 創(chuàng)新的架構(gòu)和算法 源2.0-M32研發(fā)的初衷,就是為了大幅提升基礎(chǔ)模型的模算效率。 為了提升模型能力,很多人都會(huì)沿用當(dāng)前的路徑,但在浪潮信息看來(lái),要讓模型能力真正快速提升,就一定要從算法層面、從模型架構(gòu)層面做探索和創(chuàng)新。 從模型名字中便可以看出,源2.0-M32是基于「源2.0」模型構(gòu)建的,是包含32個(gè)專家的MoE模型。 它沿用并融合局部過(guò)濾增強(qiáng)的注意力機(jī)制(Localized Filtering-based Attention),通過(guò)先學(xué)習(xí)相鄰詞之間的關(guān)聯(lián)性,然后再計(jì)算全局關(guān)聯(lián)性的方法,更好地學(xué)習(xí)到了自然語(yǔ)言的局部和全局的語(yǔ)言特征。 因此,它對(duì)于自然語(yǔ)言的關(guān)聯(lián)語(yǔ)義理解更準(zhǔn)確,模型精度就得到了提升。 論文地址:https://arxiv.org/pdf/2405.17976 圖1左展示了「源2.0」架構(gòu)通過(guò)引入MoE層實(shí)現(xiàn)模型Scaling,其中MoE層取代了源2.0中的前饋層。 圖1右放大顯示了M32的MoE層的結(jié)構(gòu),每個(gè)MoE層由一組單獨(dú)的密集前饋網(wǎng)絡(luò)(FFN)作為專家組成。 專家之前的門控網(wǎng)絡(luò)將輸入的token,分配給總共32個(gè)相關(guān)的專家中的2個(gè)(圖中以4個(gè)專家做為示例)。 源2.0-M32結(jié)構(gòu)示意圖,其中MoE層取代了源2.0中的前饋層 其中,選擇32個(gè)專家的原因是,比起8個(gè)、16個(gè)專家,32個(gè)專家的訓(xùn)練損失最低,效果最好。 最終,雖然在推理過(guò)程中,32個(gè)專家每次只激活2個(gè),激活參數(shù)只有37億,但是M32在處理邏輯、代碼方面,精度可以對(duì)標(biāo)Llama 3-70B。 全新門控網(wǎng)絡(luò)Attention Router在LFA之后,針對(duì)MoE結(jié)構(gòu)中核心的門控網(wǎng)絡(luò),團(tuán)隊(duì)做了另外一個(gè)算法創(chuàng)新。 需要明確的是,混合專家模型由兩個(gè)核心部分組成:一是門控網(wǎng)絡(luò)(Gate),二是若干數(shù)量的專家(Expert)。 這當(dāng)中,「門控機(jī)制」起著最關(guān)鍵的作用。 它通常會(huì)采用神經(jīng)網(wǎng)絡(luò),根據(jù)輸入的數(shù)據(jù)特征,為每個(gè)專家模型分配一個(gè)權(quán)重,從而決定哪些專家模型對(duì)當(dāng)前任務(wù)更為重要。 簡(jiǎn)言之,通過(guò)計(jì)算token分配給各個(gè)專家的概率,來(lái)選擇候選專家參與計(jì)算。 顯然,門控網(wǎng)絡(luò)的選擇機(jī)制,對(duì)于模型的推理能力、運(yùn)行效率起著關(guān)鍵的作用。 當(dāng)前,流行的MoE結(jié)構(gòu)大都采用簡(jiǎn)單的調(diào)度策略——將token與代表每個(gè)專家的特征向量進(jìn)行點(diǎn)積,隨后挑選點(diǎn)積結(jié)果最大的專家。 然而,這一方法的弊端是,只將各個(gè)專家特征向量視為獨(dú)立的,進(jìn)而忽略了它們之間的相關(guān)性,無(wú)疑會(huì)降低模型的精度。 為了攻克這一難題,源2.0-M32創(chuàng)新性提出了新型的算法結(jié)構(gòu):基于注意力機(jī)制的門控網(wǎng)絡(luò)(Attention Router),創(chuàng)造了一種專家間協(xié)同性的度量方法。 新策略可以在計(jì)算過(guò)程中,將輸入樣本中任意兩個(gè)token,通過(guò)一個(gè)計(jì)算步驟直接聯(lián)系起來(lái)。 這樣一來(lái),就可以解決傳統(tǒng)的門控機(jī)制中,選擇兩個(gè)或多個(gè)專家參與計(jì)算時(shí)關(guān)聯(lián)性缺失的問(wèn)題。 最終選擇的時(shí)候,這種策略選擇的專家不僅絕對(duì)數(shù)值會(huì)比較高,兩個(gè)專家協(xié)同的時(shí)候,自身的屬性也會(huì)更相似。 舉個(gè)通俗易懂的栗子: 就好比在一個(gè)醫(yī)院中,主任要去做手術(shù),一定是選擇自己最這個(gè)領(lǐng)域最專業(yè)、且自己最熟悉的組員,這樣大家的配合程度才會(huì)更好。 果然,與經(jīng)典路由結(jié)構(gòu)的模型相比,Attention Router讓LLM準(zhǔn)確率提升了3.8%。 總之,Attention Router算法可以讓使得專家之間協(xié)同處理數(shù)據(jù)的水平和效能大為提升,從而實(shí)現(xiàn)以更少的激活參數(shù),達(dá)到更高的智能水平。 算力消耗只需700億Llama3的1/19算力層面,源2.0-M32綜合運(yùn)用了流水線并行+數(shù)據(jù)并行的策略,顯著降低了大模型對(duì)芯片間P2P帶寬的需求,為硬件差異較大訓(xùn)練環(huán)境提供了一種高性能的訓(xùn)練方法。 正是基于算法和算力上創(chuàng)新優(yōu)化,源2.0-M32實(shí)現(xiàn)了在三個(gè)階段——預(yù)訓(xùn)練、推理和微調(diào)過(guò)程中,超高的模算效率。 這一突破,讓MoE模型性能媲美Llama 3-70B,也顯著降低了單token訓(xùn)練和推理所需的算力資源。 訓(xùn)練在智能水平相當(dāng)?shù)那闆r下,源2.0-M32微調(diào)/訓(xùn)練時(shí)每token所需的算力資源最低——僅為22.2 Gflops/token。 相比起Llama 3-70B的420Gflops/token,源2.0-M32的需求只有其1/19。 推理在相同條件下進(jìn)行測(cè)試后可以發(fā)現(xiàn),M32處理每token所需算力為7.4Gflops,而Llama 3-70B所需算力為140Gflops。 也就是說(shuō),源2.0-M32的推理算力消耗也僅是Llama 3-70B的1/19。 微調(diào)在微調(diào)階段,M32只需消耗約0.0026PD(PetaFlops-Day),就可以完成對(duì)1萬(wàn)條平均長(zhǎng)度為1024 token的樣本進(jìn)行全量微調(diào),而Llama3則需消耗約0.05PD的算力。 更直觀來(lái)講,源2.0-M32在支持BF16精度的2顆CPU服務(wù)器上,約20小時(shí)即可完成這1萬(wàn)條樣本的全量微調(diào)。 而同樣條件之下的Llama 3-70B,完成全量微調(diào)約為16天。 近50%訓(xùn)練數(shù)據(jù)都是代碼眾所周知,豐富、全面、高質(zhì)量的數(shù)據(jù)集,是LLM預(yù)訓(xùn)練核心。 這次,源2.0-M32使用了2萬(wàn)億(2T)token進(jìn)行訓(xùn)練。 且代碼數(shù)據(jù)占比最高,幾乎近一半(47.46%),而且從6類最流行的代碼擴(kuò)充至619類,并通過(guò)對(duì)代碼中英文注釋的翻譯,將中文代碼數(shù)據(jù)量增大至1800億token,占比約8.0%。 此外,占比第二高的預(yù)料數(shù)據(jù)來(lái)自中英文互聯(lián)網(wǎng)(25.18%),有效提升了模型的知識(shí)實(shí)時(shí)性與跨領(lǐng)域、跨語(yǔ)言應(yīng)用效果。 之所以加入了如此之多的代碼數(shù)據(jù),是因?yàn)槠浔旧砭途哂蟹浅G逦倪壿嬓浴?/span> 當(dāng)模型在海量的代碼數(shù)據(jù)上完成「高強(qiáng)度」訓(xùn)練之后,不僅可以在代碼生成、代碼理解、代碼推理上取得出色的表現(xiàn),而且還能在邏輯推理、數(shù)據(jù)求解等方面獲得可觀的提升。 源2.0-M32的性能隨著訓(xùn)練數(shù)據(jù)的增加而增強(qiáng),且過(guò)程十分穩(wěn)定 模更強(qiáng),算更優(yōu),是終解! 可以看出,浪潮信息的MoE模型,在榜單上基本上達(dá)到了Llama 3的水平,甚至有些可以超越Llama 3。 然而最大的不同,就是浪潮信息顯著降低了單個(gè)token在訓(xùn)練推理和微調(diào)過(guò)程中的算力消耗。 由此,大模型訓(xùn)練和應(yīng)用過(guò)程中的門檻也隨之降低,高智能水平的模型就能更順利地普及到千行百業(yè)當(dāng)中去。 浪潮信息之所以選擇攻堅(jiān)這個(gè)問(wèn)題,也是他們長(zhǎng)期「深根沃土」,服務(wù)行業(yè)客戶的深刻認(rèn)知。 在浪潮信息看來(lái),如今大模型智能水平提升,但背后所面臨的算力消耗,卻大幅攀升! 對(duì)企業(yè)落地,是極大的困難和挑戰(zhàn)。 由此,找到一種「模型水平高、算力門檻低」的技術(shù)方式就變得很重要。這也是我們?cè)陂_頭所想強(qiáng)調(diào)的「模算效率」。這個(gè)指標(biāo)不僅是大模型創(chuàng)新的關(guān)鍵,也是企業(yè)真正應(yīng)用大模型的關(guān)鍵。 為什么這么說(shuō)?讓我們來(lái)舉個(gè)例子。 如果Llama 3-70B的每個(gè)token推理是140GFlops,用這個(gè)實(shí)際精度除以每token的推理算力,就可以得到一個(gè)模型的算力效率。 結(jié)果顯示,Llama 3的模型精度很高,但推理時(shí)的算力開銷將極大。這也就意味著,在單位算力下,它的相對(duì)精度是比較差的。 與之形成鮮明對(duì)比的,就是Mistral的8×7B模型。雖然它和Llama 3有較大差距,但它激活專家的參數(shù)量較小,所以模算效率反而更高。 追求模算效率,因?yàn)樗饬x非常深遠(yuǎn)。 比如,一個(gè)5000億的Dense模型,訓(xùn)練20T token的話,需要的算力開銷是巨大的。因此,如果能獲得很高的模算效率,我們就能在更多token上,訓(xùn)練更大參數(shù)的模型。 第二點(diǎn),從推理上來(lái)說(shuō),模算效率也極有意義。企業(yè)類用戶的推理都需要本地化部署,需要購(gòu)買算力設(shè)備。 在這種情況下,給定精度水平下的推理回報(bào)就會(huì)顯出差別。 比如Mistral 8×22B和Llama 3-70B,二者的精度差別雖然不大,但前者的模算效率就會(huì)很高, 此前,業(yè)內(nèi)更加關(guān)注的是單個(gè)維度,即平均精度的提升。 而在大模型進(jìn)入快速落地的當(dāng)下,我們顯然就需要從模算效率上來(lái)考慮精度和開銷了。 此外,模算效率的提升也讓LLM微調(diào)的門檻和成本大幅降低,這就能讓高智能模型更加易于企業(yè)應(yīng)用開發(fā),實(shí)現(xiàn)智能落地。 尤其是考慮到現(xiàn)在,「微調(diào)」已成企業(yè)應(yīng)用大模型的關(guān)鍵環(huán)節(jié)。 因?yàn)樗芙Y(jié)合特定業(yè)務(wù)場(chǎng)景和專業(yè)數(shù)據(jù)對(duì)LLM完成優(yōu)化,幫助LLM在專用場(chǎng)景中提高生成準(zhǔn)確性、可解釋性,改善「幻覺」問(wèn)題。 一如既往,全面開源 堅(jiān)持開源,也是浪潮信息一直以來(lái)的傳統(tǒng)。 2021年,這家公司便開始布局大模型算法開發(fā),同年首次發(fā)布了2457億參數(shù)的「源1.0」中文語(yǔ)言大模型,并全面開源,在業(yè)界樹立了千億模型的新標(biāo)桿。 值得一提的是,「源1.0」的MFU高達(dá)44%,可見算力利用率非常高。 而當(dāng)時(shí)GPT-3的MFU只有22%,也就是說(shuō)有近80%的算力被浪費(fèi)掉了。 彼時(shí)的浪潮信息團(tuán)隊(duì)還開源近5TB的中文數(shù)據(jù)集,在國(guó)內(nèi)100+個(gè)大模型廠商中,有近50個(gè)LLM的訓(xùn)練中得到應(yīng)用。 之后,歷時(shí)近2年研發(fā),2023年,浪潮信息將千億參數(shù)基礎(chǔ)大模型從1.0升級(jí)到「源2.0」。 「源2.0」包含了三種參數(shù)規(guī)模,1026億、518億、21億,并在代碼編程、邏輯推理、數(shù)學(xué)計(jì)算等領(lǐng)域展現(xiàn)出領(lǐng)先的性能。 論文地址:https://arxiv.org/ftp/arxiv/papers/2311/2311.15786.pdf 這一次,升級(jí)后的2.0版本同樣采取了「全面開放開源」的策略,全系列模型的參數(shù)、代碼,均可免費(fèi)下載和商用。 「源2.0」也在不斷進(jìn)行版本更新,并針對(duì)代碼能力、數(shù)理邏輯、推理速度等方面完成深度優(yōu)化。 浪潮信息還提供了豐富的預(yù)訓(xùn)練、微調(diào)以及推理服務(wù)腳本,并與流行框架工具全面適配,比如LangChain、LlamaIndex等。 正如前面所述,「源2.0-M32」 將繼續(xù)采用全面開源策略,又將給開源社區(qū)添磚增瓦,留下濃墨重彩的一筆。 首席科學(xué)家吳韶華表示,「當(dāng)前業(yè)界大模型在性能不斷提升的同時(shí),也面臨著所消耗算力大幅攀升的問(wèn)題,這也對(duì)企業(yè)在落地應(yīng)用大模型時(shí)帶來(lái)了極大的困難和挑戰(zhàn)」。 降低應(yīng)用門檻除了全面開源之外,浪潮信息還通過(guò)發(fā)布方便可用的工具,進(jìn)一步降低了大模型應(yīng)用的門檻。 今年4月,企業(yè)大模型開發(fā)平臺(tái)「元腦企智」(EPAI)正式推出,為企業(yè)LLM訓(xùn)練提供了更加高效、易用、安全的端到端開發(fā)工具。 從數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、知識(shí)檢索、應(yīng)用框架等系列工具全覆蓋,且支持多元算力和多模算法。 EPAI提供了非常豐富的基礎(chǔ)數(shù)據(jù),規(guī)模達(dá)1億+,同時(shí)提供自動(dòng)化的數(shù)據(jù)處理工具,幫助行業(yè)伙伴和企業(yè)客戶整理行業(yè)數(shù)據(jù)和專業(yè)數(shù)據(jù),減少針對(duì)不同落地場(chǎng)景中出現(xiàn)的「幻覺」。 對(duì)于企業(yè)來(lái)說(shuō),甚至是企業(yè)小白用戶,EPAI可以幫助他們高效部署開發(fā)AI應(yīng)用,能夠釋放極大的商業(yè)價(jià)值。 如今,源2.0-M32也將集成到EPAI大模型庫(kù),幫助企業(yè)加快AI應(yīng)用落地的步伐。 在算力愈發(fā)緊俏的當(dāng)下,浪潮信息用「模更強(qiáng) 算更優(yōu)」的M32交出了答卷,讓整個(gè)業(yè)內(nèi)為之振奮。 接下來(lái),我們等待它的更多驚喜! 參考資料: https://github.com/IEIT-Yuan/Yuan2.0-M32 https://huggingface.co/IEITYuan/Yuan2-M32-hf https://modelscope.cn/models/YuanLLM/Yuan2-M32-hf/summary 本文來(lái)源:新智元 |
原創(chuàng)欄目
IT百科
網(wǎng)友評(píng)論
聚超值•精選