成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

索尼大法好,224秒在ImageNet上搞定ResNet-50

xiguadada / 2233人閱讀

摘要:年月,騰訊機(jī)智機(jī)器學(xué)習(xí)平臺(tái)團(tuán)隊(duì)在數(shù)據(jù)集上僅用分鐘就訓(xùn)練好,創(chuàng)造了訓(xùn)練世界紀(jì)錄。訓(xùn)練期間采用預(yù)定的批量變化方案。如此,我們也不難理解騰訊之后提出的層級(jí)的思想了。你可能覺得這對(duì)于索尼大法而言不算什么,但考慮到維護(hù)成本和占地,這就很不經(jīng)濟(jì)了。

隨著技術(shù)、算力的發(fā)展,在 ImageNet 上訓(xùn)練 ResNet-50 的速度被不斷刷新。2018 年 7 月,騰訊機(jī)智機(jī)器學(xué)習(xí)平臺(tái)團(tuán)隊(duì)在 ImageNet 數(shù)據(jù)集上僅用 6.6 分鐘就訓(xùn)練好 ResNet-50,創(chuàng)造了 AI 訓(xùn)練世界紀(jì)錄。如今,這一紀(jì)錄再次被索尼刷新……

隨著數(shù)據(jù)集和深度學(xué)習(xí)模型的規(guī)模持續(xù)增長(zhǎng),訓(xùn)練模型所需的時(shí)間也不斷增加,大規(guī)模分布式深度學(xué)習(xí)結(jié)合數(shù)據(jù)并行化是大幅減少訓(xùn)練時(shí)間的明智選擇。然而,在大規(guī)模 GPU 集群上的分布式深度學(xué)習(xí)存在兩大技術(shù)難題。第一大難題是大批量訓(xùn)練下的收斂準(zhǔn)確率下降;第二大難題是在 GPU 之間進(jìn)行梯度同步時(shí)的信息交流成本。我們需要一種解決這兩大難題的分布式處理新方法。

在過(guò)去的幾年里,研究者們?yōu)檫@兩大問(wèn)題提出了很多解決方法。他們使用 ImageNet/ResNet-50(在 ImageNet 數(shù)據(jù)集上訓(xùn)練 ResNet-50 分類器)作為訓(xùn)練性能的基準(zhǔn)。ImageNet 和 ResNet-50 是最流行的用作大規(guī)模分布式深度學(xué)習(xí)基準(zhǔn)的數(shù)據(jù)集和深度神經(jīng)網(wǎng)絡(luò)之一。表 1 對(duì)比了近期研究的訓(xùn)練時(shí)間和 top-1 驗(yàn)證準(zhǔn)確率。

表 1:ImageNet/ResNet-50 訓(xùn)練時(shí)間和 top-1 1-crop 驗(yàn)證準(zhǔn)確率。

從表中可以看出,隨著技術(shù)、算力的發(fā)展,在 ImageNet 上訓(xùn)練 ResNet-50 的速度被不斷刷新。日本 Perferred Network 公司的 Chainer 團(tuán)隊(duì)曾在 15 分鐘訓(xùn)練好 ResNet-50;2018 年 7 月,騰訊機(jī)智機(jī)器學(xué)習(xí)平臺(tái)團(tuán)隊(duì)在 ImageNet 數(shù)據(jù)集上,僅用 6.6 分鐘就可以訓(xùn)練好 ResNet-50,創(chuàng)造了 AI 訓(xùn)練世界新紀(jì)錄。這一次,訓(xùn)練記錄被再一次刷新。

本文作者著眼于大批量訓(xùn)練的不穩(wěn)定性和梯度同步成本問(wèn)題,成功地使用 2176 塊 Tesla V100 GPU 將訓(xùn)練時(shí)間減少到 224 秒,并達(dá)到 75.03% 的驗(yàn)證準(zhǔn)確率。研究者還嘗試在不顯著降低準(zhǔn)確率的前提下提升 GPU 擴(kuò)展效率。如表 2 所示,他們最終使用 1088 塊 Tesla V100 GPU 實(shí)現(xiàn)了 91.62% 的 GPU 擴(kuò)展效率。

表 2:ImageNet/ResNet-50 訓(xùn)練的 GPU 擴(kuò)展效率。

論文:ImageNet/ResNet-50 Training in 224 Seconds

論文地址:https://arxiv.org/ftp/arxiv/papers/1811/1811.05233.pdf

摘要:由于大規(guī)模批量訓(xùn)練的不穩(wěn)定性和梯度同步的開銷,將分布式深度學(xué)習(xí)擴(kuò)展至 GPU 集群級(jí)頗具挑戰(zhàn)。我們通過(guò)批量控制來(lái)解決大規(guī)模批量訓(xùn)練不穩(wěn)定的問(wèn)題,用 2D-Torus all-reduce 來(lái)解決梯度同步的開銷。具體來(lái)說(shuō),2D-Torus all-reduce 將 GPU 排列在邏輯 2D 網(wǎng)格中,并在不同方向上執(zhí)行一系列集群計(jì)算。這兩種技術(shù)是用神經(jīng)網(wǎng)絡(luò)庫(kù)(NNL)實(shí)現(xiàn)的。我們?cè)?224 秒內(nèi)成功訓(xùn)練了 ImageNet/ResNet-50,并且在 ABCI 集群上沒(méi)有顯著的準(zhǔn)確性損失。

方法

我們采用了 [4], [10] 和 [11] 中引入的批量控制技術(shù)來(lái)解決大規(guī)模批量不穩(wěn)定的問(wèn)題。我們開發(fā)了一個(gè) 2D-Torus all-reduce 方案來(lái)有效交換 GPU 上的梯度。

批量控制

根據(jù)之前的研究,在訓(xùn)練期間通過(guò)逐漸增加批量的總規(guī)??梢詼p少大批量訓(xùn)練的不穩(wěn)定性。隨著訓(xùn)練損失曲面變得「平坦」,增加批量有助于避開局部最小值 [4] [10] [11]。在本文中,我們采用了批量控制的方法來(lái)減少批量超過(guò) 32K 時(shí)的準(zhǔn)確率下降。訓(xùn)練期間采用預(yù)定的批量變化方案。

2D-Torus All- reduce?

高效的交流拓?fù)鋵?duì)于減少集群計(jì)算的交流成本而言非常重要。人們已經(jīng)提出了包括 Ring all-reduce[12] 和層級(jí) Ring all-reduce[6] 等多種交流拓?fù)鋪?lái)提高 all-reduce 計(jì)算的效率。Ring all-reduce 算法不能完全利用超過(guò) 1000 塊 GPU 的極大規(guī)模集群的帶寬。這是因?yàn)?[12] 中展示的網(wǎng)絡(luò)延遲的存在,使得算法的交流成本和 GPU 的數(shù)量成正比。我們開發(fā)了 2D-Torus all-reduce 來(lái)解決這個(gè)問(wèn)題。

2D-Torus 拓?fù)淙鐖D 1 所示。集群中的 GPU 按照 2D 網(wǎng)格排列。在 2D-Torus 拓?fù)渲?,all-reduce 包含三個(gè)步驟:reduce-scatter、all-reduce、all-gather。圖 2 展示了 2D-Torus all-reduce 的案例。首先,水平地執(zhí)行 reduce-scatter。然后,豎直地執(zhí)行 all-reduce。最后,水平地執(zhí)行 all-together。

2D-Torus all-reduce 的交流成本比 Ring all-reduce 的更低。設(shè) N 為集群中的 GPU 數(shù)量,X 為水平方向的 GPU 數(shù)量,Y 為豎直方向的 GPU 數(shù)量。2D-Torus all-reduce 只需執(zhí)行 2(X-1) 次 GPU-to-GPU 運(yùn)算。相比而言,Ring all-reduce 需要執(zhí)行 2(N-1) 次 GPU-to-GPU 運(yùn)算。盡管層級(jí) Ring all-reduce 執(zhí)行的 GPU-to-GPU 運(yùn)算次數(shù)和 2D-Torus all-reduce 相同,2D-Torus all-reduce 方案的第二步的數(shù)據(jù)量只有層級(jí) all-reduce 的 1/X。

圖 1:2D-Torus 拓?fù)溆伤胶拓Q直方向上的多個(gè)閉圈構(gòu)成。

圖 2: 4-GPU 集群的 2D-Torus all-reduce 計(jì)算步驟。

評(píng)估結(jié)果

我們?cè)?224 秒內(nèi)完成了 ResNet-50 的訓(xùn)練,并且準(zhǔn)確率沒(méi)有顯著降低,如表 5 所示。訓(xùn)練誤差曲線和參考曲線很相似(圖 3)。盡管較大批量可以增加到 119K 而不會(huì)有明顯的準(zhǔn)確率降低,進(jìn)一步增加較大批量到 136K 會(huì)減少 0.5% 的準(zhǔn)確率(表 5 中的 Exp. 6)。表 6 展示了當(dāng)每塊 GPU 的批量被設(shè)為 32 的時(shí)候,使用的 GPU 數(shù)量和訓(xùn)練吞吐量。

盡管當(dāng)我們使用超過(guò) 2176 塊 GPU 時(shí),GPU 擴(kuò)展效率降低了 50% 到 70%,但在使用 1088 塊 GPU 時(shí) GPU 擴(kuò)展效率也能超過(guò) 90%。過(guò)去的研究 [6] 報(bào)告稱當(dāng)使用 1024 塊 Tesla P40 并且將批量設(shè)為 32 時(shí),GPU 擴(kuò)展效率達(dá)到了 87.9%。對(duì)比過(guò)去的研究,我們的 GPU 交流方案可以使用更快和更多的 GPU(Tesla V100)達(dá)到更高的 GPU 擴(kuò)展效率。

表 5:Top-1 1-crop 驗(yàn)證準(zhǔn)確率和訓(xùn)練時(shí)間

圖 3:訓(xùn)練誤差曲線

表 6:2D-Torus all-reduce 的訓(xùn)練吞吐量和擴(kuò)展效率

討論

分布式深度學(xué)習(xí)的瓶頸

從過(guò)去在 ImageNet 上的大規(guī)模分布式研究來(lái)看,基本上都將工作重點(diǎn)放在減少通信成本上。

深度學(xué)習(xí)的分布式訓(xùn)練分為同步和異步兩種,它們的主要區(qū)別在于參數(shù)在各個(gè) GPU(工作器)上的計(jì)算是否獨(dú)立。

具體來(lái)說(shuō),異步式訓(xùn)練在初始化時(shí)在每個(gè) GPU 上有一個(gè)相同的模型,然后每個(gè) GPU 接收不同的樣本進(jìn)行訓(xùn)練。各個(gè) GPU 在一個(gè)批量訓(xùn)練完成時(shí)會(huì)將參數(shù)更新到一個(gè)公有的服務(wù)器,但這個(gè)服務(wù)器僅保留一個(gè)模型參數(shù)版本。當(dāng)其它工作器訓(xùn)練完一個(gè)批量時(shí),會(huì)直接在公有服務(wù)器上用新的模型參數(shù)覆蓋。

這種訓(xùn)練方式的通信成本較低,并且獨(dú)立工作的方式可以在時(shí)間協(xié)調(diào)上更加靈活,但也存在問(wèn)題。由于「參數(shù)覆蓋」,這些 GPU 之間就像是在互相競(jìng)爭(zhēng),看看誰(shuí)先完成訓(xùn)練,就能成為下一次更新的初始參數(shù)。而更新了之后,有些 GPU 還在之前的參數(shù)上進(jìn)行更新,這就導(dǎo)致了每個(gè) GPU 無(wú)法獲取完整的梯度信息,從而其更新方向不一定是朝著收斂的方向進(jìn)行。也就是說(shuō),GPU 通信的不足導(dǎo)致了模型更新的梯度信息不足。

同步式訓(xùn)練可以克服異步式訓(xùn)練的這個(gè)缺點(diǎn)。同步式訓(xùn)練就是在每一次更新模型參數(shù)前,先對(duì)所有的 GPU 計(jì)算出的梯度求平均。如此就能保證每個(gè) GPU 獲取相同的梯度信息,但這需要等待所有的 GPU 完成訓(xùn)練才行。所以很自然,這種訓(xùn)練方式的一大缺點(diǎn)就是通信成本大和延遲問(wèn)題。經(jīng)典的 all reduce 方案的通信成本與 GPU 的數(shù)量成正比。

all reduce 通信方案:所有 GPU 與單個(gè) reducer GPU 之間的數(shù)據(jù)傳輸。

為了降低 all reduce 通信方案的成本,百度研究院提出了 Ring all reduce 通信方案,將 GPU 連接成一個(gè)圓環(huán),進(jìn)行參數(shù)信息傳遞,這種通信方式可以有效減少通信成本。在理想情況下,這種通信方案的成本是和 GPU 數(shù)量無(wú)關(guān)的。至于本文研究者提到的 Ring all reduce 存在的網(wǎng)絡(luò)延遲問(wèn)題,這里就不討論了。簡(jiǎn)單來(lái)說(shuō),Ring all reduce 將通信分成兩個(gè)階段,在第一個(gè)階段中可以先將傳遞過(guò)來(lái)的部分參數(shù)值進(jìn)行合并,然后在每個(gè) GPU 中都有部分的最終合并參數(shù)值,并在第二個(gè)階段中再次進(jìn)行傳遞。

Ring all reduce 通信方案:被布置在邏輯環(huán)中的 GPU,與近鄰的 GPU 接收和發(fā)送參數(shù)值。

和 all reduce 方案對(duì)比一下,我們可以發(fā)現(xiàn),Ring all reduce 就是將單階段通信變成了多階段,每個(gè)階段可以先合并部分參數(shù)值,這樣參數(shù)數(shù)量就會(huì)在每個(gè)階段不斷縮減。也就是說(shuō),對(duì)于同類的可合并的數(shù)值通信而言,分層通信才是根本。如此,我們也不難理解騰訊之后提出的層級(jí) all reduce 的思想了。

層級(jí) all reduce 的三階段通信方案圖示。

根據(jù)論文方法部分的解釋,2D-Torus All- reduce 的通信拓?fù)浔?Ring all reduce 多一個(gè)維度,并且和層級(jí) all reduce 的通信次數(shù)相同,但在第二個(gè)步驟的通信數(shù)據(jù)量更小。2D-Torus All- reduce 將通信過(guò)程分成多個(gè)維度和多個(gè)階段進(jìn)行,經(jīng)過(guò)了兩個(gè)階段的合并之后在每個(gè) GPU 都有部分的最終參數(shù)值,和層級(jí) all reduce 有著異曲同工之妙。至于更細(xì)節(jié)的過(guò)程,其實(shí)論文中也沒(méi)說(shuō)。

之后的研究可能會(huì)在什么方向?可能的變量還是很多的,無(wú)論是 GPU 性能增長(zhǎng),通信帶寬成本的降低,還是 GPU 集群拓?fù)涞男路桨?.....

竟然花費(fèi)那么大成本來(lái)訓(xùn)練 ImageNet?

首先,完成這種訓(xùn)練的成本到底有多大?我們可以參考 Reddit 上網(wǎng)友的粗略計(jì)算:Tesla V100 大約是單價(jià) 6000 美元,訓(xùn)練最快的結(jié)果中使用了 2176 塊 V100,總價(jià)約 1300 萬(wàn)美元。你可能覺得這對(duì)于索尼大法而言不算什么,但考慮到維護(hù)成本和占地,這就很不經(jīng)濟(jì)了。當(dāng)然,索尼也可能像迪士尼一樣利用這些 GPU 來(lái)渲染動(dòng)畫(游戲)。

另外也有網(wǎng)友計(jì)算了一下租用谷歌云 Tesla V100 的訓(xùn)練成本,總價(jià)約:

2176GPU * $0.74/GPU·hr * 1hr/3600s * 224s ≈ $100

100 美元...Unbelievable~小伙伴們,有空跑一個(gè)?

參考內(nèi)容:https://www.reddit.com/r/MachineLearning/comments/9wxcw7/r_imagenetresnet50_training_in_224_seconds/

聲明:文章收集于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系小編及時(shí)處理,謝謝!

歡迎加入本站公開興趣群

商業(yè)智能與數(shù)據(jù)分析群

興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)

QQ群:81035754

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/4844.html

相關(guān)文章

  • imagenet

    好的,下面是一篇關(guān)于Imagenet編程技術(shù)的文章: Imagenet是一個(gè)由數(shù)百萬(wàn)張標(biāo)記圖像組成的數(shù)據(jù)集,它是機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺領(lǐng)域中最常用的數(shù)據(jù)集之一。在本文中,我們將探討如何使用Python編程語(yǔ)言和深度學(xué)習(xí)框架TensorFlow來(lái)處理和訓(xùn)練Imagenet數(shù)據(jù)集。 首先,我們需要下載Imagenet數(shù)據(jù)集。由于Imagenet數(shù)據(jù)集非常大,因此我們需要使用分布式下載工具來(lái)下載它。這...

    MrZONT 評(píng)論0 收藏1134
  • 雅虎開源首個(gè)色情圖像檢測(cè)深度學(xué)習(xí)解決方案

    摘要:雅虎開源了一個(gè)進(jìn)行色情圖像檢測(cè)的深度學(xué)習(xí)解決方案。卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)和權(quán)衡近年來(lái),卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)在圖像分類問(wèn)題中取得了巨大成功。自年以來(lái),新的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)一直在不斷改進(jìn)標(biāo)準(zhǔn)分類挑戰(zhàn)的精度。 雅虎開源了一個(gè)進(jìn)行色情圖像檢測(cè)的深度學(xué)習(xí)解決方案。據(jù)文章介紹,這可能是較早的識(shí)別 NSFW 圖像的開源模型。開源地址:https://github.com/yahoo/open_nsfw自動(dòng)識(shí)別一張對(duì)...

    saucxs 評(píng)論0 收藏0
  • 湯曉鷗為CNN搓了一顆大力丸

    摘要:潘新鋼等發(fā)現(xiàn),和的核心區(qū)別在于,學(xué)習(xí)到的是不隨著顏色風(fēng)格虛擬性現(xiàn)實(shí)性等外觀變化而改變的特征,而要保留與內(nèi)容相關(guān)的信息,就要用到。 大把時(shí)間、大把GPU喂進(jìn)去,訓(xùn)練好了神經(jīng)網(wǎng)絡(luò)。接下來(lái),你可能會(huì)迎來(lái)傷心一刻:同學(xué),測(cè)試數(shù)據(jù)和訓(xùn)練數(shù)據(jù),色調(diào)、亮度不太一樣。同學(xué),你還要去搞定一個(gè)新的數(shù)據(jù)集。是重新搭一個(gè)模型呢,還是拿來(lái)新數(shù)據(jù)重新調(diào)參,在這個(gè)已經(jīng)訓(xùn)練好的模型上搞遷移學(xué)習(xí)呢?香港中文大學(xué)-商湯聯(lián)合實(shí)驗(yàn)...

    張金寶 評(píng)論0 收藏0
  • 24分鐘完成ImageNet訓(xùn)練,刷新世界紀(jì)錄

    摘要:本圖中的數(shù)據(jù)收集自利用數(shù)據(jù)集在英偉達(dá)上對(duì)進(jìn)行訓(xùn)練的實(shí)際流程。據(jù)我所知,人們之前還無(wú)法有效利用諸如神威太湖之光的超級(jí)計(jì)算機(jī)完成神經(jīng)網(wǎng)絡(luò)訓(xùn)練。最終,我們用分鐘完成了的訓(xùn)練據(jù)我們所知,這是使用進(jìn)行訓(xùn)練的世界最快紀(jì)錄。 圖 1,Google Brain 科學(xué)家 Jonathan Hseu 闡述加速神經(jīng)網(wǎng)絡(luò)訓(xùn)練的重要意義近年來(lái),深度學(xué)習(xí)的一個(gè)瓶頸主要體現(xiàn)在計(jì)算上。比如,在一個(gè)英偉達(dá)的 M40 GPU ...

    Soarkey 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<