0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

索尼發(fā)布新的方法,在ImageNet數(shù)據(jù)集上224秒內(nèi)成功訓練了ResNet-50

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-11-16 10:01 ? 次閱讀

深度神經(jīng)網(wǎng)絡訓練速度越來越快已經(jīng)不是新鮮事,但是,將ImageNet訓練時間降低到200秒級別仍然讓人震撼!近日,索尼發(fā)布新的方法,在ImageNet數(shù)據(jù)集上,使用多達2176個GPU,在224秒內(nèi)成功訓練了ResNet-50,刷新了紀錄。

隨著用于深度學習的數(shù)據(jù)集和深度神經(jīng)網(wǎng)絡模型的規(guī)模增大,訓練模型所需的時間也在增加具有數(shù)據(jù)并行性的大規(guī)模分布式深度學習可以有效縮短訓練時間。

然而,由于大型 mini-batch 訓練的不穩(wěn)定性和梯度同步的開銷,將分布式深度學習擴展到大規(guī)模的GPU集群級別很有挑戰(zhàn)性。

日本索尼公司的Hiroaki Mikami等人近日提出一種新的大規(guī)模分布式訓練方法,通過控制batch size解決了大型mini-batch訓練的不穩(wěn)定性,用2D-Torus all-reduce解決了梯度同步的開銷。

具體而言,2D-Torus all-reduce將GPU排列在一個邏輯2D網(wǎng)格中,并以不同的方向執(zhí)行一系列操作。

這兩種技術(shù)都是基于索尼的神經(jīng)網(wǎng)絡庫NNL(Neural Network Libraries)實現(xiàn)的。最終,索尼的研究人員在224秒內(nèi)(使用多達2176個GPU)成功訓練了ImageNet/ResNet-50,并在ABCI 集群上沒有明顯的精度損失。

在ImageNet數(shù)據(jù)集上訓練ResNet-50是用于測量深度學習分布式學習速度的一般行業(yè)基準,該研究刷新了這個基準的速度。

論文地址:

https://arxiv.org/pdf/1811.05233.pdf

224秒!刷新深度學習紀錄

在大型GPU集群中,大規(guī)模分布式深度學習存在兩個技術(shù)問題。第一個問題large mini-batch訓練造成的收斂精度下降。第二個問題是GPU間梯度同步的通信開銷。解決這兩個問題需要一種新的分布式處理方法。

近年來,許多研究人員提出了多種方案來解決這兩個問題(見原文參考文獻)。這些工作利用ImageNet/ResNet-50訓練來衡量訓練效果。ImageNet/ResNet-50分別是最流行的數(shù)據(jù)集和最流行的DNN模型,用于對大規(guī)模分布式深度學習進行基準測試。

表1比較了近期一些工作的訓練時間和top-1驗證精度。其中,F(xiàn)acebook使用256個Tesla P100 GPU,在1小時內(nèi)訓練完ResNet-50,是加速了這一任務的著名研究。

表1:ImageNet/ResNet-50訓練時間及top-1 -crop驗證精度

之前的其他一些業(yè)界最好水平來自:

日本Perferred Network公司Chainer團隊,15分鐘訓練好ResNet-50 [5]

騰訊機智團隊,6.6分鐘訓練好ResNet-50 [6]

索尼團隊的研究著重于解決大型mini-batch訓練的不穩(wěn)定性和梯度同步開銷,他們使用2176 個Tesla V100 GPU,將訓練時間縮短至224秒,驗證精度為75.03%。

研究人員還嘗試在不造成明顯精度損失的情況下提高GPU scaling效率,使用1088個Tesla V100 GPU將GPU scaling效率提高到91.62%(表2)。

表2:ImageNet/ResNet-50訓練的GPU scaling 效率

2大方法解決不穩(wěn)定問題

大規(guī)模分布式訓練有兩個主要問題:大型mini-batch訓練的不穩(wěn)定性和同步通信的開銷。

眾所周知, large mini-batch訓練是不穩(wěn)定的,會產(chǎn)生泛化差距。

數(shù)據(jù)并行分布式訓練需要在每個訓練迭代之間增加一個步驟,以便在參與的GPU之間同步和平均梯度。這個步驟是使用一個all-reduce的集合操作來實現(xiàn)的。在一個大型GPU集群中,all-reduce集合操作的開銷使得線性縮放變得非常具有挑戰(zhàn)性。

針對這兩個問題,我們使用Batch Size控制技術(shù)來解決不穩(wěn)定問題,并開發(fā)了2D-Torus all-reducing方案,有效地跨GPU交換梯度。

Batch Size Control

以往的工作已經(jīng)證明,在訓練期間逐漸增加總的mini-batch size可以減少大型 mini-batch訓練的不穩(wěn)定性。直觀地說,隨著訓練的損失情況變得“平坦”而增加批大小有助于避免局部最小值。

在這項工作中,我們采用 Batch Size Control來減少精度下降, batch size超過了32K。在訓練期間采用了預定的batch-size來更改調(diào)度。

2 D-Torus All- reduce

有效的通信拓撲對于減少集體操作的通信開銷至關(guān)重要。

為了解決這個問題,我們開發(fā)了2D-Torus all-reduce。2D-Torus拓撲結(jié)構(gòu)如圖1所示。集群中的GPU排列在2D網(wǎng)格中。在2D-torus拓撲中,all-reduce由三個步驟組成:reduce-scatter,all-reduce和all-gather。

圖1:2D-Torus拓撲由水平和垂直方向的多個環(huán)組成。

2D-Torus all-reduce的示例如圖2所示。

圖2:在2x2網(wǎng)格中,一個4-GPU集群的2D-Torus all-reduce步驟

評估:實驗設置和訓練設置

實驗設置

軟件:使用神經(jīng)網(wǎng)絡庫(NNL)及其CUDA擴展,作為DNN訓練框架。通信庫使用NCCL和OpenMPI。2D-Torus all-reduce在NCCL上實現(xiàn)。以上軟件打包在Singularity容器中,用于運行分布式DNN訓練。

硬件:使用AI橋接云基礎設施(ABCI)作為GPU集群。ABCI是日本先進工業(yè)科技研究所(AIST)運營的GPU集群。它包括1088個節(jié)點,每個節(jié)點有4個NVIDIA Tesla V100 GPU,2個Xeon Gold 6148處理器,376 GB內(nèi)存。同一節(jié)點的GPU由NVLink互連,而節(jié)點由2個InfiniBand EDR互連。

數(shù)據(jù)集和模型:使用ImageNet數(shù)據(jù)集。使用ResNet-50作為DNN模型。模型中的所有層都由[9]中描述的值初始化。

訓練設置:

使用LARS [9],系數(shù)為0.01,eps為1e-6更新權(quán)重。學習率(LR)通過以下公式計算:

用以下公式計算出總的mini-batch size和學習率。

我們還采用了[15]中介紹的混合精度訓練。前向/后向計算和同步梯度的通信在半精度浮點(FP16)中進行。

我們調(diào)整每個worker和總batch size,如表3所示,直到將總batch size增到最大。通過增加GPU的數(shù)量(Exp.1到Exp.4)來嘗試提高最大總batch size。

表3:per-worker/total mini-batch size

但是,當使用超過2176個GPU時,訓練效率變低了。因此,由于這個問題, Exp. 5 和Exp. 6僅使用2176個GPU。

表4:實驗中使用的2D-Torus拓撲的網(wǎng)格尺寸。

結(jié)果:精度無損失,訓練時間只需224秒

我們在224秒內(nèi)完成了ResNet-50的訓練,沒有明顯的精度損失,如表5所示。

表5:Top-1 1-crop 驗證精度和訓練時間

訓練誤差曲線與參考曲線非常相似(圖3)。雖然最大的batch size可以增加到119K也不會造成明顯的精度損失,但進一步增大會使精度降低約0.5%(表5中的實驗6)。

圖3:訓練誤差曲線

我們描述了與單個節(jié)點(4個GPU)相比的訓練速度和GPU縮放效率。

表6顯示了當每個worker的批大小設置為32時的GPU數(shù)量和訓練吞吐量。雖然當使用超過2176個GPU時,GPU scaling效率降低到70%,但當使用1088 GPU時,scaling效率超過了90%。

在之前的研究[6]中,當使用1024個Tesla P40,每個worker的批大小設置為32時,GPU scaling效率為87.9%。因此,與之前的研究相比,我們的通信方案通過更快、更多的GPU實現(xiàn)了更高的GPU scaling效率。

表6:2D-Torus all-reduce的訓練吞吐量和scaling效率

結(jié)論

大規(guī)模分布式深度學習是減少DNN訓練時間的有效方法。我們采用了多種技術(shù)來減少精度下降,同時在使用一個龐大的GPU集群進行訓練的同時保持了較高的GPU scaling效率。

這些技術(shù)是用神經(jīng)網(wǎng)絡庫(NNL)實現(xiàn)的,我們使用了2176個 Tesla V100 GPU,訓練時間224秒,驗證精度75.03%。我們還通過1088個Tesla V100 GPU達到了90%以上的GPU擴展效率。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 索尼
    +關(guān)注

    關(guān)注

    18

    文章

    3116

    瀏覽量

    104372
  • 神經(jīng)網(wǎng)絡

    關(guān)注

    42

    文章

    4717

    瀏覽量

    99998
  • 深度學習
    +關(guān)注

    關(guān)注

    73

    文章

    5422

    瀏覽量

    120587

原文標題:224秒訓練ImageNet!這次創(chuàng)紀錄的是索尼大法

文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    一種具有混合精度的高度可擴展的深度學習訓練系統(tǒng)

    根據(jù)論文實驗部分的內(nèi)容,研究人員選取的模型是AlexNet和ResNet-50,它們各自代表一種典型的CNN。AlexNet的參數(shù)數(shù)量是ResNet-50的2.5倍,而ResNet-50的計算卻是前者的5.6倍。因此它們的瓶頸分
    的頭像 發(fā)表于 08-02 09:25 ?4317次閱讀
    一種具有混合精度的高度可擴展的深度學習<b class='flag-5'>訓練</b>系統(tǒng)

    一種利用光電容積描記(PPG)信號和深度學習模型對高血壓分類的新方法

    學習方法來對高血壓的四個階段進行分類。這里采用的分類方法是:Alexnet、Resnet -50、VGG-16和新的模型:AvgPool_VGG-16。使用這些算法時要考慮到
    發(fā)表于 05-11 20:01

    怎樣記錄10秒內(nèi)數(shù)據(jù)

    請問哪位神人可以告訴我下 怎樣記錄10秒內(nèi)數(shù)據(jù)?
    發(fā)表于 04-20 21:49

    一個benchmark實現(xiàn)大規(guī)模數(shù)據(jù)的OOD檢測

    他baseline的OOD檢測性能比較。所有方法都通過使用ImageNet-1k作為分布內(nèi)數(shù)據(jù),從相同的預先
    發(fā)表于 08-31 15:11

    YOLOv6中的用Channel-wise Distillation進行的量化感知訓練

    預測任務很有價值?! ∽髡邔σ恍┟芗念A測任務進行了實驗,包括語義分割和目標檢測。實驗表明提出的方法大大優(yōu)于最先進的蒸餾方法,并且訓練期間需要更少的計算成本。特別是,
    發(fā)表于 10-09 16:25

    【CANN訓練營第三季】基于Caffe ResNet-50網(wǎng)絡實現(xiàn)圖片分類

    【CANN訓練營第三季】基于Caffe ResNet-50網(wǎng)絡實現(xiàn)圖片分類
    發(fā)表于 12-19 22:34

    深度學習上演“皇帝的新衣”如何剖析CoordConv?

    他們嘗試ImageNet上將坐標特征添加到ResNet-50網(wǎng)絡的第一個圖層。我猜作者希望在這里看到較大的提升,因為ImageNet的類
    的頭像 發(fā)表于 07-20 09:18 ?7262次閱讀

    華為云刷新深度學習加速紀錄

    華為云ModelArts國際權(quán)威的深度學習模型基準測試平臺斯坦福DAWNBenchmark取得了當前圖像識別訓練時間最佳成績,ResNet-50
    的頭像 發(fā)表于 12-03 10:29 ?3023次閱讀

    什么是TensorFlow Serving?構(gòu)建CPU優(yōu)化服務二進制代碼

    例如,我們將使用深殘余網(wǎng)絡(ResNet)模型,可用于對ImageNet的1000個類的數(shù)據(jù)進行分類。下載預訓練
    的頭像 發(fā)表于 04-04 17:26 ?8955次閱讀
    什么是TensorFlow Serving?構(gòu)建CPU優(yōu)化服務二進制代碼

    富士通實驗室74.7秒內(nèi)完成了ImageNet訓練ResNet-50網(wǎng)絡

    分布式并行深度學習要求所有 reduce 通信在所有進程之間交換每一層的梯度。大集群環(huán)境中,由于每個 GPU 的 batch size 較小,使得通信時間變長,計算時間變短,因此 reduce communication 開銷是不可忽略的。為了克服這些問題,我們采用了以下兩種優(yōu)化
    的頭像 發(fā)表于 04-08 10:36 ?4845次閱讀
    富士通實驗室<b class='flag-5'>在</b>74.7<b class='flag-5'>秒內(nèi)</b>完成了<b class='flag-5'>ImageNet</b><b class='flag-5'>上</b><b class='flag-5'>訓練</b><b class='flag-5'>ResNet-50</b>網(wǎng)絡

    富士通宣布打破了ImageNet訓練速度記錄——74.7秒內(nèi)達到75%的準確率

    研究人員介紹說:“眾所周知,具有數(shù)據(jù)并行性的分布式深度學習是加速集群訓練的有效方法。通過這種方法,集群
    的頭像 發(fā)表于 04-28 18:55 ?3856次閱讀

    UV LED 30秒內(nèi)成功殺死99.9%的新型冠狀病毒 首爾偉傲世表示即將提供解決方案

    昨(2)日,首爾偉傲世(Seoul Viosys)與SETi宣布Violeds UV LED技術(shù)成功30秒內(nèi)殺死99.9%的新型冠狀病毒(COVID-19)。
    發(fā)表于 04-03 14:20 ?1244次閱讀

    如何使用框架訓練網(wǎng)絡加速深度學習推理

    TensorRT ,第二個例子是 Cityscapes 數(shù)據(jù)訓練的基于?英偉達數(shù)據(jù)中心深
    的頭像 發(fā)表于 04-01 15:45 ?2711次閱讀
    如何使用框架<b class='flag-5'>訓練</b>網(wǎng)絡加速深度學習推理

    深度解析MegEngine 4 bits量化開源實現(xiàn)

    ResNet-50 模型 ImageNet 數(shù)據(jù)的精度表現(xiàn)與 8 bits 量化模型相
    的頭像 發(fā)表于 09-23 15:08 ?866次閱讀

    MLPerf世界紀錄技術(shù)分享:優(yōu)化卷積合并算法提升Resnet50推理性能

    (3D-UNet)、目標物體檢測(SSD-ResNet34)、語音識別(RNN-T)、自然語言理解(BERT)以及智能推薦(DLRM)。MLPerf V2.0推理競賽中,浪潮AI服務器基于ImageNet
    的頭像 發(fā)表于 11-10 14:43 ?1594次閱讀