天天看點

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

機器之心報道

機器之心編輯部

如果你有 100 萬個 GPU hour,你會訓練什麼樣的語言模型?

到昨天為止,大模型「BigScience」已訓練了 5%。

這個模型僅 bf16 權重就有 329GB,正在用 384 塊 A100 進行訓練,吞吐量每秒約 150TFLOPS。

好消息是,訓練損失正在下降:

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

與很多公司未開源大模型不同的是,BigScience 模型訓練的參數所有人都可見,根據項目組織者的預測,距離完成目标還有三個月的時間。

人工智能給人類社會帶來了根本性的影響,但與網際網路的興起不同,AI 極度依賴在更大的資料集上訓練更大的模型。是以,這場科技變革的資源主要掌握在大型科技巨頭手中。從研究進展、環境、倫理和社會影響的角度看,這種現狀給 AI 技術造成了束縛。例如,外界無法通路訓練資料集或檢查點,這使得其他研究者無法确切分析模型的能力、局限性、潛在改進、偏見等重要方面。

從 2021 年 5 月到 2022 年 5 月,在(預計)長達一年的時間裡,來自 60 個國家和 250 多個機構的 900 名研究人員正在共同建立一個非常大的多語言神經網絡模型和一個非常大的多語言文本資料集,并在算力 28 petaflops 的法國 Jean Zay (IDRIS) 核電超級計算機上運作。這個項目被命名為 BigScience。

最近,這個項目在推特上開啟了直播。

BigScience 是做什麼的

開放的科學合作是其他學科領域已獲成功的研究模式,已有多個對全世界有益的大型共享研究中心,例如歐洲核子研究中心 CERN。

類似地,BigScience 項目旨在以一種新的方式在 AI/NLP 研究社群中建立、研究和共享大型語言模型,探索大模型的新型合作模式。圍繞 BigScience 項目建立的大型研究社群将能夠提前探索超大型語言模型的許多研究問題(能力、局限性、潛在改進、偏見、通用人工智能等),并展開學術讨論,促進科技的發展。

BigScience 模型是什麼樣的

簡單來說,BigScience 模型是一個 1760 億參數的多語言模型,它有以下特點:

與 GPT 類似,它是一個隻包含解碼器(decoder-only)的架構,參數量達到了 1760 億;

70 層的神經網絡,每層 112 個注意力頭 - 隐藏次元為 14336 - 2048 個 token 序列長度;

ALiBi 位置嵌入 - GeLU 激活函數。

BigScience 是怎麼練成的?

擴充定律(scaling laws)

首先,研究者推導出擴充定律,計算了能提供的「最佳」模型上限:從 ~1650 億的資料 token 中訓練 ~3920 億參數。

但是擴充定律沒有考慮服務 / 推理成本、下遊任務性能等。此外,該研究還需要確定低資源語言在預訓練期間仍然獲得足夠多的 token。研究者不希望 BigScience 模型需要對整個語言進行零樣本學習,是以他們決定至少應該預訓練 3000-4000 億 個 token。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

計算

回到預算:法國國家大型計算中心 GENCI 在超級計算機 Jean Zay 上為項目提供了 384 塊英偉達 A100 80GB 的 18 周時間,即 1161261 個 A100-hour!

值得一提的是,Jean Zay 是法國在 2019 年建成的超級計算機,硬體由惠普供貨,2020 年擴容後峰值性能達到 28 Pflops/s。由于接入法國電網,這台超算是由核電站供能的。為了将訓練對環境的影響進一步降低,他們甚至将硬體産生的熱量用于校園建築的供暖。

在正式開發之前,研究者評估了适合訓練的模型大小,并考慮了系統的安全方面。最後的評估結果即:~1750 億參數的模型,其對應的 token 量有機會達到甚至超過 4000 億。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

在訓練之前,研究者分析了其他超過 1000 億參數的大模型是如何形成的。對于模型體量如何随規模增加而變化,也有很多研究可以參考:特别是 Kaplan 等人(2020 年)和 Levine 等人(2020 年)的研究。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源
衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

速度

最後,BigScience 的傑出工程師 Stas Bekman 對數百種配置進行了基準測試,以找到最快的配置。你可以在其網站中閱讀更多相關資訊。這一切都是為了找到一組 magic number,避免諸如 tile / 波量化之類的影響。

項目最終擷取了三個有希望的配置,首先排除(1),因為注意力頭過大,最終選擇(3)是因為它比(2)快。速度很重要:每增加一點吞吐量就意味着更多的總計算量,能夠帶來更多的預訓練 token,并形成更好的模型。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

此外,BigScience 模型在檢查點方面,僅 bf16 權重就有 329GB,具有優化器狀态的完整檢查點有 2.3TB。

BigScience 的 1760 億參數大模型訓練始于美國西海岸時間 2022 年 3 月 11 日上午 11 點 42 分。

資料集

這個項目要用到一個 TB 級的多語言資料集,包含 1.5 TB(3500 億 token)的文本資料。這個資料量是什麼概念呢?如果你把它列印到 A4 紙上,這些紙可以堆成 141 座埃菲爾鐵塔或 5 座珠穆朗瑪峰。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

為了建構這個資料集,項目組成員分工完成了以下工作:

資料治理小組幫助定義了指導資料工作的具體價值,并提出了一個新的國際資料治理結構,包括一些支援性的技術和法律工具;

資料來源小組在全球範圍内組織黑客松,幫助參與者利用當地專業知識建立了 246 種語言資源目錄,并準備了 605 個相關網站的清單;

隐私工作小組緻力于分類和政策,以降低隐私風險;

法律學術小組開發了一套涵蓋九個司法管轄區的法律手冊,其中包含不同的隐私和資料保護法規,以幫助 ML 從業者了解他們工作的法律背景。

由于資料規模過大,使用自動方法來對整個語料庫進行自動篩選所帶來的影響将非常不可控,同時,通過手動檢查資料樣本來獲得良好的洞察也是一大挑戰。為了應對這些挑戰,并提高資料選擇過程的可了解性和可說明性,項目人員在工作中優先考慮了以下方法:

1、建構支援大規模人工決策的工具,而不是完全自動化,在手動和自動之間找到一個平衡點。

2、更少的語言,更多的語言專業知識。将精力集中在能夠投入足夠資源的語言和語言組上。

衆籌超算直播訓練1760億參數AI大模型,九百工程師搞開源

以下博文介紹了關于該資料集的更多細節:https://bigscience.huggingface.co/blog/building-a-tb-scale-multilingual-dataset-for-language-modeling

最後,關注這個項目的同學可以檢視以下賬戶的直播資訊:https://twitter.com/BigScienceLLM

參考連結:https://www.reddit.com/r/MachineLearning/comments/tfm7zb/n_live_and_open_training_of_bigsciences_176b/

時在中春,陽和方起——機器之心「AI科技年會」

機器之心AI科技年會将于3月23日線上上舉辦,本次活動分為三場論壇:

「人工智能論壇」直播間:http://live.bilibili.com/3519835

「AI x Science 論壇」直播間:http://live.bilibili.com/24531944

「首席智行官大會」直播間:https://live.bilibili.com/24532108

人工智能論壇關注高性能計算、聯邦學習、系統機器學習、強化學習、CV與NLP發展、RISC-V等。

AI x Science論壇關注AI與蛋白質、生物計算、數學、實體、化學、新材料和神經科學等領域的交叉研究進展。

首席智行官大會關注智能汽車、汽車機器人、無人駕駛商業化、車規級晶片和無人物流等。

繼續閱讀