成人av在线资源一区,亚洲av日韩av一区,欧美丰满熟妇乱XXXXX图片,狠狠做五月深爱婷婷伊人,桔子av一区二区三区,四虎国产精品永久在线网址,国产尤物精品人妻在线,中文字幕av一区二区三区欲色
    您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
    此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
    人工智能開(kāi)發(fā)者 正文
    發(fā)私信給楊文
    發(fā)送

    0

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    本文作者: 楊文 2018-01-30 10:47
    導(dǎo)語(yǔ):分布式訓(xùn)練深度學(xué)習(xí)模型的利與弊

    雷鋒網(wǎng)AI研習(xí)社按:隨著深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)規(guī)模越來(lái)越大,訓(xùn)練一個(gè)深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, DNNs)往往需要幾天甚至幾周的時(shí)間。為了加快學(xué)習(xí)速度,經(jīng)常需要分布式的 CPU/GPU 集群來(lái)完成整個(gè)訓(xùn)練。本文就就來(lái)為大家簡(jiǎn)單簡(jiǎn)單介紹一下如何進(jìn)行分布式訓(xùn)練深度學(xué)習(xí)模型。

    在近期雷鋒網(wǎng) AI 研習(xí)社的線上公開(kāi)課上,來(lái)自 IBM 系統(tǒng)部研發(fā)工程師武維博士為大家做了一期主題為「深度學(xué)習(xí)中的分布式訓(xùn)練」的在線分享,錯(cuò)過(guò)了直播的同學(xué)們?nèi)绻戳吮疚挠幸苫笾庍€可以到雷鋒網(wǎng) AI 慕課學(xué)院觀看視頻回放

    以下是雷鋒網(wǎng)對(duì)視頻直播內(nèi)容做的簡(jiǎn)要回顧:

    武維,IBM 系統(tǒng)部研發(fā)工程師,曾就職于華為大數(shù)據(jù)產(chǎn)品部及 IBM 中國(guó)研究院,擔(dān)任系統(tǒng)工程師/研究員;西安交通大學(xué)系統(tǒng)工程博士,目前主要研發(fā)方向?yàn)樯疃葘W(xué)習(xí)中的分布式訓(xùn)練框架與模型。

    分享提綱:

    • 為什么要分布式訓(xùn)練深度學(xué)習(xí)模型及分布式TensorFlow架構(gòu)。

    • TensorFlow圖內(nèi)復(fù)制和圖間復(fù)制。

    • 深度學(xué)習(xí)模型異步訓(xùn)練和同步訓(xùn)練。

    • Case Study:如何把單機(jī)模型分布式化。

    • 分布式模型訓(xùn)練性能介紹。

    分享內(nèi)容:

    大家好,我是武維,今天分享的第一部分介紹一下為什么要采用分布式訓(xùn)練以及分布式 TensorFlow 的架構(gòu),第二部分講 TensorFlow 圖內(nèi)復(fù)制和圖間復(fù)制,第三部分是關(guān)于分布式訓(xùn)練中的同步訓(xùn)練和異步訓(xùn)練的簡(jiǎn)要介紹。第四部分是關(guān)于如何把單機(jī)模型分布式化成分布式模型,第五部分是關(guān)于分布式訓(xùn)練的性能介紹。

    為什么要采用分布式訓(xùn)練呢,分布式訓(xùn)練主要處理什么問(wèn)題,以及如何處理的?

    下圖是關(guān)于TPU架構(gòu)數(shù)據(jù)中心的圖

     IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    第一個(gè)原因,是增加訓(xùn)練的吞吐量;第二個(gè)原因是是針對(duì)大模型訓(xùn)練,大模型通常在一個(gè)設(shè)備中放不下。

    下面左圖中的橫坐標(biāo)可以認(rèn)為是 GPU 個(gè)數(shù),縱坐標(biāo)為處理圖片的速度。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    針對(duì)大模型怎么去訓(xùn)練?現(xiàn)在的辦法是把模型拆解到不同的GPU卡里面,每個(gè)GPU卡里面訓(xùn)練一部分,這樣就可以把一個(gè)大模型分布式訓(xùn)練起來(lái)。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    如何實(shí)現(xiàn)這個(gè)流程

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    左邊是TensorFlow的一個(gè)基本的運(yùn)行流程。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    TensorFlow 的發(fā)展過(guò)程

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    分布式TensorFlow架構(gòu),它的架構(gòu)是基于Master 和 Slaver的架構(gòu)。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    以上是從master 和slaver 的角度講深度學(xué)習(xí)分布式架構(gòu),下面從worker 的角度來(lái)看:

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    深度學(xué)習(xí)首先要訓(xùn)練參數(shù),在分布式里面會(huì)把參數(shù)存放在參數(shù)服務(wù)器,如果 worker 需要運(yùn)算的話,首先從參數(shù)服務(wù)器讀取參數(shù)到到 CPU 上。目前來(lái)說(shuō),大多數(shù)的深度學(xué)習(xí)訓(xùn)練都是在 GPU 設(shè)備上進(jìn)行的,所以需要把讀取的數(shù)據(jù)復(fù)制到 GPU 上,GPU 就可以從左往右開(kāi)始運(yùn)算。最后通過(guò)求導(dǎo)找到變量所對(duì)應(yīng)的梯度,然后在將梯度復(fù)制到機(jī)器上所對(duì)應(yīng)的的 CPU 上,CPU 再通過(guò)網(wǎng)絡(luò)通信把他發(fā)送給參數(shù)服務(wù)器,這是從整個(gè) worker 角度去看分布式架構(gòu)。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    TensorFlow 在分布式訓(xùn)練里面有兩個(gè)比較重要的概念分別是「圖內(nèi)復(fù)制」和「圖間復(fù)制」。分布式訓(xùn)練意味著有一個(gè)集群,先定義一個(gè)分布式集群。下面是圖內(nèi)復(fù)制,這種情況適合單機(jī)多卡。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    如果是多臺(tái)計(jì)算機(jī)的時(shí)候,分發(fā)數(shù)據(jù)帶來(lái)的數(shù)據(jù)瓶頸就會(huì)比較大,如果采用圖內(nèi)復(fù)制,數(shù)據(jù)傳輸會(huì)產(chǎn)生瓶頸。這個(gè)時(shí)候需要用圖間復(fù)制,兩個(gè)圖可以中間共享變量,解決了訓(xùn)練數(shù)據(jù)分發(fā)的問(wèn)題,這種方式適用于多機(jī)多卡訓(xùn)練。圖間復(fù)制有多個(gè)客戶端,圖內(nèi)復(fù)制只有一個(gè)客戶端。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    TensorFlow 封裝了高級(jí) API,會(huì)自動(dòng)把參數(shù)部署到參數(shù)服務(wù)器上,把運(yùn)算操作設(shè)定到 worker 上,這些就實(shí)現(xiàn)了一份代碼可在多個(gè) worker 上運(yùn)行,簡(jiǎn)化了客戶端程序的編寫(xiě)。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    如何分布式尋找最優(yōu)W?同步訓(xùn)練和異步訓(xùn)練有什么區(qū)別?

    隨機(jī)梯度下降法:第一個(gè)式子數(shù)值求偏導(dǎo),計(jì)算量太大,不實(shí)際。通常用微積分求導(dǎo),解析解。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    分布式隨機(jī)梯度下降法

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    異步訓(xùn)練過(guò)程:異步訓(xùn)練為T(mén)ensorFlow上每個(gè)節(jié)點(diǎn)上的任務(wù)為獨(dú)立訓(xùn)練方式,不需要和其他節(jié)點(diǎn)在參數(shù)服務(wù)器上同步梯度。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    同步訓(xùn)練過(guò)程:同步訓(xùn)練需要和其他節(jié)點(diǎn)在參數(shù)服務(wù)器上Reduce梯度。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    第四部分是如何編寫(xiě)分布式訓(xùn)練模型示例,大家可以觀看視頻回放

    下圖是單機(jī)版線性回歸模型示例

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    第五部分是分布式訓(xùn)練的性能比較

    評(píng)價(jià)指標(biāo)通常分為模型方面和平臺(tái)方面。在模型方面常用指標(biāo)是:準(zhǔn)確率、召回率、AP等。平臺(tái)方面

    主要看吞吐量、加速比。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    異步訓(xùn)練的吞吐量比同步訓(xùn)練好,所以異步訓(xùn)練要比同步訓(xùn)練的快。

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    同步算法和異步算法的比較

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    以上就是本次分享的主要內(nèi)容,代碼實(shí)現(xiàn)部分建議同學(xué)們直接觀看回放視頻,也可關(guān)注嘉賓武維的GitHub地址。

    微信公眾號(hào):「AI 研習(xí)社」長(zhǎng)期提供免費(fèi)視頻直播課程,歡迎關(guān)注!

    雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知

    IBM高級(jí)研發(fā)工程師武維:如何分布式訓(xùn)練深度學(xué)習(xí)模型?| 分享總結(jié)

    分享:
    相關(guān)文章

    編輯&記者

    AI科技評(píng)論員,微信:yeohandwin
    當(dāng)月熱門(mén)文章
    最新文章
    請(qǐng)?zhí)顚?xiě)申請(qǐng)人資料
    姓名
    電話
    郵箱
    微信號(hào)
    作品鏈接
    個(gè)人簡(jiǎn)介
    為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
    您的郵箱還未驗(yàn)證,完成可獲20積分喲!
    請(qǐng)驗(yàn)證您的郵箱
    立即驗(yàn)證
    完善賬號(hào)信息
    您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
    立即設(shè)置 以后再說(shuō)