精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

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

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-08-02 09:25 ? 次閱讀

編者按:昨天,騰訊和香港浸會大學的研究人員在arxiv上發表了一篇文章,介紹了一種具有混合精度的高度可擴展的深度學習訓練系統。或許是覺得這個名字不夠吸引人,他們又在后面加了一個頗具標題黨意味的后綴——“4分鐘訓練ImageNet”。那么這樣的措辭是否夸大其詞了呢?讓我們來讀讀他們的論文。

現狀

現如今,隨著數據集和大型深度神經網絡規模不斷擴大,研究人員訓練模型使用的時間也在不斷延長,短則幾天,長則幾周,但過長的訓練時間會給研發進度帶來阻礙。由于計算資源有限,針對這個問題,現在一種常見解決方案是使用分布式同步隨機梯度下降(SGD),它可以跨硬件作業,前提是必須給每個GPU分配合理的樣本數量。

雖然這種做法可以利用系統的總吞吐量和較少的模型更新來加速訓練,但它也存在兩個不可忽視的問題:

較大的mini-batch由于存在泛化誤差,會導致較低的測試精度:

如果增加mini-batch里的樣本個數,我們確實可以通過計算平均值來減少梯度變化,從而提供更準確的梯度估計,此時模型采用的步長更大,優化算法速度也更快。但正如ImageNet training in minutes這篇論文所論證的,一旦mini-batch的大小增加到64K,ResNet-50在測試集上的準確率會從75.4%下降到73.2%,這達不到基線模型的精度要求。

當使用大型GPU集群時,訓練速度并不會隨著GPU數量的增加而呈線性上升趨勢,尤其是對于計算通信比較高的模型:

訓練模型時,分布式訓練系統會為每個GPU分配訓練任務,然后在每個訓練步之間插入一個梯度聚合步驟,GPU數量越多,這個梯度聚合步就越容易成為系統瓶頸。假設GPU數量N固定,如果要提升系統總吞吐量T,我們就要同時提高單個GPU的吞吐量S和它的縮放效率e,但這兩者提升需要額外的算力資源,這就和N固定有矛盾。

實驗結果

在介紹研究成果前,我們先來看看最引人注意的“4分鐘訓練ImageNet”。

根據論文實驗部分的內容,研究人員選取的模型是AlexNet和ResNet-50,它們各自代表一種典型的CNN。AlexNet的參數數量是ResNet-50的2.5倍,而ResNet-50的計算卻是前者的5.6倍。因此它們的瓶頸分別是通信和計算,這正代表上節提出的兩個問題。

上表是兩個模型的訓練結果和對比,可以發現,在ImageNet數據集上,研究人員用4分鐘訓練好AlexNet,又用6.6分鐘訓練好ResNet-50,batch size非常大,但精度卻和其他模型沒什么區別。從數據角度看,這確實是個歷史性的突破。

而根據騰訊機智團隊自己的介紹,在這之前,業界最好的水平來自:日本Perferred Network公司Chainer團隊,他們用15分鐘就訓練好了ResNet-50;UC Berkely等高校的團隊,他們用11分鐘訓練好AlexNet。相較之下,騰訊和香港浸會大學的這個成果創造了AI訓練的世界新紀錄。

但顯然,他們在寫論文標題的時候也漏掉了重要內容,就是這個速度背后是2000多塊GPU,相信這個真相會讓一些研究人員興奮,也會讓大批學者和實驗室感到內心拔涼。

研究成果概述

關于論文技術的詳細細節,騰訊技術工程官方已經有長文分析,所以這里只根據論文內容的一點簡介(才不說是寫完才發現人家已經發了呢)。

這篇論文為為密集GPU集群構建了一個高度可擴展的深度學習訓練系統,它很好地解決了上述兩個問題,下圖是它結構概覽:

從圖中我們可以看到,這個系統可以大致分為三個模塊:輸入管道模塊、訓練模塊和通信模塊。

輸入管道負責在當前步驟完成之前就為下一步提供數據,它使用pipelining來最小化CPU和GPU的閑置時間。

訓練模塊包括模型構建和變量管理。在這個模塊中,研究人員結合了各類優化方法,如使用混合精度訓練前向/反向傳播和用LARS更新模型。

通信模塊使用tensor fusion和論文提出的混合Allreduce,根據張量大小和GPU集群大小優化縮放效率。

1. 提出了一種混合精度訓練方法,可以顯著提高單個GPU的訓練吞吐量而不會降低精度。

之前,Micikevicius等人已經在研究中提出過在訓練階段使用半精度(FP16)有助于降低內存壓力并增加計算吞吐量的想法,前者可以通過把相同數量的值儲存進更少的bit來實現,后者則可以降低數學精度,讓處理器提供更高的吞吐量。

而Yang You等人提出了一種為分布式培訓提供更大mini-batch的算法——LARS(自適應速率縮放),它會為每一層引入局部學習率,也就是用系數η加權的L2正則化權重和梯度權重的比率,能大幅度提高大batch size場景下的訓練精度。

這兩個成果非常互補,但它們不能直接結合使用,因為會導致梯度消失。為了融合兩種思想,研究人員做出的改進是用LARS進行混合精確訓練,如下圖所示,當進行前向傳播和反向傳播時,系統先把參數和數據轉成半精度浮點數,然后再做訓練,而訓練權重和梯度時,參數和數據則是單精度浮點數。

2. 提出了一種針對超大型mini-batch(最大64k)的優化方法,可以在ImageNet數據集上訓練CNN模型而不會降低精度。

模型架構改進是提高模型性能的一種常見手段,在論文中,研究人員從以下兩個方面改進了模型架構:1)消除偏差和batch normalization的權重衰減;2)為AlexNet增加了一個batch normalization層。

除了這一點,深度學習中耗時占比較重的還有超參數調整。為了優化這一過程,研究人員的思路是:

參數步長由粗到細:調優參數值先以較大步長進行劃分,可以減少參數組合數量,當確定大的最優范圍之后再逐漸細化調整。

低精度調參:分析相關數據,放大低精度表示邊緣數值,保證參數的有效性。

初始化數據的調參:根據輸入輸出通道數的范圍來初始化初始值,一般以輸入通道數較為常見;對于全連接網絡層則采用高斯分布即可;對于shortcut的batch norm,參數gamma初始化為零(也可以先訓練一個淺層網絡,再通過參數遞進初始化深層網絡參數)。

3. 提出了一種高度優化的allreduce算法,使用這種算法后,相比NCCL計算框架,AlexNet和ResNet-50在包含1024個Tesla P40 GPU的集群上的訓練速度分別提高了3倍和11倍。

在張量足夠多的情況下,Ring Allreduce可以最大化利用網絡,但工作效率和速度都不如張量少的情況。針對這種現象,研究人員利用分層同步和梯度分段融合優化Ring Allreduce

分層同步與Ring Allreduce有機結合:對集群內GPU節點進行分組,減少GPU數量對整體訓練用時的影響。

梯度融合,多次梯度傳輸合并為一次:根據具體模型設置合適的Tensor size閾值,將多次梯度傳輸合并為一次,同時超過閾值大小的Tensor不再參與融合;這樣可以防止Tensor過度碎片化,從而提升了帶寬利用率,降低了傳輸耗時。

GDR技術加速Ring Allreduce:在前述方案的基礎上,將GDR技術應用于跨節點Ring,這減少了主存和顯存之間的Copy操作,同時為GPU執行規約計算提供了便利。

這三大成果的直接效果是在不降低分類準確率的同時,把AlexNet和ResNet-50訓練時所用的mini-batch size擴大至64K。同時,通過優化All-reduce算法,并讓系統支持半精度訓練,研究人員最后構建了一個高吞吐量分布式深度學習訓練系統,可以在GPU數量N不變的情況下,提高單個GPU性能S和縮放效率e。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4762

    瀏覽量

    100535
  • gpu
    gpu
    +關注

    關注

    28

    文章

    4700

    瀏覽量

    128696
  • 深度學習
    +關注

    關注

    73

    文章

    5492

    瀏覽量

    120975

原文標題:騰訊&浸大最新研究:在4分鐘內完成ImageNet訓練(如果你有2000個GPU)

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Nanopi深度學習之路(1)深度學習框架分析

    高度模塊化,擴展性)。 ? 同時支持卷積神經網絡和循環神經網絡,以及兩者的組合。? 在 CPU 和 GPU 上無縫運行。--摘自《Keras:基于-Python-的深度
    發表于 06-04 22:32

    【HarmonyOS HiSpark AI Camera】基于深度學習的目標檢測系統設計

    項目名稱:基于深度學習的目標檢測系統設計試用計劃:嘗試在硬件平臺實現對Yolo卷積神經網絡的加速運算,期望提出的方法能夠使目標檢測技術更便捷,運用領域更廣泛。針對課題的研究是研究基于
    發表于 09-25 10:11

    labview深度學習檢測藥品兩類缺陷

    ` 本帖最后由 wcl86 于 2021-5-28 19:37 編輯 通過labview深度學習標注工具對樣本進行標注,兩類NG進行標注,標注完成后擴展樣本數量級,以少量樣本獲得較好的標注
    發表于 05-27 22:25

    探索一種降低ViT模型訓練成本的方法

    其上的實驗來評估性能,當每次實驗的訓練成本過高時,這不是一種擴展的方法。通過降低訓練成本,縮短了開發周期。2 更容易接近。大多數ViT模型
    發表于 11-24 14:56

    什么是深度學習?使用FPGA進行深度學習的好處?

    類型,但經常使用稱為準確性的一種。假設將 10 張貓的圖像輸入到預訓練模型中,其中 9 張被確定為“貓”。在這點上,該模型可以說具有 90% 的準確率。
    發表于 02-17 16:56

    基于一種航資系統綜合訓練裝置設計

    的維護保障水平和使用效果受到極大的制約。為了進步提高航空兵部隊的新裝備訓練水平,滿足線部隊崗前培訓及新裝備訓練急需,研制航姿系統綜合
    發表于 11-01 10:39 ?2次下載
    基于<b class='flag-5'>一種</b>航資<b class='flag-5'>系統</b>綜合<b class='flag-5'>訓練</b>裝置設計

    一種新的目標分類特征深度學習模型

    為提高低配置計算環境中的視覺目標實時在線分類特征提取的時效性和分類準確率,提出一種新的目標分類特征深度學習模型。根據高時效性要求,選用分類器模型離線深度
    發表于 03-20 17:30 ?0次下載
    <b class='flag-5'>一種</b>新的目標分類特征<b class='flag-5'>深度</b><b class='flag-5'>學習</b>模型

    混合精度訓練的優勢!將自動混合精度用于主流深度學習框架

    僅通過添加幾行代碼,TensorFlow、PyTorch和MXNet中的自動混合精確功能就能助力深度學習研究人員和工程師基于NVIDIA Volta和Turing GPU實現高達3倍的AI訓練
    的頭像 發表于 04-03 11:31 ?7008次閱讀

    谷歌深度學習如何處理人類語言?

    具有語言能力的深度學習系統已經廣泛應用于人們的生活當中。其中系統使用了 Google 發布的
    的頭像 發表于 03-01 15:31 ?1308次閱讀

    一種基于深度學習的地下淺層震源定位方法

    針對地下能量場聚焦模型中能量聚焦點無法有效識別的冋題,在深度學習的基礎上,提出一種地下淺層震源定位方法。利用逆時振幅疊加的方法將傳感器陣列獲取的震動數據逆時重建為三維能量場圖像樣本序列,并將其作為
    發表于 03-22 15:58 ?10次下載
    <b class='flag-5'>一種</b>基于<b class='flag-5'>深度</b><b class='flag-5'>學習</b>的地下淺層震源定位方法

    超詳細配置教程:用Windows電腦訓練深度學習模型

    雖然大多數深度學習模型都是在 Linux 系統訓練的,但 Windows 也是個非常重要的系統
    的頭像 發表于 11-08 10:57 ?1448次閱讀

    深度解析擴展且保密的深度學習

    擴展且保密的深度學習
    發表于 06-28 16:09 ?315次閱讀
    <b class='flag-5'>深度</b>解析<b class='flag-5'>可</b><b class='flag-5'>擴展</b>且保密的<b class='flag-5'>深度</b><b class='flag-5'>學習</b>

    深度學習框架是什么?深度學習框架有哪些?

    深度學習框架是什么?深度學習框架有哪些?? 深度學習框架是
    的頭像 發表于 08-17 16:03 ?2669次閱讀

    深度學習框架區分訓練還是推理嗎

    深度學習框架區分訓練還是推理嗎 深度學習框架是個非常重要的技術,它們能夠加速
    的頭像 發表于 08-17 16:03 ?1333次閱讀

    深度學習模型訓練過程詳解

    深度學習模型訓練個復雜且關鍵的過程,它涉及大量的數據、計算資源和精心設計的算法。訓練
    的頭像 發表于 07-01 16:13 ?1089次閱讀