斯坦福DAWNBench:華爲雲ModelArts深度學習訓練全球最快

斯坦福DAWNBench:華爲雲ModelArts深度學習訓練全球最快算法

近日,斯坦福大學發佈了DAWNBenchmark最新成績,在圖像識別(ResNet50-on-ImageNet,93%以上精度)的總訓練時間上,華爲雲ModelArts排名第一,僅需10分28秒,比第二名提高近44%。成績證實,華爲雲ModelArts實現了更低成本、更快速度、更極致的體驗。緩存

斯坦福大學DAWNBench是用來衡量端到端的深度學習模型訓練和推理性能的國際權威基準測試平臺,相應的排行榜反映了當前全球業界深度學習平臺技術的領先性。計算時間和成本是構建深度模型的關鍵資源,DAWNBench提供了一套通用的深度學習評價指標,用於評估不一樣優化策略、模型架構、軟件框架、雲和硬件上的訓練時間、訓練成本、推理延遲以及推理成本。服務器

做爲人工智能最重要的基礎技術之一,近年來深度學習也逐步延伸到更多的應用場景。隨着深度學習模型愈來愈大,所需數據量愈來愈多,深度學習的訓練和推理性能將是重中之重。華爲雲ModelArts將結合華爲在AI芯片、硬件、雲設施、軟件和算法的全棧優點,打造更快的普惠的AI開發平臺。架構

下文將深刻分析,華爲雲ModelArts如何作到性能極致——128塊GPU,ImageNet訓練時間10分鐘。併發

  1. 深度學習已普遍應用,模型增大、數據增加,深度學習訓練加速的需求日益劇增

近年來,深度學習已經普遍應用於計算機視覺、語音識別、天然語言處理、視頻分析等領域,可服務於視頻監控、自動駕駛、搜索推薦、對話機器人等場景,具備廣闊的商業價值。框架

爲了達到更高的精度,一般深度學習所需數據量和模型都很大,訓練很是耗時。例如,在計算機視覺中,若是咱們在ImageNet[1]數據集上用1塊V100 GPU訓練一個ResNet-50模型, 則須要耗時將近1周。這嚴重阻礙了深度學習應用的開發進度。所以,深度學習訓練加速一直是學術界和工業界所關注的重要問題,也是深度學習應主要用的痛點。分佈式

Jeremy Howard等幾位教授領銜的fast.ai當前專一於深度學習加速,在ImageNet數據集上用128塊V100 GPU訓練 ResNet-50模型的最短期爲18分鐘。模塊化

然而,最近BigGAN、NASNet、BERT等模型的出現,預示着訓練更好精度的模型須要更強大的計算資源。能夠預見,在將來隨着模型的增大、數據量的增長,深度學習訓練加速將變得會更加劇要。只有擁有端到端全棧的優化能力,才能使得深度學習的訓練性能作到極致。工具

[1] 文中所指的ImageNet數據集包含1000類個類別,共128萬張圖片,是最經常使用、最經典的圖像分類數據集,是原始的ImageNet數據的一個子集。性能

  1. 華爲雲ModelArts創造新紀錄,「極致」的訓練速度

華爲雲ModelArts是一站式的AI開發平臺,已經服務於華爲公司內部各大產品線的AI模型開發,幾年下來已經積累了跨場景、軟硬協同、端雲一體等多方位的優化經驗。ModelArts提供了自動學習、數據管理、開發管理、訓練管理、模型管理、推理服務管理、市場等多個模塊化的服務,使得不一樣層級的用戶都可以很快地開發出本身的AI模型。

在模型訓練部分,ModelArts經過硬件、軟件和算法協同優化來實現訓練加速。尤爲在深度學習模型訓練方面,華爲將分佈式加速層抽象出來,造成一套通用框架——MoXing(「模型」的拼音,意味着一切優化都圍繞模型展開)。採用與fast.ai同樣的硬件、模型和訓練數據,ModelArts可將訓練時長可縮短到10分鐘,創造了新的紀錄,爲用戶節省44%的時間。

3.分佈式加速框架MoXing

MoXing是華爲雲ModelArts團隊自研的分佈式訓練加速框架,它構建於開源的深度學習引擎TensorFlow、MXNet、PyTorch、Keras之上,使得這些計算引擎分佈式性能更高,同時易用性更好。

高性能

MoXing內置了多種模型參數切分和聚合策略、分佈式SGD優化算法、級聯式混合並行技術、超參數自動調優算法,而且在分佈式訓練數據切分策略、數據讀取和預處理、分佈式通訊等多個方面作了優化,結合華爲雲Atlas高性能服務器,實現了硬件、軟件和算法協同優化的分佈式深度學習加速。

易用:讓開發者聚焦業務模型,無憂其餘

在易用性方面,上層開發者僅需關注業務模型,無需關注下層分佈式相關的API,僅需根據實際業務定義輸入數據、模型以及相應的優化器便可,訓練腳本與運行環境(單機或者分佈式)無關,上層業務代碼和分佈式訓練引擎能夠作到徹底解耦。

4.從兩大指標看MoXing分佈式加速關鍵技術

在衡量分佈式深度學習的加速性能時,主要有以下2個重要指標:

1)吞吐量,即單位時間內處理的數據量;

2)收斂時間,即達到必定的收斂精度所需的時間。

吞吐量通常取決於服務器硬件(如更多、更大FLOPS處理能力的AI加速芯片,更大的通訊帶寬等)、數據讀取和緩存、數據預處理、模型計算(如卷積算法選擇等)、通訊拓撲等方面的優化,除了低bit計算和梯度(或參數)壓縮等,大部分技術在提高吞吐量的同時,不會形成對模型精度的影響。爲了達到最短的收斂時間,須要在優化吞吐量的同時,在調參方面也作調優。若是調參調的很差,那麼吞吐量有時也很難優化上去,例如batch size這個超參不足夠大時,模型訓練的並行度就會較差,吞吐量難以經過增長計算節點個數而提高。

對用戶而言,最終關心的指標是收斂時間,所以MoXing和ModelArts實現了全棧優化,極大縮短了訓練收斂時間。在數據讀取和預處理方面,MoXing經過利用多級併發輸入流水線使得數據IO不會成爲瓶頸;在模型計算方面,MoXing對上層模型提供半精度和單精度組成的混合精度計算,經過自適應的尺度縮放減少因爲精度計算帶來的損失;在超參調優方面,採用動態超參策略(如momentum、batch size等)使得模型收斂所需epoch個數降到最低;在底層優化方面,MoXing與底層華爲自研服務器和通訊計算庫相結合,使得分佈式加速進一步提高。

5.測試結果對比,用數聽說話

通常在ImageNet數據集上訓練ResNet-50模型,當Top-5精度≥93%或者Top-1 精度≥75%時便可認爲模型收斂。

咱們測試的模型訓練收斂曲線以下圖所示。此處Top-1和Top-5精度爲訓練集上的精度,爲了達到極致的訓練速度,訓練過程當中採用了額外進程對模型進行驗證,最終驗證精度如表1所示(包含與fast.ai的對比)。圖4(a)所對應的模型在驗證集上Top-1 精度≥75%,訓練耗時爲10分06秒;圖4(b)所對應的模型在驗證集上Top-5 精度≥93%,訓練耗時爲10分28秒。

  1. 將來展望——更快的普惠AI開發平臺

華爲雲ModelArts致力於爲用戶提供更快的普惠AI開發體驗,尤爲在模型訓練這方面,內置的MoXing框架使得深度學習模型訓練速度有了很大的提高。正如前所述,深度學習加速屬於一個從底層硬件到上層計算引擎、再到更上層的分佈式訓練框架及其優化算法多方面協同優化的結果,具有全棧優化能力才能將用戶訓練成本降到最低。

後續,華爲雲ModelArts將進一步整合軟硬一體化的優點,提供從芯片(Ascend)、服務器(Atlas Server)、計算通訊庫(CANN)到深度學習引擎(MindSpore)和分佈式優化框架(MoXing)全棧優化的深度學習訓練平臺。而且,ModelArts會逐步集成更多的數據標註工具,擴大應用範圍,將繼續服務於智慧城市、智能製造、自動駕駛及其它新興業務場景,在公有云上爲用戶提供更普惠的AI服務。

目前華爲雲ModelArts課程已上線免費學習,歡迎到華爲雲學院 (https://edu.huaweicloud.com/c... )搜索ModelArts 便可獲取。

相關文章
相關標籤/搜索