理解深度學習

[美] 西蒙·J.D. 普林斯(Simon J.D. Prince)著 張亞東 馬壯 譯

  • 理解深度學習-preview-1
  • 理解深度學習-preview-2
  • 理解深度學習-preview-3
理解深度學習-preview-1

相關主題

商品描述

"一部**、通俗、前沿的深度學習指南。 從機器學習基礎知識到前沿模型,《理解深度學習》精選關鍵理論與尖端主題,以直觀形式呈現高密度的核心知識。 ?涵蓋熱門主題:如Transformer模型與擴散模型(Diffusion Model)。 ?化繁為簡:先以通俗語言闡釋復雜概念,再輔以數學公式與視覺圖解深入解析。 ?實踐導向:引導讀者動手實現模型的初級版本。 ?配套資源豐富:提供教師課件、習題及Python Notebook編程練習。 ?適用讀者:適合已掌握應用數學基礎知識的本科生、研究生及從業者。"

作者簡介

Simon J.D.Prince 現任英國巴斯大學計算機科學名譽教授,著有Computer Vision: Models, Learning, and Inference .他專註於人工智能與深度學習領域研究,曾在Anthropics Technologies Ltd、Borealis AI等機構領導學術界與工業界科研團隊。

目錄大綱

目 錄

第1章 引言 1

1.1 監督學習 1

1.1.1 回歸和分類問題 2

1.1.2 輸入 3

1.1.3 機器學習模型 4

1.1.4 深度神經網絡 5

1.1.5 結構化輸出 5

1.2 無監督學習 7

1.2.1 生成模型 7

1.2.2 潛變量 9

1.2.3 聯系監督學習和無監督學習 10

1.3 強化學習 11

1.4 倫理學 12

1.5 本書編排方式 13

1.6 其他書籍 14

1.7 如何閱讀本書 15

第2章 監督學習 16

2.1 監督學習概述 16

2.2 線性回歸示例 17

2.2.1 一維(1D)線性回歸模型 17

2.2.2 損失 18

2.2.3 訓練 20

2.2.4 測試 21

2.3 本章小結 21

2.4 註釋 22

2.5 問題 22

第3章 淺層神經網絡 24

3.1 神經網絡示例 24

3.1.1 神經網絡的直觀理解 25

3.1.2 描繪神經網絡 27

3.2  通用逼近定理 28

3.3 多變量輸入和輸出 29

3.3.1 可視化多變量輸出 29

3.3.2 可視化多變量輸入 30

3.4 淺層神經網絡:一般情形 33

3.5 術語 33

3.6 本章小結 34

3.7 註釋 34

3.8 問題 37

第4章 深度神經網絡 40

4.1 組合神經網絡 40

4.2 從組合網絡到深度網絡 43

4.3 深度神經網絡 43

4.4 矩陣表示法 46

4.5 淺層與深度神經網絡 48

4.5.1 逼近不同函數的能力 48

4.5.2 每參數線性區域數量 48

4.5.3 深度效率 49

4.5.4 大型結構化輸入 49

4.5.5 訓練和泛化 49

4.6 本章小結 50

4.7 註釋 50

4.8 問題 51

第5章 損失函數 54

5.1 最大似然 54

5.1.1 計算輸出分布 56

5.1.2 最大似然準則 56

5.1.3 最大化對數似然 56

5.1.4 最小化負對數似然 57

5.1.5 模型推理 58

5.2 構建損失函數 58

5.3 示例1:單變量回歸問題 58

5.3.1 最小二乘損失函數 59

5.3.2 模型推理 61

5.3.3 方差估計 61

5.3.4 異方差回歸 62

5.4 示例2:二分類問題 63

5.5 示例3:多分類問題 65

5.6 多輸出問題 67

5.7 交叉熵損失 68

5.8 本章小結 69

5.9 註釋 70

5.10 問題 71

第6章 模型訓練 74

6.1 梯度下降法 74

6.1.1 線性回歸示例 75

6.1.2 Garbor模型示例 77

6.1.3 局部最小值和鞍點 77

6.2 隨機梯度下降 79

6.2.1 批次和epoch 80

6.2.2 隨機梯度下降的特性 82

6.3 動量 82

6.4 Adam 優化器 84

6.5 訓練算法超參數 86

6.6 本章小結 87

6.7 註釋 87

6.8 問題 90

第7章 梯度與參數初始化 93

7.1 問題定義 93

7.2 計算導數 95

7.3 簡單示例 96

7.4 反向傳播算法 99

7.4.1 反向傳播算法總結 102

7.4.2 自動微分 103

7.4.3 擴展到任意計算圖 103

7.5 參數初始化 103

7.5.1 正向傳播的初始化 104

7.5.2 反向傳播的初始化 106

7.5.3 正向和反向傳播的初始化 106

7.6 訓練代碼示例 107

7.7 本章小結 108

7.8 註釋 108

7.9 問題 110

第8章 性能評估 114

8.1 訓練簡單模型 114

8.2 誤差來源 116

8.2.1 噪聲、偏差和方差 117

8.2.2 測試誤差的數學表達 118

8.3 降低誤差 120

8.3.1 降低方差 120

8.3.2 降低偏差 122

8.3.3 偏差-方差權衡 122

8.4 選擇超參數 127

8.5 本章小結 128

8.6 註釋 128

8.7 問題 131

第9章 正則化 133

9.1 顯式正則化 133

9.1.1 概率解釋 134

9.1.2 L2正則化 134

9.2 隱式正則化 136

9.2.1 梯度下降法中的隱式正則化 136

9.2.2 隨機梯度下降法中的隱式正則化 137

9.3 提高性能的啟發式算法 139

9.3.1 提前停止 139

9.3.2 集成學習 140

9.3.3 隨機丟棄 141

9.3.4 添加噪聲 143

9.3.5 貝葉斯推理 144

9.3.6 遷移學習和多任務學習 145

9.3.7 自監督學習 146

9.3.8 數據增廣 146

9.4 本章小結 147

9.5 註釋 148

9.6 問題 154

第10章 卷積網絡 155

10.1 不變性和等變性 156

10.2 用於一維輸入的卷積網絡 157

10.2.1 一維卷積操作 157

10.2.2 填充 157

10.2.3 步長、核大小和膨脹率 158

10.2.4 卷積層 159

10.2.5 通道 160

10.2.6 卷積網絡和感受野 160

10.2.7 示例:MNIST-1D 161

10.3 二維輸入的卷積網絡 163

10.4 下采樣和上采樣 165

10.4.1 下采樣 165

10.4.2 上采樣 165

10.4.3 更改通道數量 166

10.5 應用 167

10.5.1 圖像分類 167

10.5.2 目標檢測 169

10.5.3 語義分割 170

10.6 本章小結 172

10.7 註釋 172

10.8 問題 176

第11章 殘差網絡 178

11.1 順序處理 178

11.2 殘差連接和殘差塊 180

11.2.1 殘差塊中的操作順序 182

11.2.2 帶有殘差連接的更深層網絡 182

11.3 殘差網絡中的梯度爆炸 183

11.4 批量歸一化 184

11.5 常見的殘差架構 185

11.5.1 ResNet 185

11.5.2 DenseNet 187

11.5.3 U-Net和沙漏網絡 188

11.6 為什麼具有殘差連接的網絡表現如此出色? 190

11.7 本章小結 190

11.8 註釋 191

11.9 問題 195

第12章 變換器 197

12.1 處理文本數據 197

12.2 點積自註意力 198

12.2.1 計算和加權值 199

12.2.2 計算註意力權重 200

12.2.3 自註意力總結 201

12.2.4 矩陣形式 202

12.3 點積自註意力的擴展 203

12.3.1 位置編碼 203

12.3.2 縮放點積自註意力 204

12.3.3 多頭 204

12.4 變換器 205

12.5 自然語言處理中的變換器 206

12.5.1 分詞 206

12.5.2 嵌入 207

12.5.3 變換器模型 208

12.6 編碼器模型示例:BERT 208

12.6.1 預訓練 209

12.6.2 微調 209

12.7 解碼器模型示例:GPT-3 211

12.7.1 語言建模 211

12.7.2 掩碼自註意力 211

12.7.3 從解碼器生成文本 212

12.7.4 GPT-3與少樣本學習 213

12.8 編碼器-解碼器模型示例:機器翻譯 214

12.9 用於長序列的變換器 216

12.10 圖像的變換器 217

12.10.1 ImageGPT 218

12.10.2 視覺變換器(ViT) 219

12.10.3 多尺度視覺變換器 219

12.11 本章小結 220

12.12 註釋 221

12.13 問題 228

第13章 圖神經網絡 230

13.1 什麼是圖 230

13.2 圖的表示 233

13.2.1 鄰接矩陣的屬性 233

13.2.2 節點索引的排列 234

13.3 圖神經網絡、任務和損失函數 235

13.4 圖卷積網絡 237

13.4.1 等變性和不變性 238

13.4.2 參數共享 238

13.4.3 GCN層示例 239

13.5 示例:圖分類 240

13.6 歸納模型與演繹模型 241

13.7 示例:節點分類 242

13.8 圖卷積網絡的層 245

13.8.1 結合當前節點和聚合鄰居 245

13.8.2 殘差連接 245

13.8.3 平均聚合 246

13.8.4 Kipf歸一化 246

13.8.5 最大池化聚合 246

13.8.6 註意力聚合 246

13.9 邊圖 248

13.10 本章小結 249

13.11 註釋 249

13.12 問題 254

第14章 無監督學習 257

14.1 無監督學習模型分類 257

14.2 什麼是好的生成模型? 259

14.3 量化評估指標 260

14.4 本章小結 263

14.5 註釋 263

第15章 生成式對抗網絡 264

15.1 判別作為信號 264

15.1.1 GAN 損失函數 265

15.1.2 訓練 GAN 266

15.1.3 DCGAN 267

15.1.4 GAN訓練的難點 268

15.2 提高穩定性 269

15.2.1 GAN 損失函數分析 269

15.2.2 梯度消失 270

15.2.3 Wasserstein距離 271

15.2.4 離散分布的Wasserstein距離 271

15.2.5 連續分布的Wasserstein距離 273

15.2.6 Wasserstein GAN損失函數 273

15.3 提升生成圖像質量的方法 274

15.4 條件生成 276

15.4.1 cGAN 276

15.4.2 ACGAN 277

15.4.3 InfoGAN 278

15.5 圖像翻譯 279

15.5.1 Pix2Pix 279

15.5.2 對抗性損失 279

15.5.3 CycleGAN 281

15.6 StyleGAN 282

15.7 本章小結 284

15.8 註釋 285

15.9 問題 288

第16章 標準化流 290

16.1 一維示例 290

16.1.1 計算概率 291

16.1.2 正向和反向映射 292

16.1.3 學習 292

16.2 一般情況 293

16.2.1 基於深度神經網絡的正向映射 293

16.2.2 對網絡層的要求 294

16.3 可逆網絡層 295

16.3.1 線性流 295

16.3.2 逐元素流 296

16.3.3 耦合流 297

16.3.4 自回歸流 298

16.3.5 反向自回歸流 299

16.3.6 殘差流:iRevNet 300

16.3.7 殘差流和收縮映射:iResNet 301

16.4 多尺度流 302

16.5 應用 303

16.5.1 密度建模 303

16.5.2 圖像合成 304

16.5.3 近似其他密度模型 305

16.6 本章小結 306

16.7 註釋 307

16.8 問題 310

第17章 變分自編碼器 312

17.1 隱變量模型 312

17.2 非線性隱變量模型 314

17.3 訓練 315

17.3.1 證據下界 (ELBO) 315

17.3.2 Jensen 不等式 316

17.3.3 推導下界 317

17.4 ELBO 的性質 318

17.4.1 下界的緊密性 318

17.4.2 ELBO的第三種表示方式 319

17.5 變分近似 320

17.6 變分自編碼器 320

17.7 重參數化技巧 323

17.8 應用 323

17.8.1 估計樣本概率 323

17.8.2 生成 324

17.8.3 重合成 325

17.8.4 解耦 326

17.9 本章小結 327

17.10 註釋 328

17.11 問題 331

第18章 擴散模型 333

18.1 概述 333

18.2 編碼器(前向過程) 334

18.2.1 擴散核 335

18.2.2 邊緣分布 337

18.2.3 條件分布 338

18.2.4 條件擴散分布 338

18.3 解碼器模型(反向過程) 340

18.4 訓練 340

18.4.1 證據下界 (ELBO) 341

18.4.2 簡化 ELBO 341

18.4.3 分析ELBO 342

18.4.4 擴散損失函數 343

18.4.5 訓練過程 343

18.5 損失函數的重參數化 344

18.5.1 目標值的參數化 345

18.5.2 網絡的重參數化 346

18.6 實現 347

18.6.1 應用於圖像 347

18.6.2 提高生成速度 348

18.6.3 條件生成 349

18.6.4 提高生成質量 350

18.7 本章小結 352

18.8 註釋 352

18.9 問題 355

第19章 強化學習 357

19.1 馬爾可夫決策過程、回報和策略 357

19.1.1 馬爾可夫過程 358

19.1.2 馬爾可夫獎勵過程 358

19.1.3 馬爾可夫決策過程 359

19.1.4 部分可觀測馬爾可夫決策過程 359

19.1.5 策略 360

19.2 預期回報 361

19.2.1 狀態和動作價值 362

19.2.2 最優策略 363

19.2.3 貝爾曼式 363

19.3 表格型強化學習 365

19.3.1 動態規劃 365

19.3.2 蒙特卡羅方法 366

19.3.3 時間差分方法 367

19.4 擬合Q學習 368

19.4.1 用於玩ATARI遊戲的深度Q網絡 369

19.4.2 雙Q學習和雙深度Q網絡 370

19.5 策略梯度方法 371

19.5.1 梯度更新的推導 372

19.5.2 REINFORCE算法 374

19.5.3 基線 374

19.5.4 狀態依賴的基線 375

19.6 演員-評論家方法 376

19.7 離線強化學習 377

19.8 本章小結 378

19.9 註釋 378

19.10 問題 382

第20章 為什麼深度網絡有效 385

20.1 質疑深度學習的案例 385

20.1.1 訓練 385

20.1.2 泛化 386

20.1.3 看似不合理的有效性 386

20.2 影響擬合性能的因素 387

20.2.1 數據集 387

20.2.2 正則化 387

20.2.3 隨機訓練算法 388

20.2.4 過度參數化 388

20.2.5 激活函數 389

20.2.6 初始化 390

20.2.7 網絡深度 390

20.3 損失函數的性質 391

20.3.1 多個全局最小值 391

20.3.2 到達最小值的路徑 391

20.3.3 最小值之間的聯系 392

20.3.4 損失面的曲率 393

20.4 決定泛化的因素 394

20.4.1 訓練算法 394

20.4.2 最小值的平坦度 395

20.4.3 架構 396

20.4.4 權重的範數 396

20.4.5 過度參數化 397

20.4.6 離開數據流形 397

20.5 我們需要這麼多參數嗎 398

20.5.1 剪枝 399

20.5.2 知識蒸餾 400

20.5.3 討論 400

20.6 網絡必須很深嗎? 401

20.6.1 建模函數的復雜性 401

20.6.2 訓練的可行性 402

20.6.3 歸納偏差 402

20.7 本章小結 402

20.8 問題 403

第21章 深度學習和倫理 404

21.1 價值一致性 405

21.1.1 偏見與公平性 406

21.1.2 人工道德代理 408

21.1.3 透明度與不透明度 409

21.1.4 可解釋性 409

21.2 故意濫用 410

21.2.1 面部識別和分析 410

21.2.2 軍事化和政治幹預 410

21.2.3 欺詐 411

21.2.4 數據隱私 411

21.3 其他社會、倫理和專業問題 412

21.3.1 知識產權 412

21.3.2 自動化偏見和道德技能退化 412

21.3.3 環境影響 413

21.3.4 就業和社會 413

21.3.5 權力集中 413

21.4 案例研究 414

21.5 科學的價值中立理想 414

21.6 負責任的人工智能研究作為集體行動問題 415

21.6.1 科學溝通 416

21.6.2 多樣性和異質性 416

21.7 未來的方向 416

21.8 本章小結 417

21.9 問題 418

附錄A 符號表示 420

附錄B 數學 423

附錄C 概率 432