關(guān)于Tensorflow分布式并行策略
tensorFlow中主要包括了三種不同的并行策略,其分別是數(shù)據(jù)并行、模型并行、模型計算流水線并行,具體參考Tenssorflow白皮書,在接下來分別簡單介紹三種并行策略的原理。
數(shù)據(jù)并行
一個簡單的加速訓(xùn)練的技術(shù)是并行地計算梯度,然后更新相應(yīng)的參數(shù)。數(shù)據(jù)并行又可以根據(jù)其更新參數(shù)的方式分為同步數(shù)據(jù)并行和異步數(shù)據(jù)并行,同步的數(shù)據(jù)并行方式如圖所示,tensorflow圖有著很多的部分圖模型計算副本,單一的客戶端線程驅(qū)動整個訓(xùn)練圖,來自不同的設(shè)備的數(shù)據(jù)需要進(jìn)行同步更新。這種方式在實現(xiàn)時,主要的限制就是每一次更新都是同步的,其整體計算時間取決于性能最差的那個設(shè)備。
數(shù)據(jù)并行還有異步的實現(xiàn)方式,如圖所示,與同步方式不同的是,在處理來自不同設(shè)備的數(shù)據(jù)更新時進(jìn)行異步更新,不同設(shè)備之間互不影響,對于每一個圖副本都有一個單獨的客戶端線程與其對應(yīng)。在這樣的實現(xiàn)方式下,即使有部分設(shè)備性能特別差甚至中途退出訓(xùn)練,對訓(xùn)練結(jié)果和訓(xùn)練效率都不會造成太大影響。但是由于設(shè)備間互不影響,所以在更新參數(shù)時可能其他設(shè)備已經(jīng)更好的更新過了,所以會造成參數(shù)的抖動,但是整體的趨勢是向著最好的結(jié)果進(jìn)行的。所以說這種方式更適用于數(shù)據(jù)量大,更新次數(shù)多的情況。
模型并行
一個模型并行訓(xùn)練的例子如圖所示,其針對的訓(xùn)練對象是同一批樣本數(shù)據(jù),但是將不同的模型計算部分分布在不同的計算設(shè)備上同時執(zhí)行。
模型計算流水線并行
此并行方式主要針對在同一個設(shè)備中并發(fā)實現(xiàn)模型的計算,如圖是其并發(fā)計算步驟,可以發(fā)現(xiàn)它實際上與異步數(shù)據(jù)并行有些相似,但是唯一不同的是此方式的并行發(fā)生在同一個設(shè)備上,而不是在不同的設(shè)備之間。并且在計算一批簡單的樣例時,允許進(jìn)行“填充間隙”,這可以充分利用空閑的設(shè)備資源。
以上這篇關(guān)于Tensorflow分布式并行策略就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
pandas實現(xiàn)excel表格處理并讀取指定sheet的方法
這篇文章主要介紹了pandas實現(xiàn)excel表格處理并讀取指定sheet的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02Python?PEP8?代碼規(guī)范常見問題及解決方法
最近換成?PyCharm?寫代碼總是會出現(xiàn)波浪號,這才了解到?Python?的?PEP8?代碼規(guī)范,所以將常見的?PEP8?代碼規(guī)范問題和解決方法記錄一下,養(yǎng)成良好的習(xí)慣,編寫規(guī)范的代碼2023-09-09Python結(jié)合ImageMagick實現(xiàn)多張圖片合并為一個pdf文件的方法
這篇文章主要介紹了Python結(jié)合ImageMagick實現(xiàn)多張圖片合并為一個pdf文件的方法,結(jié)合實例形式分析了Python將圖片文件轉(zhuǎn)換為pdf文件的相關(guān)操作技巧,需要的朋友可以參考下2018-04-04Python中DataFrame判斷兩列數(shù)據(jù)是否相等的方法
本文主要介紹了DataFrame判斷兩列數(shù)據(jù)是否相等的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04pyqt5之將textBrowser的內(nèi)容寫入txt文檔的方法
今天小編就為大家分享一篇pyqt5之將textBrowser的內(nèi)容寫入txt文檔的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06pyqt實現(xiàn).ui文件批量轉(zhuǎn)換為對應(yīng).py文件腳本
今天小編就為大家分享一篇pyqt實現(xiàn).ui文件批量轉(zhuǎn)換為對應(yīng).py文件腳本,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06python3 破解 geetest(極驗)的滑塊驗證碼功能
這篇文章主要介紹了python3 破解 geetest(極驗)的滑塊驗證碼功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2018-02-02