Microsoft開源了零冗余優(yōu)化器版本2(ZeRO-2),這是一種分布式深度學習優(yōu)化算法,可根據(jù)集群大小進行超線性擴展。與以前的分布式學習技術相比,Microsoft使用ZeRO-2培訓了10倍的1000億參數(shù)自然語言處理(NLP)模型。
程序經(jīng)理Rangan Majumder和杰出的工程師Wang Junhua在博客中寫道,描述了該算法及其實驗。ZeRO-2是Microsoft開源DeepSpeed庫的一部分,用于深度學習培訓優(yōu)化。ZeRO-2優(yōu)化了訓練過程中的內存消耗,允許對多達1,700億個參數(shù)的模型進行分布式訓練。該算法還減少了分布式集群中工作節(jié)點之間的通信,實現(xiàn)了超線性并行加速,從而將培訓時間減少了多達10倍。DeepSpeed團隊在1,024個GPU的集群上使用ZeRO-2,達到了創(chuàng)紀錄的44分鐘的時間來訓練BERT自然語言模型,比NVIDIA的結果提高了30%以上。
NLP研究的最新趨勢表明,通過在較大數(shù)據(jù)集上訓練的較大模型,可以提高準確性。OpenAI提出了一套“縮放定律”,表明模型精度與模型大小具有冪律關系,并且最近通過創(chuàng)建具有1750億個參數(shù)的GPT-3模型對該想法進行了測試。由于這些模型太大而無法容納單個GPU的內存,因此對其進行訓練需要一堆機器和模型并行訓練技術,以在整個集群中分配參數(shù)。有幾種實現(xiàn)有效的模型并行性的開源框架,包括GPipe和NVIDIA的Megatron,但是由于集群節(jié)點之間的通信開銷,它們具有次線性加速,并且使用框架通常需要模型重構。
ZeRO-2使用以下三種策略來減少訓練所需的內存:減少模型狀態(tài)內存需求,將層激活卸載到CPU以及減少內存碎片。ZeRO-2可以通過在并行進程之間劃分梯度和參數(shù),將模型狀態(tài)內存需求減少多達8倍。層激活值是從前向訓練過程中保存的,以便稍后在后向過程中使用,但是ZeRO-2將它們暫時從GPU的內存移動到主機CPU的內存。最后,即使可用內存不連續(xù),即使內存可用,內存分配也可能失敗。ZeRO-2通過為連續(xù)用途(例如激活和漸變)預先分配連續(xù)的內存塊來減少碎片。
-
深度學習
+關注
關注
73文章
5598瀏覽量
124396 -
自然語言處理
+關注
關注
1文章
630瀏覽量
14665 -
nlp
+關注
關注
1文章
491瀏覽量
23280
發(fā)布評論請先 登錄
資訊速遞 | 具身智能PMC(籌)發(fā)布“零成本”開源鴻蒙智能機器人系統(tǒng)
理解傳感器零偏Sensor Bias (offset)
NVIDIA開源Audio2Face模型及SDK
開源鴻蒙6.0 Release版本重磅發(fā)布
零電流軟開關PWM變換器
開源Made with KiCad(134):Icepi Zero - 基于Lattice ECP5的便攜FPGA開發(fā)板
零知開源——基于STM32F407VET6零知增強板的四路獨立計時器
樹莓派 Zero 2 W 是開啟智能家居生活的理想之選!
零知開源——STM32F103RBT6驅動 ICM20948 九軸傳感器及 vofa + 上位機可視化教程
【開源分享】:開源小巧的FPGA開發(fā)板——Icepi Zero
零知經(jīng)驗——STM32F4驅動ICM20948 九軸運動傳感器 + VOFA上位機可視化驗證與抗漂移優(yōu)化
HarmonyOS優(yōu)化應用包體積大小問題性能優(yōu)化
用 樹莓派 Zero 打造的智能漫游車!
Microsoft開源了零冗余優(yōu)化器版本2(ZeRO-2)
評論