從零構建大模型:算法、訓練與微調

梁楠

  • 出版商: 清華大學
  • 出版日期: 2025-04-01
  • 定價: $594
  • 售價: 8.5$505
  • 語言: 簡體中文
  • ISBN: 7302685614
  • ISBN-13: 9787302685616
  • 相關分類: LangChain
  • 下單後立即進貨 (約4週~6週)

  • 從零構建大模型:算法、訓練與微調-preview-1
  • 從零構建大模型:算法、訓練與微調-preview-2
  • 從零構建大模型:算法、訓練與微調-preview-3
從零構建大模型:算法、訓練與微調-preview-1

相關主題

商品描述

"《從零構建大模型:算法、訓練與微調》是一本系統且實用的大模型構建指南,旨在引領讀者從基礎知識起步,逐步深入探索大模型的算法原理、訓練方法及微調技術。《從零構建大模型:算法、訓練與微調》共12章,涵蓋了Transformer模型的基礎理論,如Seq2Seq模型、分詞、嵌入層和自註意力機制等關鍵概念;並深入剖析了GPT模型的核心實現與文本生成過程,以及BERT模型的預訓練和微調技術。同時,也對ViT(視覺Transformer)模型的架構、訓練方法,以及高階微調策略如Adapter Tuning和P-Tuning進行了詳盡講解。此外,還系統地介紹了數據處理、數據增強、模型性能優化(包括混合精度訓練和分佈式訓練)、對比學習、對抗訓練、自適應優化器、動態學習率調度,以及模型蒸餾與剪枝技術等多個方面。最後,通過應用案例,展示了模型訓練和微調的完整流程,助力讀者將理論知識轉化為實踐技能。 全書註重理論與實踐的結合,適合希望系統掌握大模型構建、訓練和優化的研發人員、高校學生,也適合對自然語言處理、電腦視覺等領域的大模型開發有興趣的讀者。還可作為培訓機構和高校相關課程的教學用書。"

目錄大綱

目    錄

引言 1

一、大模型技術的發展歷史 1

1. 基於規則和統計學習的早期階段 1

2. 神經網絡與深度學習的崛起 2

3. Transformer的誕生與自註意力機制的崛起 2

4. 預訓練模型的興起:BERT、GPT和T5 2

5. 超大規模模型與多模態應用 3

二、開發環境配置基礎 3

1. 硬件配置要求 3

2. 軟件依賴與環境搭建 4

3. 常見問題與解決方案 5

第 1 章  Transformer模型基礎 6

1.1  Seq2Seq模型 6

1.1.1  編碼器-解碼器工作原理 7

1.1.2  Seq2Seq結構實現 7

1.2  分詞與嵌入層 11

1.2.1  分詞器:將文本轉換為嵌入向量 11

1.2.2  PyTorch實現嵌入層(將分詞後的結果輸入模型) 11

1.3  自註意力與多頭註意力機制 15

1.3.1  自註意力機制計算過程(QKV矩陣生成和點積運算) 15

1.3.2  多頭註意力機制與Transformer 18

1.4  殘差連接與層歸一化 22

1.4.1  殘差連接層的實現 22

1.4.2  層歸一化與訓練穩定性 25

1.5  位置編碼器 28

1.5.1  位置編碼的計算與實現 28

1.5.2  位置編碼在無序文本數據中的作用 30

1.6  本章小結 35

1.7  思考題 35

第 2 章  GPT模型文本生成核心原理與實現 37

2.1  GPT-2核心模塊 37

2.1.1  層堆疊 37

2.1.2  GPT-2中的註意力機制 41

2.2  GPT模型的文本生成過程 44

2.2.1  詳解GPT-2文本生成過程 44

2.2.2  Greedy Search和Beam Search算法的實現與對比 47

2.3  模型效果評估與調優 51

2.3.1  模型常見評估方法 51

2.3.2  基於困惑度的評估過程 56

2.4  本章小結 60

2.5  思考題 60

第 3 章  BERT模型核心實現與預訓練 62

3.1  BERT模型的核心實現 62

3.1.1  編碼器堆疊 62

3.1.2  BERT的自註意力機制與掩碼任務 67

3.2  預訓練任務:掩碼語言模型(MLM) 71

3.2.1  MLM任務實現過程 71

3.2.2  如何對輸入數據進行隨機遮掩並預測 72

3.3  BERT模型的微調與分類任務應用 77

3.4  本章小結 81

3.5  思考題 81

第 4 章  ViT模型 83

4.1  圖像分塊與嵌入 83

4.2  ViT模型的核心架構實現 89

4.2.1  ViT模型的基礎結構 89

4.2.2  自註意力和多頭註意力在圖像處理中的應用 91

4.3  訓練與評估ViT模型 96

4.4  ViT模型與註意力嚴格量化分析 100

4.5  本章小結 105

4.6  思考題 105

第 5 章  高階微調策略:Adapter Tuning與P-Tuning 107

5.1  Adapter Tuning的實現 107

5.2  LoRA Tuning實現 111

5.3  Prompt Tuning與P-Tuning的應用 114

5.3.1  Prompt Tuning 114

5.3.2  P-Tuning 117

5.3.3  Prompt Tuning和P-Tuning組合微調 120

5.3.4  長文本情感分類模型的微調與驗證 122

5.4  本章小結 125

5.5  思考題 125

第 6 章  數據處理與數據增強 127

6.1  數據預處理與清洗 127

6.1.1  文本數據預處理 127

6.1.2  文本數據清洗 130

6.2  文本數據增強 133

6.2.1  同義詞替換 133

6.2.2  隨機插入 135

6.2.3  其他類型的文本數據增強方法 137

6.3  分詞與嵌入層的應用 139

6.3.1  深度理解分詞技術 140

6.3.2  嵌入向量的生成與優化 142

6.3.3  文本預處理與數據增強綜合案例 144

6.4  本章小結 146

6.5  思考題 147

第 7 章  模型性能優化:混合精度訓練與分佈式訓練 148

7.1  混合精度訓練的實現 148

7.2  多GPU並行與分佈式訓練的實現 150

7.2.1  分佈式訓練流程與常規配置方案 150

7.2.2  Data Parallel方案 152

7.2.3  Model Parallel方案 154

7.3  梯度累積的實現 157

7.3.1  梯度累積初步實現 157

7.3.2  小批量訓練中的梯度累積 159

7.3.3  梯度累積處理文本分類任務 161

7.4  本章小結 164

7.5  思考題 165

第 8 章  對比學習與對抗訓練 166

8.1  對比學習 166

8.1.1  構建正負樣本對及損失函數 166

8.1.2  SimCLR的實現與初步應用 171

8.2  基於對比學習的預訓練與微調 174

8.2.1  通過對比學習進行自監督預訓練 175

8.2.2  對比學習在分類、聚類等任務中的表現 180

8.3  生成式對抗網絡的實現與優化 183

8.4  對抗訓練在大模型中的應用 188

8.5  本章小結 192

8.6  思考題 192

第 9 章  自適應優化器與動態學習率調度 194

9.1  AdamW優化器與LAMB優化器的實現 194

9.1.1  AdamW優化器 194

9.1.2  LAMB優化器 197

9.2  基於梯度累積的優化技巧 200

9.2.1  大批量內存受限環境 200

9.2.2  梯度累積的應用場景和參數調整對訓練效果的影響 203

9.3  動態學習率調度 205

9.3.1  線性衰減 205

9.3.2  餘弦退火 207

9.4  Warmup與循環學習率調度 209

9.4.1  Warmup策略實現 209

9.4.2  循環學習率調度 211

9.4.3  其他幾種常見的動態學習調度器 214

9.5  本章小結 217

9.6  思考題 218

第 10 章  模型蒸餾與剪枝 219

10.1  知識蒸餾:教師-學生模型 219

10.1.1  知識蒸餾核心過程 219

10.1.2  教師-學生模型 221

10.1.3  蒸餾損失 224

10.2  知識蒸餾在文本模型中的應用 226

10.2.1  知識蒸餾在文本分類模型中的應用 226

10.2.2  模型蒸餾效率分析 229

10.2.3  文本情感分析任務中的知識蒸餾效率對比 231

10.3  模型剪枝技術 234

10.3.1  權重剪枝 234

10.3.2  結構化剪枝 237

10.3.3  在嵌入式設備上部署手寫數字識別模型 240

10.3.4  BERT模型的多頭註意力剪枝 243

10.4  本章小結 247

10.5  思考題 248

第 11 章  模型訓練實戰 249

11.1  數據預處理與Tokenization細節 249

11.1.1  大規模文本數據清洗 249

11.1.2  常用分詞器的使用 252

11.2  大規模預訓練模型的設置與啟動 255

11.3  預訓練過程中的監控與中間結果保存 258

11.4  訓練中斷與恢復機制 262

11.5  綜合案例:IMDB文本分類訓練全流程 265

11.5.1  數據預處理與Tokenization 265

11.5.2  多GPU與分佈式訓練設置 266

11.5.3  訓練過程中的監控與中間結果保存 266

11.5.4  訓練中斷與恢復 267

11.5.5  測試模型性能 268

11.6  本章小結 269

11.7  思考題 270

第 12 章  模型微調實戰 271

12.1  微調數據集的選擇與準備 271

12.1.1  數據集準備與清洗 271

12.1.2  數據集分割 272

12.1.3  數據增強 272

12.2  層級凍結與部分解凍策略 274

12.3  模型參數調整與優化技巧 276

12.4  微調後的模型評估與推理優化 278

12.5  綜合微調應用案例 280

12.6  本章小結 283

12.7  思考題 283