hao86下載站:值得大家信賴的游戲下載站!

首頁(yè) > 區(qū)塊鏈 > 評(píng)測(cè)超Llama2,混合專家模型(MoE)會(huì)是大模型新方向嗎?

評(píng)測(cè)超Llama2,混合專家模型(MoE)會(huì)是大模型新方向嗎?

時(shí)間:2024-01-01 10:16:13
來(lái)源:hao86下載
區(qū)塊鏈

【#區(qū)塊鏈# #評(píng)測(cè)超Llama2,混合專家模型(MoE)會(huì)是大模型新方向嗎?#】

文章來(lái)源:Founder Park

圖片來(lái)源:由無(wú)界 AI生成

混合專家模型(MoE)成為最近關(guān)注的熱點(diǎn)。

先是 Reddit 上一篇關(guān)于 GPT-4 結(jié)構(gòu)的猜測(cè)帖,暗示了 GPT-4 可能是由 16 個(gè)子模塊組成的專家模型(MoE)的混合體。據(jù)說(shuō),這 16 個(gè)子模塊中的每一個(gè) MoE 都有 1110 億個(gè)參數(shù)(作為參考,GPT-3 有 1750 億個(gè)參數(shù))。盡管不能 100% 確定,但 GPT-4 是一個(gè) MoE 組成的集群這個(gè)事很可能是真的。

然后是法國(guó) AI 公司 MistralAI 發(fā)布了全球首個(gè)基于混合專家技術(shù)的大模型 Mistral-8x7B-MoE,是 8 個(gè) 70 億參數(shù)規(guī)模大模型的混合。

主要特點(diǎn)如下:

  • 它可以非常優(yōu)雅地處理 32K 上下文數(shù)據(jù);
  • 除了英語(yǔ)外,在法語(yǔ)、德語(yǔ)、意大利語(yǔ)和西班牙語(yǔ)表現(xiàn)也很好;
  • 在代碼能力上表現(xiàn)很強(qiáng);
  • 指令微調(diào)后 MT-Bench 的得分 8.3 分(GPT-3.5 是 8.32、LLaMA2 70B 是 6.86);

Mistral-7B×8-MoE 是首個(gè)被證明有效的開(kāi)源的 MoE LLM,相比于早期的 Switch Transformer、GLaM 等研究,Mistral-7B×8-MoE 證明了 MoE 真的可以落地,且效果遠(yuǎn)好于相同激活值的 Dense 模型。

而在最近的一個(gè)評(píng)測(cè)中,Mistral-8x7B-MoE 經(jīng)過(guò)微調(diào)后的表現(xiàn)超過(guò)了 Llama2-65B。

到底什么是 MoE,它會(huì)是未來(lái)大模型訓(xùn)練的新方向嗎?

Founder Park 整理了公眾號(hào)「HsuDan」、「深度人工智能」對(duì)于 MOE 的介紹。更詳細(xì)的技術(shù)解讀,可以參見(jiàn) Hugging Face 官方對(duì) MoE 的詳細(xì)技術(shù)解讀。


01 MoE 的前世今生


混合專家模型(MixtureofExperts:MoE)的思想可以追溯到集成學(xué)習(xí),集成學(xué)習(xí)是通過(guò)訓(xùn)練多個(gè)模型(基學(xué)習(xí)器)來(lái)解決同一問(wèn)題,并且將它們的預(yù)測(cè)結(jié)果簡(jiǎn)單組合(例如投票或平均)。集成學(xué)習(xí)的主要目標(biāo)是通過(guò)減少過(guò)擬合,提高泛化能力,以提高預(yù)測(cè)性能。常見(jiàn)的集成學(xué)習(xí)方法包括 Bagging,Boosting 和 Stacking。

集成學(xué)習(xí)在訓(xùn)練過(guò)程中,利用訓(xùn)練數(shù)據(jù)集訓(xùn)練基學(xué)習(xí)器,基學(xué)習(xí)器的算法可以是決策樹(shù)、SVM、線性回歸、KNN 等,在推理過(guò)程中對(duì)于輸入的 X,在每個(gè)基學(xué)習(xí)器得到相應(yīng)的答案后將所有結(jié)果有機(jī)統(tǒng)一起來(lái),例如通過(guò)求均值的方法解決數(shù)值類問(wèn)題,通過(guò)投票方式解決分類問(wèn)題。

MoE 和集成學(xué)習(xí)的思想異曲同工,都是集成了多個(gè)模型的方法,但它們的實(shí)現(xiàn)方式有很大不同。與 MoE 的最大不同的地方是集成學(xué)習(xí)不需要將任務(wù)分解為子任務(wù),而是將多個(gè)基礎(chǔ)學(xué)習(xí)器組合起來(lái)。這些基礎(chǔ)學(xué)習(xí)器可以使用相同或不同的算法,并且可以使用相同或不同的訓(xùn)練數(shù)據(jù)。

MoE 模型本身也并不是一個(gè)全新的概念,它的理論基礎(chǔ)可以追溯到 1991 年由 MichaelJordan 和 GeoffreyHinton 等人提出的論文,距今已經(jīng)有 30 多年的歷史,但至今依然在被廣泛應(yīng)用的技術(shù)。這一理念在被提出來(lái)后經(jīng)常被應(yīng)用到各類模型的實(shí)際場(chǎng)景中,在 2017 年得到了更進(jìn)一步的發(fā)展,當(dāng)時(shí),一個(gè)由 QuocLe,GeoffreyHinton 和 JeffDean 領(lǐng)銜的團(tuán)隊(duì)提出了一種新型的 MoE 層,它通過(guò)引入稀疏性來(lái)大幅提高模型的規(guī)模和效率。

大模型結(jié)合混合專家模型的方法屬于老樹(shù)發(fā)新芽,隨著應(yīng)用場(chǎng)景的復(fù)雜化和細(xì)分化,大模型越來(lái)越大,垂直領(lǐng)域應(yīng)用更加碎片化,想要一個(gè)模型既能回答通識(shí)問(wèn)題,又能解決專業(yè)領(lǐng)域問(wèn)題,似乎 MoE 是一種性價(jià)比更高的選擇。在多模態(tài)大模型的發(fā)展浪潮之下,MoE 大有可能成為 2024 年大模型研究的新方向之一,而大模型也會(huì)帶著 MoE,讓其再次偉大。

下面是近些年一部分 MoE 的應(yīng)用發(fā)展事件,可以看出早期 MoE 的應(yīng)用和 Transformer 的發(fā)展時(shí)間節(jié)點(diǎn)差不多,都是在 2017 年左右。

2017 年,谷歌首次將 MoE 引入自然語(yǔ)言處理領(lǐng)域,通過(guò)在 LSTM 層之間增加 MoE 實(shí)現(xiàn)了機(jī)器翻譯方面的性能提升;

2020 年,Gshard 首次將 MoE 技術(shù)引入 Transformer 架構(gòu)中,并提供了高效的分布式并行計(jì)算架構(gòu),而后谷歌的 Swtich Transformer 和 GLaM 則進(jìn)一步挖掘 MoE 技術(shù)在自然語(yǔ)言處理領(lǐng)域中的應(yīng)用潛力,實(shí)現(xiàn)了優(yōu)秀的性能表現(xiàn);

2021 年的 V-MoE 將 MoE 架構(gòu)應(yīng)用在計(jì)算機(jī)視覺(jué)領(lǐng)域的 Transformer 架構(gòu)模型中,同時(shí)通過(guò)路由算法的改進(jìn)在相關(guān)任務(wù)中實(shí)現(xiàn)了更高的訓(xùn)練效率和更優(yōu)秀的性能表現(xiàn);

2022 年的 LIMoE 是首個(gè)應(yīng)用了稀疏混合專家模型技術(shù)的多模態(tài)模型,模型性能相較于 CLIP 也有所提升。

近期 Mistral AI 發(fā)布的 Mistral 8x7B 模型是由 70 億參數(shù)的小模型組合起來(lái)的 MoE 模型,直接在多個(gè)跑分上超過(guò)了多達(dá) 700 億參數(shù)的 Llama 2。

將混合專家模型(Mixture of Experts:MoE)應(yīng)用于大模型中似乎是不一個(gè)不錯(cuò)的想法,Mistral AI 發(fā)布的 Mistral 8x7B 模型在各項(xiàng)性能和參數(shù)上證明了這一點(diǎn),使用了更少的參數(shù)卻獲得了遠(yuǎn)超于 Llama 2 的效果,這為大模型的發(fā)展提供了一種新的思路。


02 MoE 的核心思想:術(shù)有專攻


「學(xué)有所長(zhǎng),術(shù)有專攻」,古人早已將告訴過(guò)我們?nèi)绾螌?fù)雜的事物簡(jiǎn)單化處理。大模型從早期只處理文本數(shù)據(jù),到后來(lái)需要同時(shí)處理圖像數(shù)據(jù)和語(yǔ)音數(shù)據(jù)的發(fā)展過(guò)程中,其參數(shù)量和模型結(jié)構(gòu)設(shè)計(jì)也越來(lái)復(fù)雜和龐大。

如果說(shuō)單模態(tài)大模型是一個(gè)「特長(zhǎng)生」,那么多模態(tài)大模型就是一個(gè)「全能天才」,想要讓這個(gè)「全能天才」學(xué)習(xí)的更好,那么就需要對(duì)其學(xué)習(xí)任務(wù)分類,安排不同科目的老師進(jìn)行學(xué)習(xí)任務(wù)的輔導(dǎo),這樣才能讓其高效快速的學(xué)習(xí)到各科的知識(shí),在考試的時(shí)候才有可能在各科成績(jī)上有優(yōu)異的表現(xiàn)。

混合專家模型(MixtureofExperts:MoE)正是這樣一個(gè)培養(yǎng)「全能天才」的方法,其核心思想就是先把任務(wù)分門別類,然后分給各個(gè)「專家模型」進(jìn)行解決。混合專家模型(MoE)是一種稀疏門控制的深度學(xué)習(xí)模型,它主要由一組專家模型和一個(gè)門控模型組成。MoE 的基本理念是將輸入數(shù)據(jù)根據(jù)任務(wù)類型分割成多個(gè)區(qū)域,并將每個(gè)區(qū)域的數(shù)據(jù)分配一個(gè)或多個(gè)專家模型。每個(gè)專家模型可以專注于處理輸入這部分?jǐn)?shù)據(jù),從而提高模型的整體性能。

MoE 架構(gòu)的基本原理非常簡(jiǎn)單明了,它主要包括兩個(gè)核心組件:GateNet 和 Experts。GateNet 的作用在于判定輸入樣本應(yīng)該由哪個(gè)專家模型接管處理。而 Experts 則構(gòu)成了一組相對(duì)獨(dú)立的專家模型,每個(gè)專家負(fù)責(zé)處理特定的輸入子空間。

門控模型(GateNet):混合專家模型中「門」是一種稀疏門網(wǎng)絡(luò),它接收單個(gè)數(shù)據(jù)元素作為輸入,然后輸出一個(gè)權(quán)重,這些權(quán)重表示每個(gè)專家模型對(duì)處理輸入數(shù)據(jù)的貢獻(xiàn)。一般是通過(guò) softmax 門控函數(shù)通過(guò)專家或 token 對(duì)概率分布進(jìn)行建模,并選擇前 K 個(gè)。例如,如果模型有三個(gè)專家,輸出的概率可能為 0.5 和 0.4、0.1,這意味著第一個(gè)專家對(duì)處理此數(shù)據(jù)的貢獻(xiàn)為 50%,第二個(gè)專家為 40%,第二個(gè)專家為 10%,這個(gè)時(shí)候的 K 就可以選擇為 2,我們認(rèn)為前兩個(gè)專家模型的建議會(huì)更好,可以用于更加精確的回答中,而第三個(gè)專家模型的建議可以用于更加富有創(chuàng)意性的答案中。

專家模型(Experts):在訓(xùn)練的過(guò)程中,輸入的數(shù)據(jù)被門控模型分配到不同的專家模型中進(jìn)行處理;在推理的過(guò)程中,被門控選擇的專家會(huì)針對(duì)輸入的數(shù)據(jù),產(chǎn)生相應(yīng)的輸出。這些輸出最后會(huì)和每個(gè)專家模型處理該特征的能力分配的權(quán)重進(jìn)行加權(quán)組合,形成最終的預(yù)測(cè)結(jié)果。

混合專家模型在訓(xùn)練過(guò)程中通過(guò)門控模型實(shí)現(xiàn)「因材施教」,進(jìn)而在推理過(guò)程中實(shí)現(xiàn)專家模型之間的「博采眾長(zhǎng)」。MoE 的專家模型可以是小型的 MLP 或者復(fù)雜的 LLM。

在傳統(tǒng)的密集模型中,每個(gè)輸入都必須經(jīng)歷完整的計(jì)算流程,這導(dǎo)致了在處理大規(guī)模數(shù)據(jù)時(shí)的顯著計(jì)算成本。然而,在現(xiàn)代深度學(xué)習(xí)中,稀疏混合專家(MoE)模型的引入為解決這一問(wèn)題提供了一種新的方法。在這種模型中,輸入數(shù)據(jù)只激活或利用了少數(shù)專家模型,而其他專家模型保持不活躍狀態(tài),形成了「稀疏」結(jié)構(gòu)。這種稀疏性被認(rèn)為是混合專家模型的重要優(yōu)點(diǎn),不僅在減少計(jì)算負(fù)擔(dān)的同時(shí),還能提高模型的效率和性能。

MoE模型的優(yōu)勢(shì)在于其靈活性和擴(kuò)展性。由于可以動(dòng)態(tài)地調(diào)整專家網(wǎng)絡(luò)的數(shù)量和類型,MoE 模型可以有效地處理大規(guī)模和復(fù)雜的數(shù)據(jù)集。此外,通過(guò)并行處理不同的專家網(wǎng)絡(luò),MoE 模型還可以提高計(jì)算效率。

在實(shí)際應(yīng)用中,MoE 模型常用于處理需要大量計(jì)算資源的任務(wù),如語(yǔ)言模型、圖像識(shí)別和復(fù)雜的預(yù)測(cè)問(wèn)題。通過(guò)將大型問(wèn)題分解為更小、更易管理的子問(wèn)題,MoE 模型能夠提供更高效和精確的解決方案。


03 MoE 的優(yōu)勢(shì)與缺點(diǎn)


混合專家模型的優(yōu)勢(shì)顯而易見(jiàn),通過(guò) MoE 的方式,可以極大的促進(jìn)大模型的研究和發(fā)展,但也不能忽視其各方面的問(wèn)題,在實(shí)際應(yīng)用中應(yīng)該結(jié)合具體的需求對(duì)各方面的性能和參數(shù)進(jìn)行一個(gè)權(quán)衡。

混合專家模型(Mixture of Experts,MoE)的優(yōu)勢(shì):

混合專家模型(Mixture of Experts,MoE)具有多方面的優(yōu)勢(shì),使其在深度學(xué)習(xí)領(lǐng)域得到廣泛應(yīng)用。以下是一些混合專家模型的優(yōu)勢(shì):

1. 任務(wù)特異性:采用混合專家方法可以有效地充分利用多個(gè)專家模型的優(yōu)勢(shì),每個(gè)專家都可以專門處理不同的任務(wù)或數(shù)據(jù)的不同部分,在處理復(fù)雜任務(wù)時(shí)取得更卓越的性能。各個(gè)專家模型能夠針對(duì)不同的數(shù)據(jù)分布和模式進(jìn)行建模,從而顯著提升模型的準(zhǔn)確性和泛化能力,因此模型可以更好地適應(yīng)任務(wù)的復(fù)雜性。這種任務(wù)特異性使得混合專家模型在處理多模態(tài)數(shù)據(jù)和復(fù)雜任務(wù)時(shí)表現(xiàn)出色。

2. 靈活性:混合專家方法展現(xiàn)出卓越的靈活性,能夠根據(jù)任務(wù)的需求靈活選擇并組合適宜的專家模型。模型的結(jié)構(gòu)允許根據(jù)任務(wù)的需要?jiǎng)討B(tài)選擇激活的專家模型,實(shí)現(xiàn)對(duì)輸入數(shù)據(jù)的靈活處理。這使得模型能夠適應(yīng)不同的輸入分布和任務(wù)場(chǎng)景,提高了模型的靈活性。

3. 高效性:由于只有少數(shù)專家模型被激活,大部分模型處于未激活狀態(tài),混合專家模型具有很高的稀疏性。這種稀疏性帶來(lái)了計(jì)算效率的提升,因?yàn)橹挥刑囟ǖ膶<夷P蛯?duì)當(dāng)前輸入進(jìn)行處理,減少了計(jì)算的開(kāi)銷。

4. 表現(xiàn)能力:每個(gè)專家模型可以被設(shè)計(jì)為更加專業(yè)化,能夠更好地捕捉輸入數(shù)據(jù)中的模式和關(guān)系。整體模型通過(guò)組合這些專家的輸出,提高了對(duì)復(fù)雜數(shù)據(jù)結(jié)構(gòu)的建模能力,從而增強(qiáng)了模型的性能。

5. 可解釋性:由于每個(gè)專家模型相對(duì)獨(dú)立,因此模型的決策過(guò)程更易于解釋和理解,為用戶提供更高的可解釋性,這對(duì)于一些對(duì)模型決策過(guò)程有強(qiáng)解釋要求的應(yīng)用場(chǎng)景非常重要。

MoE 構(gòu)架還能向 LLM 添加可學(xué)習(xí)參數(shù),而不增加推理成本。

6. 適應(yīng)大規(guī)模數(shù)據(jù):混合專家方法是處理大規(guī)模數(shù)據(jù)集的理想選擇,能夠有效地應(yīng)對(duì)數(shù)據(jù)量巨大和特征復(fù)雜的挑戰(zhàn),可以利用稀疏矩陣的高效計(jì)算,利用 GPU 的并行能力計(jì)算所有專家層,能夠有效地應(yīng)對(duì)海量數(shù)據(jù)和復(fù)雜特征的挑戰(zhàn)。其并行處理不同子任務(wù)的特性,充分發(fā)揮計(jì)算資源,幫助有效地?cái)U(kuò)展模型并減少訓(xùn)練時(shí)間,提高模型在訓(xùn)練和推理階段的效率,使其在大規(guī)模數(shù)據(jù)下具有較強(qiáng)的可擴(kuò)展性,以更低的計(jì)算成本獲得更好的結(jié)果。這種優(yōu)勢(shì)使得混合專家方法成為在大數(shù)據(jù)環(huán)境下進(jìn)行深度學(xué)習(xí)的強(qiáng)有力工具。

混合專家模型通過(guò)充分利用多個(gè)專家模型的優(yōu)勢(shì),實(shí)現(xiàn)了在任務(wù)處理、靈活性、計(jì)算效率和可解釋性等方面的平衡,使其成為處理復(fù)雜任務(wù)和大規(guī)模數(shù)據(jù)的有效工具。

混合專家模型(Mixture of Experts,MoE)的問(wèn)題:

盡管混合專家模型在許多方面具有優(yōu)勢(shì),但也存在一些問(wèn)題和挑戰(zhàn),這些需要在實(shí)際應(yīng)用中謹(jǐn)慎考慮。以下是一些混合專家模型可能面臨的問(wèn)題:

  1. 訓(xùn)練復(fù)雜性:混合專家模型的訓(xùn)練相對(duì)復(fù)雜,尤其是涉及到門控網(wǎng)絡(luò)的參數(shù)調(diào)整。為了正確地學(xué)習(xí)專家的權(quán)重和整體模型的參數(shù),可能需要更多的訓(xùn)練時(shí)間。
  2. 超參數(shù)調(diào)整:選擇適當(dāng)?shù)某瑓?shù),特別是與門控網(wǎng)絡(luò)相關(guān)的參數(shù),以達(dá)到最佳性能,是一個(gè)復(fù)雜的任務(wù)。這可能需要通過(guò)交叉驗(yàn)證等技術(shù)進(jìn)行仔細(xì)調(diào)整。
  3. 專家模型設(shè)計(jì):專家模型的設(shè)計(jì)對(duì)模型的性能影響顯著。選擇適當(dāng)?shù)膶<夷P徒Y(jié)構(gòu),確保其在特定任務(wù)上有足夠的表現(xiàn)力,是一個(gè)挑戰(zhàn)。
  4. 稀疏性失真:在某些情況下,為了實(shí)現(xiàn)稀疏性,門控網(wǎng)絡(luò)可能會(huì)過(guò)度地激活或不激活某些專家,導(dǎo)致模型性能下降。需要謹(jǐn)慎設(shè)計(jì)稀疏性調(diào)整策略,以平衡效率和性能。
  5. 動(dòng)態(tài)性問(wèn)題:在處理動(dòng)態(tài)或快速變化的數(shù)據(jù)分布時(shí),門控網(wǎng)絡(luò)可能需要更加靈活的調(diào)整,以適應(yīng)輸入數(shù)據(jù)的變化。這需要額外的處理和設(shè)計(jì)。
  6. 對(duì)數(shù)據(jù)噪聲的敏感性:混合專家模型對(duì)于數(shù)據(jù)中的噪聲相對(duì)敏感,可能在一些情況下表現(xiàn)不如其他更簡(jiǎn)單的模型。

此外,還有重要的一點(diǎn)是混合專家模型在分布式計(jì)算環(huán)境下可能面臨通信寬帶瓶頸的問(wèn)題。這主要涉及到混合專家模型的分布式部署,其中不同的專家模型或門控網(wǎng)絡(luò)可能分布在不同的計(jì)算節(jié)點(diǎn)上。在這種情況下,模型參數(shù)的傳輸和同步可能導(dǎo)致通信開(kāi)銷過(guò)大,成為性能的一個(gè)瓶頸。


04 MoE 相關(guān)論文粗讀


MoE 相關(guān)論文

1. Adaptive mixtures of local experts, Neural Computation'1991

2. Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer, ICLR'17

3. GShard: Scaling Giant Models with Conditional Computation and Automatic Sharding, ICLR'21

4. Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity, JMLR'22

5. GLaM: Efficient Scaling of Language Models with Mixture-of-Experts, 2021

6. Go Wider Instead of Deeper, AAAI'22

7. MoEBERT: from BERT to Mixture-of-Experts via Importance-Guided Adaptation, NAACL'22

論文 3 GShard?是第一個(gè)將 MoE 的思想拓展到 Transformer 上的工作,但論文亮點(diǎn)是提出了 GShard 這個(gè)框架,可以方便的做對(duì) MoE 結(jié)構(gòu)做數(shù)據(jù)并行或者模型并行。

我們可以重點(diǎn)看其中提出的MoE結(jié)構(gòu),論文具體的做法是:把 Transformer 的 encoder 和 decoder 中,每隔一個(gè)(every other)的 FFN 層,替換成 position-wise 的 MoE 層,又加了一個(gè)分發(fā)器(Gating),使用的是 Top-2 gating network,即不同的 token 每次會(huì)發(fā)給至多兩個(gè)專家。

文中還提到了很多其他設(shè)計(jì):

  • Expert capacity balancing:強(qiáng)制每個(gè) expert 處理的 tokens 數(shù)量在一定范圍內(nèi)。
  • Local group dispatching:通過(guò)把一個(gè) batch 內(nèi)所有的 tokens 分組,來(lái)實(shí)現(xiàn)并行化計(jì)算。
  • Auxiliary loss:也是為了緩解「贏者通吃」問(wèn)題。
  • Random routing:在 Top-2 gating 的設(shè)計(jì)下,兩個(gè) expert 如何更高效地進(jìn)行 routing。

論文 4 Switch Transformer 的亮點(diǎn)在于它簡(jiǎn)化了 MoE 的 routing 算法,每個(gè) FFN 層激活的專家個(gè)數(shù)從多個(gè)變成了一個(gè),提高了計(jì)算效率,可以將語(yǔ)言模型的參數(shù)量擴(kuò)展至 1.6 萬(wàn)億。

論文 5 GLaM 是 Google 在 2021 年推出的一個(gè)超大模型,比 GPT-3 大三倍,但是由于使用了 Sparse MoE 的設(shè)計(jì),訓(xùn)練成本卻只有 GPT-3 的 1/3,而且在 29 個(gè) NLP 任務(wù)上超越了 GPT-3。

以上三篇文章(GShard,Switch-Transformer,GLaM)都是希望通過(guò) MoE 的方式把模型做得盡可能的大,大到普通人玩不起(動(dòng)輒使用幾百個(gè) experts)。

但也有更親民一點(diǎn)的,論文 6 和 7 是關(guān)于如何利用 MoE 去壓縮模型、提高效率。

小編推薦下載

相關(guān)文章

更多>>

資訊排行

同類軟件下載