技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2021 iThome 鐵人賽
DAY
18
0
DevOps
中台化轉型
系列 第
18
篇
機器學習:模型訓練架構
13th鐵人賽
HO-HSUN
2021-09-18 16:03:51
692 瀏覽
分享至
分散式運算架構
MapReduce
利用函式語言程式設計的概念,將分散運算分為映射(Map)和歸納(Reduce)階段,使用程式介面支援大數據運算任務。
Ring-AllReduce
訊息傳輸介面(Message Passing Interface, MPI)是一種頻寬優化優先的方法,實現了歸納(Reduce)的運算操作(Sum, Avg, Max),符合了模型訓練所需。
Initialization:將N個節點當中的梯度切成N個切片。
ScatterRecude:向環(Ring)中的下一個節點發送N個切片中的一個。
AllGather:透過 N-1 次環形通訊,將每個切片的梯度運算結果果播到每個節點。
Merge:每個節點均獲得了所有切片內的梯度運算結果。
參數伺服器(Parameter Server)
將模型資料儲存在"參數伺服器"上,計算節點通過"參數伺服器"來分享資料。
Server Group:
Server Manager:分配資源並維護元資料(Metadata)
Server Node:提供資料讀寫服務
Worker Group:實際運算任務
Task Scheduler:任務的分配,以及節點可用性計算
Resource Manager:資源分配和可用性保證
資料流
運算過程被抽象化成資料流傳輸過程,每個資料流中的節點代表資料運算。
平行運算同步機制
不同的節點中可以平行資料運算,但節點間也需要通訊來完成進度同步及工作協作。
同步平行運算(Bulk Synchronous Parallel, BSP)
要求所有節點以同樣的速度進行資料處理。
Superstep:一次完整的資料運算疊代
Processor:每個節點上可以有多個 Processor 做為資料處裡的一個運算單位。
Local Computation:Processor 上的運算。
Communication:Processor 之間的通訊。
Barrier Synchronization:同步屏障(Barrier)
程序中的每個執行緒進行到此,都必須等待,直到所有執行緒都到達才可以繼續執行下一個階段。
非同步平行運算(Asynchronous Synchronous Parallel, ASP)
需要配合適當的梯度下降演算法,否則可能會導致運算失敗,影響模型收歛速度。
延遲同步運算(Stale Synchronous Parallel, SSP)
利用一個 Staleness-Threshold 的閥值來確定同步的時機,閥值可依據運算狀態動態調節,適合節點運算能力較為一致的高叢集同質性環境。
梯度下降演算法
隨機梯度下降(Stochastic Gradient Descent, SGD)
彈性平均梯度下降(Elastic Averaging SGD, EASGD)
非同步隨機梯度下降(Asynchronous Stochastic Gradient Descent, ASGD)
同步隨機梯度下降(Downpour Stochastic Gradient Descent, Downpour SGD)
延遲懲罰
AsyncAdaGrad
AdaptiveRevision
AdaDelay
延遲補償
留言
追蹤
檢舉
上一篇
機器學習:深度學習
下一篇
機器學習:資料流圖(Data Flow Graphs)模型訓練架構
系列文
中台化轉型
共
30
篇
目錄
RSS系列文
訂閱系列文
6
人訂閱
26
大數據平台:資料倉儲
27
大數據平台:分散式計算
28
大數據平台:分散式檔案
29
大數據平台:訊息中介
30
大數據平台:叢集管理
完整目錄
直播研討會
{{ item.subject }}
{{ item.channelVendor }}
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22189
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
請教舊電腦架網站的防護措施
qr code生成多功能系統
如何用指令自動偵測有插網線的網卡IP
administrators群組成員的管理員權限不見
Web Application 與Web Service 的差異
請示ip位置的問題
大量寄信伺服器詢問
AB兩點網路使用LTE數據機做連接
如何讓在中國的同事可以穩定的使用台灣總部的系統服務
如何自製搜尋引擎
熱門回答
請教舊電腦架網站的防護措施
如何讓在中國的同事可以穩定的使用台灣總部的系統服務
AB兩點網路使用LTE數據機做連接
administrators群組成員的管理員權限不見
如何自製搜尋引擎
熱門文章
Win11 24H2 終於對 NTLM 動手了(感動
卷 31:iThome 鐵人賽寫作攻略——新手必看指南
Microservice Pattern 犧牲了什麼?
Python for in 迴圈與 Tuple 解構
如何在Google Colab和Replit中請AI解說Python程式碼及相關天文觀念?
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}