首頁 搜尋 我的知識庫
萬顆GPU的訓練:分散式機器學習 — 系統工程與實戰

萬顆GPU的訓練:分散式機器學習 — 系統工程與實戰

作者: 柳浩
出版社: 深智數位
出版日期: 2024/01/20
ISBN-13: 9786267383278
書店 1






內容描述


*分散式機器學習機礎,包括資料、模型、管線的並行
  *集合通訊的重要性、參數伺服器PS-Lite
  *PyTorch DataParalle、PyTorch DDP的基礎及動態邏輯
  *Uber Horovod的原理及實作
  *GPipe、PyTorch的管線並行及PipeDream基礎架構及實作
  *Megatron原理及實作、PyTorch的模型並行原理實作
  *分散式運算的最佳化器
  *TensorFlow的分散式環境,靜態架構、動態邏輯
  *分散式架構的策略基礎、MirroredStrategy、ParameterServerStrategy

  本書書以PyTorch為主體講解,從系統和實踐的角度對分散式機器學習進行整理。

  包括了第1篇分散式基礎,介紹了分散式機器學習的基本概念、基礎設施,以及機器學習並行化的技術、框架和軟體系統,然後對集合通訊和參數伺服器PS-Lite進行了介紹。

  第2篇介紹資料並行,將計算負載切分到多張卡上,實作為PyTorch及Horovod。

  第3篇介紹模型並行,主要說明了張量模型並行及管線模弄並行,讓模型可以放入多節點上。

  第4篇NVIDIA Megatron進行分析,講解如何進行層內分割模型並行,然後學習PyTorch如何支援模型並行。

  第5篇則是將全書的內容用TensorFlow實作,讓已經熟悉TensorFlow的使用者不必重新學習新的框架。


目錄大綱


第1篇    分散式基礎    
第1章  分散式機器學習    
1.1  機器學習概念
1.2  機器學習的特點
1.3  分散式訓練的必要性
1.4  分散式機器學習研究領域
1.5  從模型角度看如何並行    
1.6  從訓練併發角度看如何並行
1.7  分散式機器學習程式設計介面
1.8  PyTorch分散式
1.9  總結    

第2章  集合通訊
2.1  通訊模式    
2.2  點對點通訊
2.3  集合通訊
2.4  MPI_AllReduce    
2.5  Ring All-Reduce

第3章  參數伺服器之PS-Lite    
3.1  參數伺服器
3.2  基礎模組Postoffice    
3.3  通訊模組Van
3.4  代理人Customer
3.5  應用節點實現

第2篇  資料並行
第4章  PyTorch DataParallel
4.1  整體說明    
4.2  範例    
4.3  定義    
4.4  前向傳播    
4.5  計算損失    
4.6  反向傳播    
4.7  總結

第5章  PyTorch DDP的基礎架構
5.1  DDP總述    
5.2  設計理念    
5.3  基礎概念    
5.4  架構和初始化

第6章  PyTorch DDP的動態邏輯    
6.1  Reducer類別
6.2  前向/反向傳播

第7章  Horovod    
7.1  從使用者角度切入
7.2  horovodrun
7.3  網路基礎和Driver
7.4  DistributedOptimizer
7.5  融合框架
7.6  背景執行緒架構

第3篇  管線並行
第8章  GPipe
8.1  管線基本實現
8.2  梯度累積
8.3  Checkpointing

第9章  PyTorch管線並行
9.1  如何劃分模型
9.2  切分資料和Runtime系統
9.3  前向計算
9.4  計算依賴
9.5  平行計算

第10章  PipeDream之基礎架構
10.1  整體想法
10.2  profile階段
10.3  計算分區階段
10.4  轉換模型階段

第11章  PipeDream之動態邏輯
11.1  Runtime引擎
11.2  通訊模組
11.3  1F1B策略

第4篇  模型並行
第12章  Megatron
12.1  設計想法
12.2  模型並行實現
12.3  如何設置各種並行
12.4  Pipedream的管線刷新

第13章  PyTorch如何實現模型並行
13.1  PyTorch模型並行    
13.2  分散式自動求導之設計
13.3  RPC基礎
13.4  上下文相關
13.5  如何切入引擎
13.6  自動求導引擎

第14章  分散式最佳化器
14.1  原生最佳化器
14.2  DP的最佳化器
14.3  DDP的最佳化器
14.4  Horovod的最佳化器
14.5  模型並行的分散式問題
14.6  PyTorch分散式最佳化器
14.7  PipeDream分散式最佳化器

第5篇  TensorFlow分散式
第15章  分散式運行環境之靜態架構    
15.1  整體架構
15.2  Server
15.3  Master的靜態邏輯
15.4  Worker的靜態邏輯

第16章  分散式運行環境之動態邏輯
16.1  Session機制
16.2  Master動態邏輯
16.3  Worker動態邏輯
16.4  通訊機制

第17章  分散式策略基礎
17.1  使用TensorFlow進行分散式訓練
17.2  DistributedStrategy基礎
17.3  分散式變數

第18章  MirroredStrategy
18.1  MirroredStrategy集合通訊
18.2  MirroredStrategy分發計算
 
第19章  ParameterServerStrategy
19.1  ParameterServerStrategyV1
19.2  ParameterServerStrategyV2
19.3  ClusterCoordinator


作者介紹


作者簡介

柳浩

  網名「羅西的思考」,浙江大學碩士。
  曾就職於多家世界500強企業,主導過多個大型項目,現就職於某新能源車企。
  技術棧廣博,有豐富的各種大型軟體開發和系統架構經驗,對機器學習框架、微服務框架、大數據引擎、NoSQL、訊息佇列、分散式追蹤系統、可觀測系統、可靠性設計、移動開發方案和源代碼有著深刻的理解和認識。






相關書籍

Mac活用萬事通:High Sierra一本就學會!

0 陷阱!0 誤解!8 天重新認識 JavaScript!(iT邦幫忙鐵人賽系列書 - 02)

團隊自省指南|打造敏捷團隊

超有料!職場第一實用的 AI 工作術:用對工具讓生產力全面進化!