Python預訓練視覺和大語言模型 Pretrain Vision and Large Language Models in Python: End-to-end techniques for building and deploying foundation models on AWS
[美] 艾米麗·韋伯(Emily Webber)著 郭濤 譯
- 出版商: 清華大學
- 出版日期: 2025-01-01
- 定價: $359
- 售價: 8.5 折 $305
- 語言: 簡體中文
- ISBN: 7302678316
- ISBN-13: 9787302678311
-
相關分類:
LangChain
- 此書翻譯自: Pretrain Vision and Large Language Models in Python: End-to-end techniques for building and deploying foundation models on AWS
下單後立即進貨 (約4週~6週)
相關主題
商品描述
"●為預訓練和微調尋找合適的用例和數據集 ●使用定製的加速器和GPU,為大規模訓練做好準備 ●配置AWS和SageMaker環境,**限度地提高性能 ●根據模型和約束條件選擇超參數 ●使用多種並行方式分發模型和數據集 ●利用作業重啟、間歇性健康檢查等方式避開陷阱 ●定性和定量地評估模型 ●部署模型,在運行時進行改進和監控 "
目錄大綱
目 錄
第Ⅰ部分 預訓練前
第1章 預訓練基礎模型簡介 3
1.1 預訓練和微調藝術 4
1.2 Transformer模型架構和自註意力 6
1.3 最先進的視覺模型和語言模型 8
1.3.1 截至2023年4月的頂級視覺模型 9
1.3.2 對比預訓練與自然語言監督 11
1.3.3 截至2023年4月的頂級語言模型 12
1.3.4 語言技術重點——因果建模和縮放法則 14
1.4 編碼器和解碼器 15
1.5 本章小結 17
第2章 數據集準備:第1部分 19
2.1 為基礎建模尋找數據集和用例 19
2.2 你的數據集有多大區別 23
2.2.1 使用縮放法則調整數據集的大小 25
2.2.2 基礎——神經語言模型的縮放法則 26
2.3 偏差檢測和減少 28
2.4 增強數據集——多語言、多模態和增強 30
2.5 本章小結 32
第3章 模型準備 35
3.1 尋找最優基礎模型 35
3.1.1 從最小的基礎模型開始 37
3.1.2 權衡——簡單與復雜 37
3.1.3 權衡——應用於許多用例,而非局限於一個用例 38
3.1.4 找到最優基礎模型的技術方法 39
3.2 尋找預訓練損失函數 39
3.2.1 視覺的預訓練損失函數——ViT和CoCa 41
3.2.2 語言中的預訓練損失函數——Alexa教師模型 44
3.2.3 更改預訓練損失函數 46
3.3 設定模型大小 46
3.3.1 解決模型大小問題的實用方法 49
3.3.2 並非所有縮放法則的效果都相同 49
3.3.3 規劃未來的實驗 50
3.4 本章小結 51
第Ⅱ部分 配置環境
第4章 雲容器和雲加速器 55
4.1 什麽是加速器,為什麽它們很重要 55
4.2 準備使用加速器 58
4.3 優化加速器性能 63
4.3.1 超參數 63
4.3.2 AWS上加速器的基礎設施優化 64
4.4 加速器性能故障排除 65
4.5 本章小結 67
第5章 分佈式基礎知識 69
5.1 理解關鍵概念——數據和模型並行性 69
5.1.1 什麽是數據並行 70
5.1.2 什麽是模型並行 71
5.2 將模型與數據並行相結合 73
5.3 Amazon SageMaker分佈式訓練 74
5.3.1 分佈式訓練軟件 75
5.3.2 SM DDP 76
5.3.3 SMP庫 77
5.4 減少GPU內存的高級技術 79
5.4.1 張量並行性 80
5.4.2 優化器狀態分片 81
5.4.3 激活檢查點 81
5.4.4 分片數據並行性 81
5.5 當今模型的示例 82
5.5.1 Stable Diffusion——大規模數據並行 82
5.5.2 GPT-3——大規模的模型和數據並行性 83
5.6 本章小結 84
第6章 數據集準備:第2部分 85
6.1 Python中的數據加載器 86
6.2 構建和測試自己的數據加載器——來自Stable Diffusion的案例研究 88
6.3 創建嵌入——詞元分析器和智能功能的其他關鍵步驟 91
6.4 在Amazon SageMaker上優化數據管道 95
6.5 在AWS上大規模轉換深度學習數據集 98
6.6 本章小結 100
第Ⅲ部分 訓練模型
第7章 尋找合適的超參數 103
7.1 超參數——批量大小、學習率等 103
7.2 微調策略 105
7.3 基礎模型的超參數微調 108
7.4 使用SageMaker根據world size放大 109
7.5 本章小結 113
第8章 SageMaker的大規模訓練 115
8.1 優化SageMaker訓練的腳本 115
8.1.1 導入程序包 116
8.1.2 參數解析 116
8.1.3 函數定義和用法 118
8.2 SageMaker訓練的頂級可用性功能 121
8.2.1 用於快速實驗的暖池 121
8.2.2 SSM和SSH進入訓練實例 122
8.2.3 跟蹤作業和實驗以復制結果 123
8.3 本章小結 127
第9章 高級訓練概念 129
9.1 評估和提高吞吐量 129
9.2 使用Flash註意力加速訓練運行 132
9.3 通過編譯加快作業速度 133
9.4 Amazon SageMaker訓練編譯器和Neo 135
9.5 在亞馬遜的Trainium和Inferentia自定義硬件上運行編譯後的模型 137
9.6 求解最優訓練時間 138
9.7 本章小結 140
第Ⅳ部分 評估模型
第10章 微調和評估 143
10.1 對語言、文本和其間的一切進行微調 143
10.1.1 微調純語言模型 145
10.1.2 微調純視覺模型 147
10.1.3 微調視覺語言模型 149
10.2 評估基礎模型 150
10.2.1 視覺模型評估指標 150
10.2.2 語言模型評估指標 152
10.2.3 聯合視覺-語言任務中的模型評估指標 154
10.2.4 通過SageMaker Ground Truth將人類視角與標簽相結合 156
10.3 從人類反饋中強化學習 157
10.4 本章小結 158
第11章 檢測、減少和監控偏差 161
11.1 檢測機器學習模型中的偏差 161
11.2 減少視覺和語言模型中的偏差 165
11.2.1 語言模型中的偏差減少——反事實數據增強和公平損失函數 166
11.2.2 視覺模型中的偏差減少——減少相關性並解決採樣問題 169
11.3 監控機器學習模型中的偏差 170
11.4 使用SageMaker Clarify檢測、減輕和監控偏差 172
11.5 本章小結 173
第Ⅴ部分 部署模型
第12章 如何部署模型 177
12.1 模型部署的定義 177
12.2 托管模型的最優方式 179
12.3 為什麽縮小模型,以及如何縮小 182
12.3.1 模型編譯 183
12.3.2 知識蒸餾 183
12.3.3 量化 184
12.4 在SageMaker上托管分佈式模型 184
12.5 模型服務器和端到端托管優化 186
12.6 本章小結 188
第13章 提示工程 189
13.1 提示工程——以少搏多的藝術 189
13.2 從少樣本學習到零樣本學習 190
13.3 文本到圖像提示工程的註意之處 193
13.4 圖像到圖像提示工程的註意之處 196
13.4.1 放大 196
13.4.2 掩膜 196
13.4.3 使用DreamBooth提示目標到圖像 197
13.5 提示大型語言模型 198
13.5.1 指令微調 198
13.5.2 思維鏈提示 199
13.5.3 摘要 200
13.5.4 防止提示註入和越獄 200
13.6 高級技術——前綴和提示微調 201
13.6.1 前綴微調 201
13.6.2 提示微調 203
13.7 本章小結 204
第14章 視覺和語言MLOps 205
14.1 什麽是MLOps? 205
14.2 持續集成和持續部署 208
14.3 模型監控和人機回環 210
14.4 基礎模型的MLOps 212
14.5 視覺MLOps 213
14.6 AWS為MLOps提供的服務 215
14.7 本章小結 218
第15章 預訓練基礎模型的未來趨勢 219
15.1 構建LLM應用程序的技術 219
15.1.1 使用開源堆棧構建交互式對話應用程序 220
15.1.2 使用RAG確保LLM應用程序的高準確性 222
15.1.3 生成是新的分類嗎? 223
15.1.4 用LLM構建應用的人性化設計 224
15.2 其他生成式模式 225
15.3 基礎模型中的AWS產品 226
15.4 基礎模型的未來 228
15.5 預訓練的未來 229
15.6 本章小結 232
—— 以下內容可掃描封底二維碼下載 ——
參考文獻 233