斯坦福大學(xué)DWANBench是用來(lái)衡量端到端的深度學(xué)習模型訓練和推理性能的國際權威基準測試平臺,相應的排行榜反映了當前全球業(yè)界深度學(xué)習平臺技術(shù)的領(lǐng)先性。
計算時(shí)間和成本是構建深度模型的關(guān)鍵資源,DAWNBench提供了一套通用的深度學(xué)習評價(jià)指標,用于評估不同優(yōu)化策略、模型架構、軟件框架、云和硬件上的訓練時(shí)間、訓練成本、推理延遲以及推理成本。

斯坦福大學(xué)DAWNBenchmark最新成績(jì)
作為人工智能最重要的基礎技術(shù)之一,近年來(lái)深度學(xué)習也逐步延伸到更多的應用場(chǎng)景。
隨著(zhù)深度學(xué)習模型越來(lái)越大,所需數據量越來(lái)越多,深度學(xué)習的訓練和推理性能將是重中之重。華為云ModelArts將結合華為在A(yíng)I芯片、硬件、云設施、軟件和算法的全棧優(yōu)勢,打造更快的普惠的AI開(kāi)發(fā)平臺。
斯坦福大學(xué)DAWNBenchmark網(wǎng)頁(yè)鏈接:https://dawn.cs.stanford.edu/benchmark/
下文將深入分析,華為云ModelArts如何做到性能極致——128塊GPU,ImageNet訓練時(shí)間10分鐘。
深度學(xué)習已廣泛應用
模型增大、數據增長(cháng),深度學(xué)習訓練加速的需求日益劇增
近年來(lái),深度學(xué)習已經(jīng)廣泛應用于計算機視覺(jué)、語(yǔ)音識別、自然語(yǔ)言處理、視頻分析等領(lǐng)域,可服務(wù)于視頻監控、自動(dòng)駕駛、搜索推薦、對話(huà)機器人等場(chǎng)景,具有廣闊的商業(yè)價(jià)值。
為了達到更高的精度,通常深度學(xué)習所需數據量和模型都很大,訓練非常耗時(shí)。例如:
在計算機視覺(jué)中,如果我們在ImageNet[1]數據集上用1塊P100 GPU訓練一個(gè)ResNet-50模型, 則需要耗時(shí)將近1周。這嚴重阻礙了深度學(xué)習應用的開(kāi)發(fā)進(jìn)度。因此,深度學(xué)習訓練加速一直是學(xué)術(shù)界和工業(yè)界所關(guān)注的重要問(wèn)題,也是深度學(xué)習應主要用的痛點(diǎn)。
Jeremy Howard等幾位教授領(lǐng)銜的fast.ai當前專(zhuān)注于深度學(xué)習加速,在ImageNet數據集上用128塊V100 GPU訓練 ResNet-50模型的最短時(shí)間為18分鐘。
然而,最近BigGAN、NASNet、BERT等模型的出現,預示著(zhù)訓練更好精度的模型需要更強大的計算資源。
可以預見(jiàn),在未來(lái)隨著(zhù)模型的增大、數據量的增加,深度學(xué)習訓練加速將變得會(huì )更加重要。只有擁有端到端全棧的優(yōu)化能力,才能使得深度學(xué)習的訓練性能做到極致。
[1] 文中所指的ImageNet數據集包含1000類(lèi)個(gè)類(lèi)別,共128萬(wàn)張圖片,是最常用、最經(jīng)典的圖像分類(lèi)數據集,是原始的ImageNet數據的一個(gè)子集。
華為云ModelArts創(chuàng )造新記錄“極致”的訓練速度
華為云ModelArts是一站式的AI開(kāi)發(fā)平臺,已經(jīng)服務(wù)于華為公司內部各大產(chǎn)品線(xiàn)的AI模型開(kāi)發(fā),幾年下來(lái)已經(jīng)積累了跨場(chǎng)景、軟硬協(xié)同、端云一體等多方位的優(yōu)化經(jīng)驗。
ModelArts提供了自動(dòng)學(xué)習、數據管理、開(kāi)發(fā)管理、訓練管理、模型管理、推理服務(wù)管理、市場(chǎng)等多個(gè)模塊化的服務(wù),使得不同層級的用戶(hù)都能夠很快地開(kāi)發(fā)出自己的AI模型。

圖1.華為云ModelArts功能視圖
在模型訓練部分,ModelArts通過(guò)硬件、軟件和算法協(xié)同優(yōu)化來(lái)實(shí)現訓練加速。尤其在深度學(xué)習模型訓練方面,華為將分布式加速層抽象出來(lái),形成一套通用框架——MoXing(“模型”的拼音,意味著(zhù)一切優(yōu)化都圍繞模型展開(kāi))。
采用與fast.ai一樣的硬件、模型和訓練數據,ModelArts可將訓練時(shí)長(cháng)可縮短到10分鐘,創(chuàng )造了新的記錄,為用戶(hù)節省44%的時(shí)間。

圖2. 基于MoXing和ModelArts的訓練速度提升
分布式加速框架MoXing
MoXing是華為云ModelArts團隊自研的分布式訓練加速框架,它構建于開(kāi)源的深度學(xué)習引擎TensorFlow、MXNet、PyTorch、Keras之上,使得這些計算引擎分布式性能更高,同時(shí)易用性更好。
高性能
MoXing內置了多種模型參數切分和聚合策略、分布式SGD優(yōu)化算法、級聯(lián)式混合并行技術(shù)、超參數自動(dòng)調優(yōu)算法,并且在分布式訓練數據切分策略、數據讀取和預處理、分布式通信等多個(gè)方面做了優(yōu)化,結合華為云Atlas高性能服務(wù)器,實(shí)現了硬件、軟件和算法協(xié)同優(yōu)化的分布式深度學(xué)習加速。

圖3.華為云MoXing架構圖
易用:讓開(kāi)發(fā)者聚焦業(yè)務(wù)模型,無(wú)憂(yōu)其他
在易用性方面,上層開(kāi)發(fā)者僅需關(guān)注業(yè)務(wù)模型,無(wú)需關(guān)注下層分布式相關(guān)的API,僅需根據實(shí)際業(yè)務(wù)定義輸入數據、模型以及相應的優(yōu)化器即可,訓練腳本與運行環(huán)境(單機或者分布式)無(wú)關(guān),上層業(yè)務(wù)代碼和分布式訓練引擎可以做到完全解耦。
從兩大指標看MoXing分布式加速關(guān)鍵技術(shù)
在衡量分布式深度學(xué)習的加速性能時(shí),主要有如下2個(gè)重要指標:
- 吞吐量,即單位時(shí)間內處理的數據量;
- 收斂時(shí)間,即達到一定的收斂精度所需的時(shí)間。
吞吐量一般取決于服務(wù)器硬件(如更多、更大FLOPS處理能力的AI加速芯片,更大的通信帶寬等)、數據讀取和緩存、數據預處理、模型計算(如卷積算法選擇等)、通信拓撲等方面的優(yōu)化,除了低bit計算和梯度(或參數)壓縮等,大部分技術(shù)在提升吞吐量的同時(shí),不會(huì )造成對模型精度的影響。
為了達到最短的收斂時(shí)間,需要在優(yōu)化吞吐量的同時(shí),在調參方面也做調優(yōu)。如果調參調的不好,那么吞吐量有時(shí)也很難優(yōu)化上去,例如batch size這個(gè)超參不足夠大時(shí),模型訓練的并行度就會(huì )較差,吞吐量難以通過(guò)增加計算節點(diǎn)個(gè)數而提升。
對用戶(hù)而言,最終關(guān)心的指標是收斂時(shí)間,因此MoXing和ModelArts實(shí)現了全棧優(yōu)化,極大縮短了訓練收斂時(shí)間。
- 在數據讀取和預處理方面,MoXing通過(guò)利用多級并發(fā)輸入流水線(xiàn)使得數據IO不會(huì )成為瓶頸;
- 在模型計算方面,MoXing對上層模型提供半精度和單精度組成的混合精度計算,通過(guò)自適應的尺度縮放減小由于精度計算帶來(lái)的損失;
- 在超參調優(yōu)方面,采用動(dòng)態(tài)超參策略(如momentum、batch size等)使得模型收斂所需epoch個(gè)數降到最低;
- 在底層優(yōu)化方面,MoXing與底層華為自研服務(wù)器和通信計算庫相結合,使得分布式加速進(jìn)一步提升。
測試結果對比,用數據說(shuō)話(huà)
一般在ImageNet數據集上訓練ResNet-50模型,當Top-5精度≥93%或者Top-1 精度≥75%時(shí)即可認為模型收斂。
我們測試的模型訓練收斂曲線(xiàn)如下圖所示。此處Top-1和Top-5精度為訓練集上的精度,為了達到極致的訓練速度,訓練過(guò)程中采用了額外進(jìn)程對模型進(jìn)行驗證,最終驗證精度如表1所示(包含與fast.ai的對比)。
圖4(a)所對應的模型在驗證集上Top-1 精度≥75%,訓練耗時(shí)為10分06秒;圖4(b)所對應的模型在驗證集上Top-5 精度≥93%,訓練耗時(shí)為10分58秒。

圖4. ResNet50 on ImageNet訓練收斂曲線(xiàn)
(曲線(xiàn)上的精度為訓練集上的精度)


MoXing與fast.ai的訓練結果對比
未來(lái)展望——更快的普惠AI開(kāi)發(fā)平臺
華為云ModelArts致力于為用戶(hù)提供更快的普惠AI開(kāi)發(fā)體驗,尤其在模型訓練這方面,內置的MoXing框架使得深度學(xué)習模型訓練速度有了很大的提升。
正如前所述,深度學(xué)習加速屬于一個(gè)從底層硬件到上層計算引擎、再到更上層的分布式訓練框架及其優(yōu)化算法多方面協(xié)同優(yōu)化的結果,具備全棧優(yōu)化能力才能將用戶(hù)訓練成本降到最低。
后續,華為云ModelArts將進(jìn)一步整合軟硬一體化的優(yōu)勢,提供從芯片(Ascend)、服務(wù)器(Atlas Server)、計算通信庫(CANN)到深度學(xué)習引擎(MindSpore)和分布式優(yōu)化框架(MoXing)全棧優(yōu)化的深度學(xué)習訓練平臺。
并且,ModelArts會(huì )逐步集成更多的數據標注工具,擴大應用范圍,將繼續服務(wù)于智慧城市、智能制造、自動(dòng)駕駛及其它新興業(yè)務(wù)場(chǎng)景,在公有云上為用戶(hù)提供更普惠的AI服務(wù)。
目前華為云ModelArts已經(jīng)在公測中
掃描二維碼立即體驗~
掃描二維碼立即體驗~
