0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

智源聯(lián)合清華發(fā)布首個支持PyTorch框架的高性能MoE系統(tǒng)

智能感知與物聯(lián)網(wǎng)技術(shù)研究所 ? 來源:智源研究院 ? 作者:智源研究院 ? 2021-03-10 14:02 ? 次閱讀

北京智源人工智能研究院(以下簡稱“智源研究院”)和清華大學(xué)聯(lián)合發(fā)布首個支持 PyTorch 框架的高性能 MoE 系統(tǒng):FastMoE 。

FastMoE 系統(tǒng)具有易用性強(qiáng)、靈活性好、訓(xùn)練速度快的優(yōu)勢,打破行業(yè)限制,可在不同規(guī)模的計算機(jī)或集群上支持研究者探索不同的 MoE 模型在不同領(lǐng)域的應(yīng)用。相比直接使用 PyTorch 實現(xiàn)的版本,提速 47 倍。FastMoE 是智源研究院于 2020 年發(fā)起的新型超大規(guī)模預(yù)訓(xùn)練模型研發(fā)項目“悟道”的最新成果,由“悟道文匯”(面向認(rèn)知的超大規(guī)模新型預(yù)訓(xùn)練模型)和“悟道文溯”(超大規(guī)模蛋白質(zhì)序列預(yù)訓(xùn)練模型)兩個研究小組聯(lián)合完成。

MoE 是什么?萬億模型的核心技術(shù),推動預(yù)訓(xùn)練模型跨越式發(fā)展,卻令 GPU 與 PyTorch 用戶望而卻步。

MoE(Mixture of Experts)是一個在神經(jīng)網(wǎng)絡(luò)中引入若干專家網(wǎng)絡(luò)(Expert Network)的技術(shù),也是 Google 最近發(fā)布的 1.5 萬億參數(shù)預(yù)訓(xùn)練模型 Switch Transformer 的核心技術(shù)。它對于預(yù)訓(xùn)練模型經(jīng)從億級參數(shù)到萬億級參數(shù)的跨越,起了重要推動作用。然而由于其對 Google 分布式訓(xùn)練框架 mesh-tensorflow 和 Google 定制硬件 TPU 的依賴,給學(xué)術(shù)界和開源社區(qū)的使用與研究帶來了不便。

MoE 設(shè)計:顯著增加模型參數(shù)量

ICLR 2017 上,Google 研究者提出了 MoE(Mixture of Experts)層。該層包含一個門網(wǎng)絡(luò)(Gating Network)和 n 個專家網(wǎng)絡(luò)(Expert Network)。對于每一個輸入,動態(tài)地由門網(wǎng)絡(luò)選擇 k 個專家網(wǎng)絡(luò)進(jìn)行激活。在圖 1 的例子中,門網(wǎng)絡(luò)決定激活第 2 個專家網(wǎng)絡(luò)和第 n-1 個專家網(wǎng)絡(luò)。

圖 1:MoE 層的設(shè)計(圖片來源 https://arxiv.org/pdf/1701.06538.pdfFigure 1)

在具體設(shè)計中,每個輸入 x 激活的專家網(wǎng)絡(luò)數(shù)量 k 往往是一個非常小的數(shù)字。比如在 MoE 論文的一些實驗中,作者采用了 n=512,k=2 的設(shè)定,也就是每次只會從 512 個專家網(wǎng)絡(luò)中挑選兩個來激活。在模型運(yùn)算量(FLOPs)基本不變的情況下,可以顯著增加模型的參數(shù)量。

GShard 和 Switch Transformer,達(dá)到驚人的 1.5 萬億參數(shù)量級

ICLR 2021 上,Google 的進(jìn)一步將 MoE 應(yīng)用到了基于 Transformer 的神經(jīng)機(jī)器翻譯的任務(wù)上。GShard 將 Transformer 中的 Feedforward Network(FFN)層替換成了 MoE 層,并且將 MoE 層和數(shù)據(jù)并行巧妙地結(jié)合起來。在數(shù)據(jù)并行訓(xùn)練時,模型在訓(xùn)練集群中已經(jīng)被復(fù)制了若干份。GShard 通過將每路數(shù)據(jù)并行的 FFN 看成 MoE 中的一個專家來實現(xiàn) MoE 層,這樣的設(shè)計通過在多路數(shù)據(jù)并行中引入 All-to-All 通信來實現(xiàn) MoE 的功能。在論文中,Google 使用 2048 個 TPU v3 cores 花 4 天時間訓(xùn)練了一個 6 千億參數(shù)的模型。

9d2de560-80d1-11eb-8b86-12bb97331649.png

圖 2:GShard 的設(shè)計(圖片來源 https://arxiv.org/pdf/2006.16668.pdfFigure 3)

在 2021 年 1 月,Google 進(jìn)一步發(fā)布了萬億規(guī)模的基于 MoE 的大規(guī)模預(yù)訓(xùn)練模型 Switch Transformer。Switch Transformer 用 MoE 改進(jìn)了 Google 已有的 T5 預(yù)訓(xùn)練模型,其中最大的模型 Switch-C 已經(jīng)達(dá)到了 1.5 萬億參數(shù)。

MMoE:MoE 的推薦系統(tǒng)應(yīng)用

除了在自然語言處理中大放異彩之外,MoE 還在推薦系統(tǒng)中找到了一席之地。在 KDD 2018 中,Google 的研究人員提出了 MMoE(Multi-gate Mixture-of-Experts),并將其應(yīng)用到了 Google 的推薦系統(tǒng)的多任務(wù)分類問題中,取得了十分好的效果。隨后,Google 在 RecSys 2019 介紹了 MMoE 在 YouTube 視頻推薦中的應(yīng)用。類似的 MMoE 模型也被快手的研究員應(yīng)用到了快手推薦系統(tǒng)的 1.9 萬億參數(shù)的大規(guī)模精排模型中。

FastMoE 是首個支持 PyTorch 框架的 MoE 系統(tǒng),簡單,靈活,高性能,支持大規(guī)模并行訓(xùn)練

MoE 潛力巨大,但因為綁定 Google 軟硬件,無法直接應(yīng)用于 PyTorch 框架。FastMoE 是首個基于當(dāng)前最流行的 PyTorch 框架的 MoE 開源系統(tǒng),使得普通的用戶可以使用常見的 GPU 資源來嘗試和研究自己的 MoE 模型。與樸素版本相比,實現(xiàn)了 47 倍的提速優(yōu)化,更加簡單、靈活、高效。

特色一:簡單易用,一行代碼即可 MoE

FastMoE 系統(tǒng)既可以作為 PyTorch 網(wǎng)絡(luò)中的一個模塊使用,也可用于“改造”現(xiàn)有網(wǎng)絡(luò)中某個層:將其復(fù)制多份,并引入 Gate,變?yōu)?MoE 層。

例如,對于當(dāng)前流行的 Megatron-LM 訓(xùn)練系統(tǒng),僅需要對代碼進(jìn)行如下改動,就可以將 Transformer 模型中的前饋網(wǎng)絡(luò)(Feed Forward Network)全部替換為 MoE 網(wǎng)絡(luò)。

特色二:靈活性,支持多種擴(kuò)展方式

除了傳統(tǒng)的兩層 MLP 網(wǎng)絡(luò),F(xiàn)astMoE 也支持將任意神經(jīng)網(wǎng)絡(luò)模塊作為專家網(wǎng)絡(luò),而進(jìn)行這樣的操作僅需通過修改 MoE 層構(gòu)造函數(shù)中的一個參數(shù)即可實現(xiàn)。

此外,專家選擇模塊 Gate 也有較高的研究價值。FastMoE 系統(tǒng)目前僅提供了基于單層全連接網(wǎng)絡(luò)的基礎(chǔ)版本,但是通過給定接口,研究者可以方便地使用自己編寫的深度神經(jīng)網(wǎng)絡(luò)模塊作為 Gate,從而探索出更好的專家選擇方案。

特色三:運(yùn)行高效,專有性能優(yōu)化

FastMoE 中包含了一些專門優(yōu)化的 CUDA 代碼。在單塊 GPU 上,相對于一個樸素的 PyTorch 實現(xiàn),F(xiàn)astMoE 的算子更加充分地利用了 GPU 大規(guī)模并行計算的能力,從而實現(xiàn)多達(dá) 47 倍的加速,從而使得模型研究者可以在更短的時間內(nèi)驗證他們的想法。

FastMoE 支持在同一個 worker 上運(yùn)行多個 experts,從而減少模型研究者在探索更多 experts 數(shù)量時所需的硬件資源。當(dāng) experts 數(shù)量較多時,F(xiàn)astMoE 針對傳統(tǒng)的兩層 MLP 全連接網(wǎng)絡(luò)(即 Transformer 中的 FFN 網(wǎng)絡(luò))使用了更精細(xì)的并行策略,從而使得 Transformer 模型中 MLP 部分的運(yùn)算速度相比樸素的實現(xiàn)較大的加速。

圖 3:單 GPU 多 experts 情況下,F(xiàn)astMoE 相比普通 PyTorch 實現(xiàn)的加速比。性能的提升主要來自 FastMoE 針對傳統(tǒng)的兩層 MLP 全連接網(wǎng)絡(luò)(即 Transformer 中的 FFN 網(wǎng)絡(luò))使用了更精細(xì)的并行策略。

單 GPU 的 FastMoE 優(yōu)化配合 PyTorch 的數(shù)據(jù)并行,已經(jīng)可以支持少量專家的 MoE 分布式訓(xùn)練,這種訓(xùn)練模式被稱為 FastMoE 的數(shù)據(jù)并行模式。圖 4 展示了一個在 2 個 workers(GPU)上對一個由 3 個 experts 構(gòu)成的 MoE 網(wǎng)絡(luò)進(jìn)行前向計算的例子。

圖 4:FastMoE 數(shù)據(jù)并行模式,每個 worker 放置多個 experts,worker 之間數(shù)據(jù)并行。top-2 gate 指的是門網(wǎng)絡(luò)會選擇激活分?jǐn)?shù)最高的 2 個專家網(wǎng)絡(luò)。

FastMoE 的數(shù)據(jù)并行模式已經(jīng)可以支持許多應(yīng)用,開發(fā)者在著名的 Transformer-XL 模型上進(jìn)行了實驗。具體來說,Transformer-XL 模型中的每一個 FFN 層(兩層的帶 ReLU 激活函數(shù)的 MLP,隱層大小為 512->2048->512)都被一個 64 選 2 的專家網(wǎng)絡(luò)替代(每個專家網(wǎng)絡(luò)是兩層的帶 ReLU 激活函數(shù)的 MLP,隱層大小為 512->1024->512)。這樣一來,改造后的 FastMoE-Transformer-XL 在模型計算量基本不變的情況下,可以獲得原始 Transformer-XL 模型約 20 倍的參數(shù)。如圖 5 所示,改造后的 FastMoE-Transformer-XL 收斂得比 Transformer-XL 更快。

圖 5:FastMoE-Transformer-XL (64 個 experts)在 enwik8 數(shù)據(jù)集上前 100K 步的 Training Loss,其收斂速度顯著快于 Transformer-XL。

特色四:支持大規(guī)模并行訓(xùn)練

圖 6:FastMoE 模型并行模式,每個 worker 放置多個 experts,worker 之間進(jìn)行 experts 的模型并行。top-2 gate 指的是門網(wǎng)絡(luò)會選擇激活分?jǐn)?shù)最高的 2 個專家網(wǎng)絡(luò)。

FastMoE 還支持在多個 worker 間以模型并行的方式進(jìn)行擴(kuò)展(如圖 6 所示),即不同的 worker 上放置不同的 experts,輸入數(shù)據(jù)在計算前將被傳輸?shù)剿璧?worker 上,計算后會被傳回原來的 worker 以進(jìn)行后續(xù)計算。通過這種并行方式,模型規(guī)??梢砸跃€性擴(kuò)展,從而支持研究者探索更大規(guī)模的模型。這種模式被稱為 FastMoE 的模型并行模式。

值得一提的是,F(xiàn)astMoE 已經(jīng)和英偉達(dá)開發(fā)的超大規(guī)模預(yù)訓(xùn)練工具 Megatron-LM 進(jìn)行了深度整合,從而使研究者對現(xiàn)有代碼做盡量小的修改即可并行運(yùn)行基于 MoE 的超大規(guī)模預(yù)訓(xùn)練模型。開發(fā)者在 Megatron-LM 的 GPT 模型上進(jìn)行了測試。如圖 7 所示,類似在 Transformer-XL 上觀察到的現(xiàn)象,一個 96 個 experts 的 GPT 模型可以收斂得比 GPT 模型更快。

圖 7:FastMoE-GPT (96 個 experts)在 GPT 上前 60K 步的 Training Loss,其收斂速度顯著快于 GPT。

智源研究院

新型人工智能研究機(jī)構(gòu)、支持科學(xué)家勇闖 AI「無人區(qū)」

智源研究院是在科技部和北京市委市政府的指導(dǎo)和支持下成立的新型研發(fā)機(jī)構(gòu),旨在聚焦原始創(chuàng)新和核心技術(shù),建立自由探索與目標(biāo)導(dǎo)向相結(jié)合的科研體制,支持科學(xué)家勇闖人工智能科技前沿“無人區(qū)”。

FastMoE 團(tuán)隊成員來自于智源研究院和清華大學(xué)計算機(jī)系 KEG 和 PACMAN 實驗室,打通了算法、系統(tǒng)等不同背景的學(xué)術(shù)人才,由智源研究院學(xué)術(shù)副院長 - 清華大學(xué)計算機(jī)系唐杰教授、智源青年科學(xué)家 - 清華大學(xué)計算機(jī)系翟季冬副教授、智源青年科學(xué)家 - 循環(huán)智能創(chuàng)始人楊植麟博士領(lǐng)導(dǎo),團(tuán)隊成員有清華大學(xué)計算機(jī)系博士研究生何家傲、裘捷中以及本科生曾奧涵。

原文標(biāo)題:首個支持 PyTorch 框架的 MoE 系統(tǒng)來了!智源聯(lián)合清華開源FastMoE,萬億AI模型基石

文章出處:【微信公眾號:通信信號處理研究所】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1791

    文章

    46671

    瀏覽量

    237118
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    802

    瀏覽量

    13116

原文標(biāo)題:首個支持 PyTorch 框架的 MoE 系統(tǒng)來了!智源聯(lián)合清華開源FastMoE,萬億AI模型基石

文章出處:【微信號:tyutcsplab,微信公眾號:智能感知與物聯(lián)網(wǎng)技術(shù)研究所】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    字節(jié)跳動與清華AIR成立聯(lián)合研究中心

    近日,清華大學(xué)智能產(chǎn)業(yè)研究院(AIR)與字節(jié)跳動共同宣布成立“可擴(kuò)展大模型智能技術(shù)聯(lián)合研究中心”(SIA Lab),并在清華大學(xué)舉行了隆重的成立儀式。
    的頭像 發(fā)表于 10-12 15:24 ?310次閱讀

    澎峰科技高性能大模型推理引擎PerfXLM解析

    自ChatGPT問世以來,大模型遍地開花,承載大模型應(yīng)用的高性能推理框架也不斷推出,大有百家爭鳴之勢。在這種情況下,澎峰科技作為全球領(lǐng)先的智能計算服務(wù)提供商,在2023年11月25日發(fā)布了針對大語言
    的頭像 發(fā)表于 09-29 10:14 ?334次閱讀
    澎峰科技<b class='flag-5'>高性能</b>大模型推理引擎PerfXLM解析

    華發(fā)數(shù)智攜手字節(jié)跳動共同發(fā)布AI數(shù)字人及大模型綜合解決方案

    近日,珠海華發(fā)數(shù)智技術(shù)有限公司(簡稱:華發(fā)數(shù)智)攜手字節(jié)跳動旗下領(lǐng)先的云服務(wù)平臺火山引擎,共同發(fā)布了AI數(shù)字人及大模型綜合解決方案,標(biāo)志著華發(fā)集團(tuán)在AI大模型技術(shù)探索與應(yīng)用上邁出了重要
    的頭像 發(fā)表于 08-07 16:53 ?599次閱讀

    pytorch環(huán)境搭建詳細(xì)步驟

    PyTorch作為一個廣泛使用的深度學(xué)習(xí)框架,其環(huán)境搭建對于從事機(jī)器學(xué)習(xí)和深度學(xué)習(xí)研究及開發(fā)的人員來說至關(guān)重要。以下將介紹PyTorch環(huán)境搭建的詳細(xì)步驟,包括安裝Anaconda、配置清華
    的頭像 發(fā)表于 08-01 15:38 ?655次閱讀

    tensorflow和pytorch哪個更簡單?

    工業(yè)界廣泛使用、具有豐富生態(tài)系統(tǒng)和跨平臺支持框架,TensorFlow可能更適合您。以下是tensorflow和pytorch的介紹: TensorFlow和
    的頭像 發(fā)表于 07-05 09:45 ?705次閱讀

    tensorflow和pytorch哪個好

    tensorflow和pytorch都是非常不錯的強(qiáng)大的框架,TensorFlow還是PyTorch哪個更好取決于您的具體需求,以下是關(guān)于這兩個框架的一些關(guān)鍵點: TensorFlow
    的頭像 發(fā)表于 07-05 09:42 ?603次閱讀

    TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇

    學(xué)習(xí)框架,它們各自擁有獨特的特點和優(yōu)勢。本文將從背景介紹、核心特性、操作步驟、性能對比以及選擇指南等方面對TensorFlow和PyTorch進(jìn)行詳細(xì)比較,以幫助讀者了解這兩個框架的優(yōu)
    的頭像 發(fā)表于 07-02 14:04 ?849次閱讀

    清華大學(xué)聯(lián)合中交興路發(fā)布《中國公路貨運(yùn)大數(shù)據(jù)碳排放報告》

    為踐行并推動實現(xiàn)“雙碳”目標(biāo),清華大學(xué)聯(lián)合中交興路發(fā)布《中國公路貨運(yùn)大數(shù)據(jù)碳排放報告》(以下簡稱:《報告》)。
    的頭像 發(fā)表于 05-09 14:47 ?323次閱讀
    <b class='flag-5'>清華大學(xué)聯(lián)合</b>中交興路<b class='flag-5'>發(fā)布</b>《中國公路貨運(yùn)大數(shù)據(jù)碳排放報告》

    Fedora 40發(fā)布,全方位升級并新增PyTorch支持

    在人工智能領(lǐng)域,F(xiàn)edora 40首次引入了PyTorch軟件包。盡管PyTorch是一款廣受歡迎的深度學(xué)習(xí)框架,但其驅(qū)動程序及庫的正確安裝往往較為困難。
    的頭像 發(fā)表于 04-24 10:45 ?936次閱讀

    清華權(quán)威報告公布,文心一言多項指標(biāo)“遙遙領(lǐng)先”

    最近,由清華大學(xué)基礎(chǔ)模型研究中心聯(lián)合中關(guān)村實驗室研制的SuperBench大模型綜合能力評測框架,正式對外發(fā)布2024年3月版《SuperBench大模型綜合能力評測報告》。
    的頭像 發(fā)表于 04-23 09:22 ?522次閱讀
    <b class='flag-5'>清華</b>權(quán)威報告公布,文心一言多項指標(biāo)“遙遙領(lǐng)先”

    昆侖萬維發(fā)布新版MoE大語言模型天工2.0

    昆侖萬維科技今日震撼發(fā)布全新升級的「天工2.0」MoE大語言模型以及配套的新版「天工AI智能助手」APP。此次更新標(biāo)志著國內(nèi)首個搭載MoE架構(gòu)的千億級參數(shù)大語言模型AI應(yīng)用正式面向廣大
    的頭像 發(fā)表于 02-06 16:19 ?1213次閱讀

    幻方量化發(fā)布了國內(nèi)首個開源MoE大模型—DeepSeekMoE

    幻方量化旗下組織深度求索發(fā)布了國內(nèi)首個開源 MoE 大模型 —— DeepSeekMoE,全新架構(gòu),免費(fèi)商用。
    的頭像 發(fā)表于 01-23 11:28 ?1412次閱讀
    幻方量化<b class='flag-5'>發(fā)布</b>了國內(nèi)<b class='flag-5'>首個</b>開源<b class='flag-5'>MoE</b>大模型—DeepSeekMoE

    對標(biāo)OpenAI GPT-4,MiniMax國內(nèi)首個MoE大語言模型全量上線

    MoE 架構(gòu)全稱專家混合(Mixture-of-Experts),是一種集成方法,其中整個問題被分為多個子任務(wù),并將針對每個子任務(wù)訓(xùn)練一組專家。MoE 模型將覆蓋不同學(xué)習(xí)者(專家)的不同輸入數(shù)據(jù)。
    的頭像 發(fā)表于 01-16 15:34 ?832次閱讀
    對標(biāo)OpenAI GPT-4,MiniMax國內(nèi)<b class='flag-5'>首個</b><b class='flag-5'>MoE</b>大語言模型全量上線

    中國研制出全球首個全模擬光電智能計算芯片

    經(jīng)長期聯(lián)合攻關(guān),清華大學(xué)研究團(tuán)隊突破傳統(tǒng)芯片的物理瓶頸,創(chuàng)造性提出光電融合的全新計算框架,并研制出國際首個全模擬光電智能計算芯片(簡稱ACCEL)。
    的頭像 發(fā)表于 12-04 17:39 ?1130次閱讀

    256核!賽昉發(fā)布全新RISC-V眾核子系統(tǒng)IP平臺

    (Dubhe-90)的高性能RISC-V眾核子系統(tǒng)IP平臺。 StarLink-700是賽昉科技自研的支持緩存一致性的Interconnect Fabric IP,是國內(nèi)首款Mesh架構(gòu)互聯(lián)總線IP
    發(fā)表于 11-29 13:37