本書由全球知名的3位專家Ian Goodfellow、Yoshua Bengio 和Aaron Courville撰寫,是深度學(xué)習(xí)領(lǐng)域奠基性的經(jīng)典教材。全書的內(nèi)容包括3個部分:第1部分介紹基本的數(shù)學(xué)工具和機器學(xué)習(xí)的概念,它們是深度學(xué)習(xí)的預(yù)備知識;第2部分系統(tǒng)深入地講解現(xiàn)今已成熟的深度學(xué)習(xí)方法和技術(shù);第3部分討論某些具有前瞻性的方向和想法,它們被公認(rèn)為是深度學(xué)習(xí)未來的研究重點。
《深度學(xué)習(xí)》適合各類讀者閱讀,包括相關(guān)專業(yè)的大學(xué)生或研究生,以及不具有機器學(xué)習(xí)或統(tǒng)計背景、但是想要快速補充深度學(xué)習(xí)知識,以便在實際產(chǎn)品或平臺中應(yīng)用的軟件工程師。
1. AI圣經(jīng),美亞人工智能和機器學(xué)習(xí)榜長久不衰的經(jīng)典暢銷書
2. 全球知名的3 位專家Ian Goodfellow、Yoshua Bengio 和Aaron Courville 撰寫
3. 深度學(xué)習(xí)領(lǐng)域奠基性圖書
作者簡介
Ian Goodfellow,谷歌公司(Google)研究科學(xué)家,2014年蒙特利爾大學(xué)機器學(xué)習(xí)博士。他的研究興趣涵蓋大多數(shù)深度學(xué)習(xí)主題,特別是生成模型以及機器學(xué)習(xí)的安全和隱私。他在研究對抗樣本方面是一位有影響力的早期研究者,他發(fā)明了生成式對抗網(wǎng)絡(luò),在深度學(xué)習(xí)領(lǐng)域貢獻(xiàn)卓越。
Yoshua Bengio,2018年圖靈獎得主,蒙特利爾大學(xué)計算機科學(xué)與運籌學(xué)系(DIRO)教授,蒙特利爾學(xué)習(xí)算法研究所(MILA)負(fù)責(zé)人,CIFAR項目的共同負(fù)責(zé)人,加拿大統(tǒng)計學(xué)習(xí)算法研究主席。Yoshua Bengio的主要研究目標(biāo)是了解產(chǎn)生智力的學(xué)習(xí)原則。他還教授“機器學(xué)習(xí)”研究生課程(IFT6266),并培養(yǎng)了一大批研究生和博士后。
Aaron Courville,蒙特利爾大學(xué)計算機科學(xué)與運籌學(xué)系的助理教授,也是LISA實驗室的成員。目前他的研究興趣集中在發(fā)展深度學(xué)習(xí)模型和方法,特別是開發(fā)概率模型和新穎的推斷方法。Aaron Courville主要專注于計算機視覺應(yīng)用,在其他領(lǐng)域,如自然語言處理、音頻信號處理、語音理解和其他AI相關(guān)任務(wù)方面也有所研究。
中文版審校者簡介
張志華,北京大學(xué)數(shù)學(xué)科學(xué)學(xué)院統(tǒng)計學(xué)教授,北京大學(xué)大數(shù)據(jù)研究中心和北京大數(shù)據(jù)研究院數(shù)據(jù)科學(xué)教授,主要從事機器學(xué)習(xí)和應(yīng)用統(tǒng)計學(xué)的教學(xué)與研究工作。
譯者簡介
趙申劍,上海交通大學(xué)計算機系碩士研究生,研究方向為數(shù)值優(yōu)化和自然語言處理。
黎彧君,上海交通大學(xué)計算機系博士研究生,研究方向為數(shù)值優(yōu)化和強化學(xué)習(xí)。
符天凡,上海交通大學(xué)計算機系碩士研究生,研究方向為貝葉斯推斷。
李凱,上海交通大學(xué)計算機系博士研究生,研究方向為博弈論和強化學(xué)習(xí)。
第 1 章引言 1
1.1 本書面向的讀者 7
1.2 深度學(xué)習(xí)的歷史趨勢 8
1.2.1 神經(jīng)網(wǎng)絡(luò)的眾多名稱和命運變遷 8
1.2.2 與日俱增的數(shù)據(jù)量 12
1.2.3 與日俱增的模型規(guī)!13
1.2.4 與日俱增的精度、復(fù)雜度和對現(xiàn)實世界的沖擊 15
第 1 部分應(yīng)用數(shù)學(xué)與機器學(xué)習(xí)基礎(chǔ)
第 2 章線性代數(shù) 19
2.1 標(biāo)量、向量、矩陣和張量 19
2.2 矩陣和向量相乘 21
2.3 單位矩陣和逆矩陣 22
2.4 線性相關(guān)和生成子空間 23
2.5 范數(shù) 24
2.6 特殊類型的矩陣和向量 25
2.7 特征分解 26
2.8 奇異值分解 28
2.9 Moore-Penrose 偽逆 28
2.10 跡運算 29
2.11 行列式 30
2.12 實例:主成分分析 30
第3 章概率與信息論 34
3.1 為什么要使用概率 34
3.2 隨機變量 35
3.3 概率分布 36
3.3.1 離散型變量和概率質(zhì)量函數(shù) 36
3.3.2 連續(xù)型變量和概率密度函數(shù) 36
3.4 邊緣概率 37
3.5 條件概率 37
3.6 條件概率的鏈?zhǔn)椒▌t 38
3.7 獨立性和條件獨立性 38
3.8 期望、方差和協(xié)方差 38
3.9 常用概率分布 39
3.9.1 Bernoulli 分布 40
3.9.2 Multinoulli 分布 40
3.9.3 高斯分布 40
3.9.4 指數(shù)分布和Laplace 分布 41
3.9.5 Dirac 分布和經(jīng)驗分布 42
3.9.6 分布的混合 42
3.10 常用函數(shù)的有用性質(zhì) 43
3.11 貝葉斯規(guī)則 45
3.12 連續(xù)型變量的技術(shù)細(xì)節(jié) 45
3.13 信息論 47
3.14 結(jié)構(gòu)化概率模型 49
第4 章數(shù)值計算 52
4.1 上溢和下溢 52
4.2 病態(tài)條件 53
4.3 基于梯度的優(yōu)化方法 53
4.4 約束優(yōu)化 60
4.5 實例:線性最小二乘 61
第5 章機器學(xué)習(xí)基礎(chǔ) 63
5.1 學(xué)習(xí)算法 63
5.1.1 任務(wù)T 63
5.1.2 性能度量P 66
5.1.3 經(jīng)驗E 66
5.1.4 示例:線性回歸 68
5.2 容量、過擬合和欠擬合 70
5.2.1 沒有免費午餐定理 73
5.2.2 正則化 74
5.3 超參數(shù)和驗證集 76
5.4 估計、偏差和方差 77
5.4.1 點估計 77
5.4.2 偏差 78
5.4.3 方差和標(biāo)準(zhǔn)差 80
5.4.4 權(quán)衡偏差和方差以最小化均方誤差 81
5.4.5 一致性 82
5.5 最大似然估計 82
5.5.1 條件對數(shù)似然和均方誤差 84
5.5.2 最大似然的性質(zhì) 84
5.6 貝葉斯統(tǒng)計 85
5.7 監(jiān)督學(xué)習(xí)算法 88
5.7.1 概率監(jiān)督學(xué)習(xí) 88
5.7.2 支持向量機 88
5.7.3 其他簡單的監(jiān)督學(xué)習(xí)算法 90
5.8 無監(jiān)督學(xué)習(xí)算法 91
5.8.1 主成分分析 92
5.8.2 k- 均值聚類 94
5.9 隨機梯度下降 94
5.10 構(gòu)建機器學(xué)習(xí)算法 96
5.11 促使深度學(xué)習(xí)發(fā)展的挑戰(zhàn) 96
5.11.1 維數(shù)災(zāi)難 97
5.11.2 局部不變性和平滑正則化 97
5.11.3 流形學(xué)習(xí) 99
第 2 部分深度網(wǎng)絡(luò):現(xiàn)代實踐
第6 章深度前饋網(wǎng)絡(luò) 105
6.1 實例:學(xué)習(xí)XOR 107
6.2 基于梯度的學(xué)習(xí) 110
6.2.1 代價函數(shù) 111
6.2.2 輸出單元 113
6.3 隱藏單元 119
6.3.1 整流線性單元及其擴(kuò)展 120
6.3.2 logistic sigmoid 與雙曲正切函數(shù) 121
6.3.3 其他隱藏單元 122
6.4 架構(gòu)設(shè)計 123
6.4.1 萬能近似性質(zhì)和深度 123
6.4.2 其他架構(gòu)上的考慮 125
6.5 反向傳播和其他的微分算法 126
6.5.1 計算圖 127
6.5.2 微積分中的鏈?zhǔn)椒▌t 127
6.5.3 遞歸地使用鏈?zhǔn)椒▌t來實現(xiàn)反向傳播 128
6.5.4 全連接MLP 中的反向傳播計算 131
6.5.5 符號到符號的導(dǎo)數(shù) 131
6.5.6 一般化的反向傳播 133
6.5.7 實例:用于MLP 訓(xùn)練的反向傳播 135
6.5.8 復(fù)雜化 137
6.5.9 深度學(xué)習(xí)界以外的微分 137
6.5.10 高階微分 138
6.6 歷史小記 139
第7 章深度學(xué)習(xí)中的正則化 141
7.1 參數(shù)范數(shù)懲罰 142
7.1.1 L2 參數(shù)正則化 142
7.1.2 L1 正則化 144
7.2 作為約束的范數(shù)懲罰 146
7.3 正則化和欠約束問題 147
7.4 數(shù)據(jù)集增強 148
7.5 噪聲魯棒性 149
7.6 半監(jiān)督學(xué)習(xí) 150
7.7 多任務(wù)學(xué)習(xí) 150
7.8 提前終止 151
7.9 參數(shù)綁定和參數(shù)共享 156
7.10 稀疏表示 157
7.11 Bagging 和其他集成方法 158
7.12 Dropout 159
7.13 對抗訓(xùn)練 165
7.14 切面距離、正切傳播和流形正切分類器 167
第8 章深度模型中的優(yōu)化 169
8.1 學(xué)習(xí)和純優(yōu)化有什么不同 169
8.1.1 經(jīng)驗風(fēng)險最小化 169
8.1.2 代理損失函數(shù)和提前終止 170
8.1.3 批量算法和小批量算法 170
8.2 神經(jīng)網(wǎng)絡(luò)優(yōu)化中的挑戰(zhàn) 173
8.2.1 病態(tài) 173
8.2.2 局部極小值 174
8.2.3 高原、鞍點和其他平坦區(qū)域 175
8.2.4 懸崖和梯度爆炸 177
8.2.5 長期依賴 177
8.2.6 非精確梯度 178
8.2.7 局部和全局結(jié)構(gòu)間的弱對應(yīng) 178
8.2.8 優(yōu)化的理論限制 179
8.3 基本算法 180
8.3.1 隨機梯度下降 180
8.3.2 動量 181
8.3.3 Nesterov 動量 183
8.4 參數(shù)初始化策略 184
8.5 自適應(yīng)學(xué)習(xí)率算法 187
8.5.1 AdaGrad 187
8.5.2 RMSProp 188
8.5.3 Adam 189
8.5.4 選擇正確的優(yōu)化算法 190
8.6 二階近似方法 190
8.6.1 牛頓法 190
8.6.2 共軛梯度 191
8.6.3 BFGS 193
8.7 優(yōu)化策略和元算法 194
8.7.1 批標(biāo)準(zhǔn)化 194
8.7.2 坐標(biāo)下降 196
8.7.3 Polyak 平均 197
8.7.4 監(jiān)督預(yù)訓(xùn)練 197
8.7.5 設(shè)計有助于優(yōu)化的模型 199
8.7.6 延拓法和課程學(xué)習(xí) 199
第9 章卷積網(wǎng)絡(luò) 201
9.1 卷積運算 201
9.2 動機 203
9.3 池化 207
9.4 卷積與池化作為一種無限強的先驗 210
9.5 基本卷積函數(shù)的變體 211
9.6 結(jié)構(gòu)化輸出 218
9.7 數(shù)據(jù)類型 219
9.8 高效的卷積算法 220
9.9 隨機或無監(jiān)督的特征 220
9.10 卷積網(wǎng)絡(luò)的神經(jīng)科學(xué)基礎(chǔ) 221
9.11 卷積網(wǎng)絡(luò)與深度學(xué)習(xí)的歷史 226
第 10 章序列建模:循環(huán)和遞歸網(wǎng)絡(luò) 227
10.1 展開計算圖 228
10.2 循環(huán)神經(jīng)網(wǎng)絡(luò) 230
10.2.1 導(dǎo)師驅(qū)動過程和輸出循環(huán)網(wǎng)絡(luò) 232
10.2.2 計算循環(huán)神經(jīng)網(wǎng)絡(luò)的梯度 233
10.2.3 作為有向圖模型的循環(huán)網(wǎng)絡(luò) 235
10.2.4 基于上下文的RNN 序列建!237
10.3 雙向RNN 239
10.4 基于編碼{解碼的序列到序列架構(gòu) 240
10.5 深度循環(huán)網(wǎng)絡(luò) 242
10.6 遞歸神經(jīng)網(wǎng)絡(luò) 243
10.7 長期依賴的挑戰(zhàn) 244
10.8 回聲狀態(tài)網(wǎng)絡(luò) 245
10.9 滲漏單元和其他多時間尺度的策略 247
10.9.1 時間維度的跳躍連接 247
10.9.2 滲漏單元和一系列不同時間尺度 247
10.9.3 刪除連接 248
10.10 長短期記憶和其他門控RNN 248
10.10.1 LSTM 248
10.10.2 其他門控RNN 250
10.11 優(yōu)化長期依賴 251
10.11.1 截斷梯度 251
10.11.2 引導(dǎo)信息流的正則化 252
10.12 外顯記憶 253
第 11 章實踐方法論 256
11.1 性能度量 256
11.2 默認(rèn)的基準(zhǔn)模型 258
11.3 決定是否收集更多數(shù)據(jù) 259
11.4 選擇超參數(shù) 259
11.4.1 手動調(diào)整超參數(shù) 259
11.4.2 自動超參數(shù)優(yōu)化算法 262
11.4.3 網(wǎng)格搜索 262
11.4.4 隨機搜索 263
11.4.5 基于模型的超參數(shù)優(yōu)化 264
11.5 調(diào)試策略 264
11.6 示例:多位數(shù)字識別 267
第 12 章應(yīng)用 269
12.1 大規(guī)模深度學(xué)習(xí) 269
12.1.1 快速的CPU 實現(xiàn) 269
12.1.2 GPU 實現(xiàn) 269
12.1.3 大規(guī)模的分布式實現(xiàn) 271
12.1.4 模型壓縮 271
12.1.5 動態(tài)結(jié)構(gòu) 272
12.1.6 深度網(wǎng)絡(luò)的專用硬件實現(xiàn) 273
12.2 計算機視覺 274
12.2.1 預(yù)處理 275
12.2.2 數(shù)據(jù)集增強 277
12.3 語音識別 278
12.4 自然語言處理 279
12.4.1 n-gram 280
12.4.2 神經(jīng)語言模型 281
12.4.3 高維輸出 282
12.4.4 結(jié)合n-gram 和神經(jīng)語言模型 286
12.4.5 神經(jīng)機器翻譯 287
12.4.6 歷史展望 289
12.5 其他應(yīng)用 290
12.5.1 推薦系統(tǒng) 290
12.5.2 知識表示、推理和回答 292
第3 部分深度學(xué)習(xí)研究
第 13 章線性因子模型 297
13.1 概率PCA 和因子分析 297
13.2 獨立成分分析 298
13.3 慢特征分析 300
13.4 稀疏編碼 301
13.5 PCA 的流形解釋 304
第 14 章自編碼器 306
14.1 欠完備自編碼器 306
14.2 正則自編碼器 307
14.2.1 稀疏自編碼器 307
14.2.2 去噪自編碼器 309
14.2.3 懲罰導(dǎo)數(shù)作為正則 309
14.3 表示能力、層的大小和深度 310
14.4 隨機編碼器和解碼器 310
14.5 去噪自編碼器詳解 311
14.5.1 得分估計 312
14.5.2 歷史展望 314
14.6 使用自編碼器學(xué)習(xí)流形 314
14.7 收縮自編碼器 317
14.8 預(yù)測稀疏分解 319
14.9 自編碼器的應(yīng)用 319
第 15 章表示學(xué)習(xí) 321
15.1 貪心逐層無監(jiān)督預(yù)訓(xùn)練 322
15.2 遷移學(xué)習(xí)和領(lǐng)域自適應(yīng) 326
15.3 半監(jiān)督解釋因果關(guān)系 329
15.4 分布式表示 332
15.5 得益于深度的指數(shù)增益 336
15.6 提供發(fā)現(xiàn)潛在原因的線索 337
第 16 章深度學(xué)習(xí)中的結(jié)構(gòu)化概率模型 339
16.1 非結(jié)構(gòu)化建模的挑戰(zhàn) 339
16.2 使用圖描述模型結(jié)構(gòu) 342
16.2.1 有向模型 342
16.2.2 無向模型 344
16.2.3 配分函數(shù) 345
16.2.4 基于能量的模型 346
16.2.5 分離和d-分離 347
16.2.6 在有向模型和無向模型中轉(zhuǎn)換 350
16.2.7 因子圖 352
16.3 從圖模型中采樣 353
16.4 結(jié)構(gòu)化建模的優(yōu)勢 353
16.5 學(xué)習(xí)依賴關(guān)系 354
16.6 推斷和近似推斷 354
16.7 結(jié)構(gòu)化概率模型的深度學(xué)習(xí)方法 355第 17 章蒙特卡羅方法 359
17.1 采樣和蒙特卡羅方法 359
17.1.1 為什么需要采樣 359
17.1.2 蒙特卡羅采樣的基礎(chǔ) 359
17.2 重要采樣 360
17.3 馬爾可夫鏈蒙特卡羅方法 362
17.4 Gibbs 采樣 365
17.5 不同的峰值之間的混合挑戰(zhàn) 365
17.5.1 不同峰值之間通過回火來混合 367
17.5.2 深度也許會有助于混合 368
第 18 章直面配分函數(shù) 369
18.1 對數(shù)似然梯度 369
18.2 隨機最大似然和對比散度 370
18.3 偽似然 375
18.4 得分匹配和比率匹配 376
18.5 去噪得分匹配 378
18.6 噪聲對比估計 378
18.7 估計配分函數(shù) 380
18.7.1 退火重要采樣 382
18.7.2 橋式采樣 384
第 19 章近似推斷 385
19.1 把推斷視作優(yōu)化問題 385
19.2 期望最大化 386
19.3 最大后驗推斷和稀疏編碼 387
19.4 變分推斷和變分學(xué)習(xí) 389
19.4.1 離散型潛變量 390
19.4.2 變分法 394
19.4.3 連續(xù)型潛變量 396
19.4.4 學(xué)習(xí)和推斷之間的相互作用 397
19.5 學(xué)成近似推斷 397
19.5.1 醒眠算法 398
19.5.2 學(xué)成推斷的其他形式 398
第 20 章深度生成模型 399
20.1 玻爾茲曼機 399
20.2 受限玻爾茲曼機 400
20.2.1 條件分布 401
20.2.2 訓(xùn)練受限玻爾茲曼機 402
20.3 深度信念網(wǎng)絡(luò) 402
20.4 深度玻爾茲曼機 404
20.4.1 有趣的性質(zhì) 406
20.4.2 DBM 均勻場推斷 406
20.4.3 DBM 的參數(shù)學(xué)習(xí) 408
20.4.4 逐層預(yù)訓(xùn)練 408
20.4.5 聯(lián)合訓(xùn)練深度玻爾茲曼機 410
20.5 實值數(shù)據(jù)上的玻爾茲曼機 413
20.5.1 Gaussian-Bernoulli RBM 413
20.5.2 條件協(xié)方差的無向模型 414
20.6 卷積玻爾茲曼機 417
20.7 用于結(jié)構(gòu)化或序列輸出的玻爾茲曼機 418
20.8 其他玻爾茲曼機 419
20.9 通過隨機操作的反向傳播 419
20.10 有向生成網(wǎng)絡(luò) 422
20.10.1 sigmoid 信念網(wǎng)絡(luò) 422
20.10.2 可微生成器網(wǎng)絡(luò) 423
20.10.3 變分自編碼器 425
20.10.4 生成式對抗網(wǎng)絡(luò) 426
20.10.5 生成矩匹配網(wǎng)絡(luò) 429
20.10.6 卷積生成網(wǎng)絡(luò) 430
20.10.7 自回歸網(wǎng)絡(luò) 430
20.10.8 線性自回歸網(wǎng)絡(luò) 430
20.10.9 神經(jīng)自回歸網(wǎng)絡(luò) 431
20.10.10 NADE 432
20.11 從自編碼器采樣 433
20.11.1 與任意去噪自編碼器相關(guān)的馬爾可夫鏈 . 434
20.11.2 夾合與條件采樣 434
20.11.3 回退訓(xùn)練過程 435
20.12 生成隨機網(wǎng)絡(luò) 435
20.13 其他生成方案 436
20.14 評估生成模型 437
20.15 結(jié)論 438
參考文獻(xiàn) 439
索引 486