Python 分佈式機器學習 Distributed Machine Learning with Python: Accelerating model training and serving with distributed systems
Wang, Guanhua 薑大為 譯
- 出版商: 清華大學
- 出版日期: 2023-04-01
- 定價: $594
- 售價: 8.5 折 $505
- 語言: 簡體中文
- 頁數: 215
- 裝訂: 平裝
- ISBN: 7302633118
- ISBN-13: 9787302633112
-
相關分類:
Machine Learning
- 此書翻譯自: Distributed Machine Learning with Python: Accelerating model training and serving with distributed systems (Paperback)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
Linkers and Loaders (Paperback)$2,480$2,430 -
UNIX Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers$2,410$2,290 -
人月神話:軟體專案管理之道 (20 週年紀念版)(The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition, 2/e)$480$379 -
程式設計師的自我修養-連結、載入、程式庫$580$493 -
Debug Hacks 除錯駭客 -- 極致除錯的技巧與工具$580$458 -
Binary Hacks -- 駭客秘傳技巧一百招$580$458 -
Linux Kernel Hacks 改善效能、提昇開發效率及節能的技巧與工具$680$537 -
Linux 指令大全 (The Linux Command Line: A Complete Introduction)$590$466 -
並行之美學-撰寫平行應用程式的新手指南 (The Art of Concurrency: A Thread Monkey's Guide to Writing Parallel Applications)$580$458 -
Peopleware:腦力密集產業的人才管理之道 (增訂版) (Peopleware: Productive Projects and Teams, 3/e)$420$357 -
ARM 系統開發者指南 (ARM System Developer's Guide: Designing and Optimizing System Software)
$800$720 -
Cloud Computing : Theory and Practice, 2/e$2,760$2,622 -
從 Paxos 到 Zookeeper:分散式一致性原理與實例 (舊名: 撐起14億人電商的技術機密:用Paxos及ZooKeeper打造分散叢集)$580$493 -
Programming Persistent Memory: A Comprehensive Guide for Developers (Paperback)$1,663,260$1,575,720 -
軟體架構原理|工程方法 (Fundamentals of Software Architecture: A Comprehensive Guide to Patterns, Characteristics, and Best Practices)$680$537 -
資料密集型應用系統設計 (Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems)$980$774 -
$2,160Parallel and High Performance Computing (Paperback) -
邊緣計算:原理、技術與實踐$594$564 -
Python 氣象應用編程$719$683 -
$403基於 Python 實現的遺傳算法 -
AI 嵌入式系統技術與實踐 — 基於樹莓派 RP2040 和 MicroPython$534$507 -
$1,935Designing Deep Learning Systems: A Software Engineer's Guide -
Arduino 小型化與 TinyML 應用從入門到精通$539$512 -
基於 RISC-V 架構的嵌入式系統開發$534$507 -
Ollama 本地 AI 全方位攻略:命令列功能、五大主題測試、RAG、Vibe Coding、MCP,一本搞定所有實戰應用$750$593
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
VIP 95折
深入淺出 SSD 測試 : 固態存儲測試流程 方法與工具$594$564 -
VIP 95折
MCP 開發從入門到實戰$515$489 -
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
RISC-V 架構 DSP 處理器設計$534$507 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
85折
$454RAG 實踐權威指南:構建精準、高效大模型之道 -
VIP 95折
CUDA 並行編程與性能優化$714$678 -
VIP 95折
生成式視覺模型原理與實踐$288$274 -
87折
$459AI大模型:賦能通信產業 -
VIP 95折
科學預測——預見科學之美$408$388 -
VIP 95折
Processing創意編程入門:從編程原理到項目案例$299$284 -
VIP 95折
大模型驅動的具身智能 架構,設計與實現$534$507 -
VIP 95折
納米級CMOS VLSI電路(可制造性設計)$474$450 -
VIP 95折
Manus應用與AI Agent設計指南:從入門到精通$359$341 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
VIP 95折
軟件系統優化$534$507 -
VIP 95折
芯片的較量 (日美半導體風雲)$414$393 -
VIP 95折
Manus AI 智能體從入門到精通$294$279 -
87折
$981深度學習:基礎與概念 -
85折
$505GitHub Copilot 編程指南 -
87折
$469Cursor 與 Copilot 開發實戰 : 讓煩瑣編程智能化 -
85折
$551C#核心編程200例(視頻課程+全套源程序) -
VIP 95折
Verilog HDL 計算機網絡典型電路算法設計與實現$354$336 -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
VIP 95折
生成式視覺模型原理與實踐$288$274 -
87折
$459AI大模型:賦能通信產業 -
VIP 95折
科學預測——預見科學之美$408$388 -
VIP 95折
Processing創意編程入門:從編程原理到項目案例$299$284 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
VIP 95折
軟件系統優化$534$507 -
85折
$505GitHub Copilot 編程指南 -
85折
$551C#核心編程200例(視頻課程+全套源程序) -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673 -
VIP 95折
深入淺出 Docker, 2/e$419$398 -
85折
$658Unity 特效制作:Shader Graph 案例精講 -
79折
$275零基礎玩轉國產大模型DeepSeek -
VIP 95折
人工智能大模型:機器學習基礎$774$735 -
VIP 95折
RAG 極簡入門:原理與實踐$419$398 -
VIP 95折
大模型實戰 : 從零實現 RAG 與 Agent 系統$419$398 -
VIP 95折
算法趣學(第2版)$348$331 -
VIP 95折
大模型理論與實踐——打造行業智能助手$354$336 -
85折
$509生成式人工智能 (基於 PyTorch 實現) -
VIP 95折
機器人抓取力學$894$849 -
VIP 95折
集成電路版圖設計從入門到精通$474$450 -
VIP 95折
Java 學習筆記, 6/e$839$797 -
VIP 95折
ZBrush遊戲角色設計(第2版)$479$455
相關主題
商品描述
《Python分佈式機器學習》本書詳細闡述了與分佈式機器學習相關的基本解決方案,主要包括拆分輸入數據、參數服務器和All-Reduce、構建數據並行訓練和服務管道、瓶頸和解決方案、拆分模型、管道輸入和層拆分、實現模型並行訓練和服務工作流程、實現更高的吞吐量和更低的延遲、數據並行和模型並行的混合、聯合學習和邊緣設備、彈性模型訓練和服務、進一步加速的高級技術等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校電腦及相關專業的教材和教學參考書,也可作為相關開發人員的自學用書和參考手冊。
目錄大綱
目 錄
第1篇 數 據 並 行
第1章 拆分輸入數據 3
1.1 單節點訓練太慢 3
1.1.1 數據加載帶寬和模型訓練帶寬之間的不匹配 5
1.1.2 流行數據集的單節點訓練時間 5
1.1.3 使用數據並行加速訓練過程 7
1.2 數據並行 8
1.2.1 隨機梯度下降 11
1.2.2 模型同步 12
1.3 超參數調優 14
1.3.1 全局批次大小 14
1.3.2 學習率調整 14
1.3.3 模型同步方案 15
1.4 小結 16
第2章 參數服務器和All-Reduce 17
2.1 技術要求 18
2.2 參數服務器架構 18
2.2.1 參數服務器架構中的通信瓶頸 19
2.2.2 在參數服務器之間分片模型 21
2.3 實現參數服務器 23
2.3.1 定義模型層 23
2.3.2 定義參數服務器 24
2.3.3 定義工作節點 25
2.3.4 在參數服務器和工作節點之間傳遞數據 26
2.4 參數服務器的問題 27
2.4.1 情況1—更多參數服務器 28
2.4.2 情況2—更多工作節點 28
2.4.3 參數服務器架構為從業者帶來了很高的編碼復雜度 28
2.5 All-Reduce架構 29
2.5.1 Reduce 29
2.5.2 All-Reduce 30
2.5.3 Ring All-Reduce 31
2.6 集體通信 33
2.6.1 Broadcast 33
2.6.2 Gather 34
2.6.3 All-Gather 35
2.7 小結 36
第3章 構建數據並行訓練和服務管道 37
3.1 技術要求 37
3.2 數據並行訓練管道概述 38
3.2.1 輸入預處理 39
3.2.2 輸入數據分區 40
3.2.3 數據加載 41
3.2.4 數據訓練 41
3.2.5 模型同步 42
3.2.6 模型更新 42
3.3 單機多GPU和多機多GPU 42
3.3.1 單機多GPU 43
3.3.2 多機多GPU 46
3.4 檢查點和容錯 52
3.4.1 模型檢查點 52
3.4.2 加載模型檢查點 53
3.5 模型評估和超參數調優 55
3.6 數據並行中的模型服務 57
3.7 小結 59
第4章 瓶頸和解決方案 61
4.1 數據並行訓練中的通信瓶頸 62
4.1.1 通信工作負載分析 62
4.1.2 參數服務器架構 62
4.1.3 All-Reduce架構 65
4.1.4 最新通信方案的效率問題 68
4.2 利用空閑鏈路和主機資源 69
4.2.1 Tree All-Reduce 69
4.2.2 通過PCIe和NVLink進行混合數據傳輸 75
4.3 設備內存瓶頸 76
4.4 重新計算和量化 77
4.4.1 重新計算 77
4.4.2 量化 81
4.5 小結 82
第2篇 模 型 並 行
第5章 拆分模型 85
5.1 技術要求 86
5.2 單節點訓練錯誤—內存不足 86
5.2.1 在單個GPU上微調BERT 86
5.2.2 嘗試將一個巨型模型打包到單個GPU中 88
5.3 ELMo、BERT和GPT 90
5.3.1 基本概念 91
5.3.2 循環神經網絡 94
5.3.3 ELMo 97
5.3.4 BERT 99
5.3.5 GPT 101
5.4 預訓練和微調 102
5.5 最先進的硬件 103
5.5.1 P100、V100和DGX-1 103
5.5.2 NVLink 104
5.5.3 A100和DGX-2 105
5.5.4 NVSwitch 105
5.6 小結 105
第6章 管道輸入和層拆分 107
6.1 普通模型並行的低效問題 108
6.1.1 前向傳播 109
6.1.2 反向傳播 110
6.1.3 前向傳播和反向傳播之間的GPU空閑時間 111
6.2 管道輸入 114
6.3 管道並行的優缺點 118
6.3.1 管道並行的優勢 118
6.3.2 管道並行的缺點 118
6.4 層拆分 119
6.5 關於層內模型並行的註意事項 121
6.6 小結 122
第7章 實現模型並行訓練和服務工作流程 123
7.1 技術要求 124
7.2 整個模型並行管道概述 124
7.2.1 模型並行訓練概述 124
7.2.2 實現模型並行訓練管道 125
7.2.3 指定GPU之間的通信協議 127
7.2.4 模型並行服務 131
7.3 微調Transformer 134
7.4 模型並行中的超參數調優 136
7.4.1 平衡GPU之間的工作負載 136
7.4.2 啟用/禁用管道並行 136
7.5 NLP模型服務 137
7.6 小結 138
第8章 實現更高的吞吐量和更低的延遲 139
8.1 技術要求 140
8.2 凍結層 140
8.2.1 在前向傳播期間凍結層 141
8.2.2 在前向傳播期間降低計算成本 144
8.2.3 在反向傳播期間凍結層 145
8.3 探索內存和存儲資源 147
8.4 瞭解模型分解和蒸餾 150
8.4.1 模型分解 151
8.4.2 模型蒸餾 153
8.5 減少硬件中的位數 153
8.6 小結 154
第3篇 高級並行範式
第9章 數據並行和模型並行的混合 157
9.1 技術要求 158
9.2 Megatron-LM用例研究 158
9.2.1 模型並行和層拆分 159
9.2.2 按行試錯法 161
9.2.3 按列試錯法 165
9.2.4 跨機數據並行 168
9.3 Megatron-LM的實現 169
9.4 Mesh-TensorFlow用例研究 171
9.5 Mesh-TensorFlow的實現 172
9.6 Megatron-LM和Mesh-TensorFlow的比較 172
9.7 小結 173
第10章 聯合學習和邊緣設備 175
10.1 技術要求 176
10.2 共享知識而不共享數據 176
10.2.1 傳統數據並行模型訓練範式 176
10.2.2 工作節點之間沒有輸入共享 178
10.2.3 在工作節點之間通信以同步梯度 179
10.3 用例研究:TensorFlow Federated 183
10.4 使用TinyML運行邊緣設備 185
10.5 用例研究:TensorFlow Lite 185
10.6 小結 186
第11章 彈性模型訓練和服務 187
11.1 技術要求 188
11.2 自適應模型訓練介紹 188
11.2.1 傳統的數據並行訓練 188
11.2.2 數據並行中的自適應模型訓練 191
11.2.3 自適應模型訓練(基於All-Reduce) 191
11.2.4 自適應模型訓練(基於參數服務器) 193
11.2.5 傳統的模型並行訓練範式 195
11.2.6 模型並行中的自適應模型訓練 196
11.3 在雲端實現自適應模型訓練 200
11.4 模型推理中的彈性服務 201
11.5 無服務器 202
11.6 小結 203
第12章 進一步加速的高級技術 205
12.1 技術要求 206
12.2 調試和性能分析 206
12.2.1 性能分析結果中的一般概念 208
12.2.2 通信結果分析 209
12.2.3 計算結果分析 210
12.3 作業遷移和多路復用 213
12.3.1 作業遷移 213
12.3.2 作業多路復用 214
12.4 異構環境中的模型訓練 214
12.5 小結 215



