微軟今天發(fā)布了DeepSpeed庫(kù)的更新版本,該庫(kù)引入了一種新方法來(lái)訓(xùn)練包含數(shù)萬(wàn)億個(gè)參數(shù)的AI模型,這種模型內(nèi)部的變量可為預(yù)測(cè)提供依據(jù)。微軟稱這種技術(shù)稱為3D并行性,可以適應(yīng)各種的工作負(fù)載需求,特別是為功耗大的超大型模型平衡效率。
具有數(shù)十億個(gè)參數(shù)的單個(gè)大型AI模型在一系列具有挑戰(zhàn)性的領(lǐng)域中取得了長(zhǎng)足的進(jìn)步。研究表明它們之所以表現(xiàn)出色,是因?yàn)樗鼈兛梢岳斫庹Z(yǔ)言、語(yǔ)法、知識(shí)、概念和上下文的細(xì)微差別,使他們能夠總結(jié)演講,在實(shí)時(shí)游戲聊天中過(guò)濾不合適的話語(yǔ),解析復(fù)雜的法律文檔,甚至可以通過(guò)搜索GitHub生成代碼。
但是訓(xùn)練模型需要大量的計(jì)算資源。根據(jù)2018年OpenAI的分析,從2012年到2018年,在大型AI訓(xùn)練中,計(jì)算量的需求增長(zhǎng)了300,000倍,也就是大概每3.5個(gè)月的時(shí)間翻一番,遠(yuǎn)遠(yuǎn)超過(guò)了摩爾定律的步伐。
增強(qiáng)的DeepSpeed利用三種技術(shù)來(lái)實(shí)現(xiàn)“萬(wàn)億級(jí)”模型訓(xùn)練:數(shù)據(jù)并行訓(xùn)練、模型并行訓(xùn)練和管線并行訓(xùn)練。
訓(xùn)練一個(gè)萬(wàn)億參數(shù)的模型將需要至少400個(gè)Nvidia 今年最新推出的A100 GPU(每個(gè)內(nèi)存高達(dá)40GB),并且Microsoft估計(jì)需要4,000臺(tái)A100以50%的效率運(yùn)行,大約需要100天才能完成訓(xùn)練。這與微軟和OpenAI共同設(shè)計(jì)的AI超級(jí)計(jì)算機(jī)無(wú)并不匹配,后者包含10,000多個(gè)顯卡,在這樣的超大規(guī)模下,很難獲得很高的計(jì)算效率。
DeepSpeed將大型模型分為四個(gè)流水線階段,分為較小的組件(層)。每個(gè)流水線階段中的層進(jìn)一步劃分為四個(gè)“工人(workers)”,它們執(zhí)行實(shí)際的訓(xùn)練。每個(gè)管道都在兩個(gè)并行數(shù)據(jù)實(shí)例之間復(fù)制,并且工作程序被映射到多GPU系統(tǒng)。由于有了這些和其他性能改進(jìn),微軟表示,一個(gè)萬(wàn)億參數(shù)的AI模型可以減少到僅需要800個(gè)Nvidia V100 GPU訓(xùn)練。
DeepSpeed的最新版本還包含了ZeRO-Offload技術(shù),該技術(shù)可利用GPU及其主機(jī)CPU上的計(jì)算和內(nèi)存資源,從而在一臺(tái)V100上訓(xùn)練多達(dá)130億個(gè)參數(shù)的模型。微軟聲稱這比最新技術(shù)強(qiáng)10倍,使得訓(xùn)練人員可以使用更少的計(jì)算資源來(lái)進(jìn)行數(shù)據(jù)科學(xué)家的訓(xùn)練。
“這些(DeepSpeed中的新技術(shù))提供了極高的計(jì)算、內(nèi)存和通信效率,并支持?jǐn)?shù)十億到數(shù)萬(wàn)億個(gè)參數(shù)的模型訓(xùn)練。” 微軟在博客中寫(xiě)道,“這些技術(shù)還允許極長(zhǎng)的輸入序列,并通過(guò)單個(gè)GPU,具有數(shù)千個(gè)GPU的高端集群或具有非常慢的以太網(wǎng)網(wǎng)絡(luò)的低端集群釋放硬件系統(tǒng)的能量。我們將(繼續(xù))進(jìn)行快速創(chuàng)新,為深度學(xué)習(xí)訓(xùn)練突破了速度和規(guī)模的界限。”
關(guān)鍵詞: