神經網絡與深度學習 Neural Networks and Deep Learning: A Textbook

Charu C. Aggarwal 石川 楊成譯 譯

買這商品的人也買了...

商品描述

本書涵蓋了經典和現代的深度學習模型。
章節分為三類:第1部分為神經網絡的基礎。
許多傳統的機器學習模型可以理解為神經網絡的特殊情況。
前兩章的重點是理解傳統機器學習和神經網絡之間的關係。
支持向量機、線性/邏輯回歸、奇異值分解、矩陣分解和推薦系統都是神經網絡的特例。
本書將這些方法與特徵工程方法如word2vec一起進行了研究。
第2部分是神經網絡的基本原理。
訓練和正則化的詳細討論在第3章和第4章提供。
第5章和第6章介紹了徑向基函數(RBF)網絡和受限的玻爾茲曼機。
第3部分是神經網絡的高級主題:第7章和第8章討論了循環神經網絡和卷積神經網絡。
第9章和第10章介紹了幾個高級主題,如深度強化學習、神經圖像機、Kohonen自組織映射和生成對抗網絡。
這本書是為研究生、研究人員和實踐者編寫的。
大量的練習和一個解決方案手冊,以幫助在課堂教學。
在可能的情況下,突出顯示以應用程序為中心的視圖,
以便提供對每一類技術的實際用途的理解。

目錄大綱

譯者序
前言
致謝
作者簡介
第1章神經網絡概論111簡介1
1.2神經網絡的基本架構3
1.2.1單層計算網絡:感知機3
1.2.2多層神經網絡13
1.2.3多層網絡即計算圖15
1.3利用反向傳播訓練神經網絡16
1.4神經網絡訓練中的實際問題19
1.4.1過擬合問題19
1.4.2梯度消失與梯度爆炸問題22
1.4.3收斂問題22
1.4.4局部和偽22
1.4.5計算上的挑戰23
1.5複合函數的能力之謎23
1.5.1非線性激活函數的重要性25
1.5.2利用深度以減少參數26
1.5.3非常規網絡架構27
1.6常見網絡架構28
1.6.1淺層模型模擬基礎機器學習方法28
1.6.2徑向基函數網絡29
1.6.3受限玻爾茲曼機29
1.6.4循環神經網絡30
1.6.5卷積神經網絡31
1.6.6層次特徵工程與預訓練模型32
1.7高級主題34
1.7.1強化學習34
1.7.2分離數據存儲和計算34
1.7.3生成對抗網絡35
1.8兩個基準35
1.8.1MNIST手寫數字數據庫35
1.8.2ImageNet數據庫36
1.9總結37
1.10參考資料說明37
1.101視頻講座38
1.102軟件資源39
1.11練習39

第2章基於淺層神經網絡的機器學習41
2.1簡介41
2.2二分類模型的神經架構42
2.2.1複習感知機42
2.2.2最小二乘回歸44
2.2.3邏輯回歸47
2.2.4支持向量機49
2.3多分類模型的神經架構50
2.3.1多分類感知機51
2.3.2WestonWatkins支持向量機52
2.3.3多重邏輯回歸(softmax分類器)53
2.3.4應用於多分類的分層softmax54
2.4反向傳播可以用於特徵選擇和神經網絡的可解釋性54
2.5使用自編碼器進行矩陣分解55
2.5.1自編碼器的基本原則55
2.5.2非線性激活函數59
2.5.3深度自編碼器60
2.5.4應用於離群點檢測62
2.5.5當隱藏層比輸入層維數高時63
2.5.6其他應用63
2.5.7推薦系統:行索引到行值的預測65
2.5.8討論67
2.6word2vec:簡單神經架構的應用67
2.6.1連續詞袋的神經嵌入68
2.6.2skipgram模型的神經嵌入70
2.6.3word2vec(SGNS)是邏輯矩陣分解74
2.6.4原始skipgram模型是多項式矩陣分解76
2.7圖嵌入的簡單神經架構76
2.7.1處理任意數量的邊78
2.7.2多項式模型78
2.7.3與DeepWalk和node2vec的聯繫78
2.8總結78
2.9參考資料說明79
2.10練習80

第3章深度神經網絡的訓練823.1簡介82
3.2反向傳播的詳細討論83
3.2.1計算圖抽像中的反向傳播83
3.2.2前來拯救的動態規劃87
3.2.3使用激活後變量的反向傳播88
3.2.4使用激活前變量的反向傳播89
3.2.5不同激活函數的更新示例91
3.2.6以向量為中心的反向傳播的解耦視圖92
3.2.7多輸出節點及隱藏節點下的損失函數94
3.2.8小批量隨機梯度下降95
3.2.9用於解決共享權重的反向傳播技巧96
3.2.10檢查梯度計算的正確性97
3.3設置和初始化問題98
3.3.1調整超參數98
3.3.2特徵預處理99
3.3.3初始化100
3.4梯度消失和梯度爆炸問題101
3.4.1對梯度比例影響的幾何理解102
3.4.2部分解決:激活函數的選擇103
3.4.3死亡神經元和“腦損傷”104
3.5梯度下降策略105
3.5.1學習率衰減105
3.5.2基於動量的學習106
3.5.3參數特異的學習率108
3.5.4懸崖和高階不穩定性111
3.5.5梯度截斷112
3.5.6二階導數112
3.5.7Polyak平均118
3.5.8局部極小值和偽極小值119
3.6批歸一化120
3.7加速與壓縮的實用技巧123
3.7.1GPU加速123
3.7.2並行和分佈式實現125
3.7.3模型壓縮的算法技巧126
3.8總結128
3.9參考資料說明128
3.10練習130

第4章讓深度學習器學會泛化132
4.1簡介132
4.2偏差方差權衡135
4.3模型調優和評估中的泛化問題138
4.3.1用留出法和交叉驗證法進行評估139
4.3.2大規模訓練中的問題140
4.3.3如何檢測需要收集更多的數據141
4.4基於懲罰的正則化141
4.4.1與註入噪聲的聯繫142
4.4.2L1正則化143
4.4.3選擇L1正則化還是L2正則化143
4.4.4對隱藏單元進行懲罰:學習稀疏表示144
4.5集成方法145
4.5.1裝袋和下採樣145
4.5.2參數模型選擇和平均146
4.5.3隨機連接刪除146
4.5.4Dropout147
4.5.5數據擾動集成149
4.6早停149
4.7無監督預訓練150
4.7.1無監督預訓練的變體153
4.7.2如何進行監督預訓練154
4.8繼續學習與課程學習154
4.8.1繼續學習155
4.8.2課程學習156
4.9共享參數156
4.10無監督應用中的正則化157
4.101基於值的懲罰:稀疏自編碼器157
4.102噪聲注入:去噪自編碼器157
4.103基於梯度的懲罰:收縮自編碼器158
4.104隱藏層概率結構:變分自編碼器161
4.11總結166
4.12參考資料說明166
4.13練習168

第5章徑向基函數網絡169
5.1簡介169
5.2RBF網絡的訓練171
5.2.1訓練隱藏層171
5.2.2訓練輸出層172
5.2.3正交最小二乘算法173
5.2.4完全監督學習174
5.3RBF網絡的變體和特例175
5.3.1感知機準則分類175
5.3.2鉸鏈損失分類175
5.3.3RBF促進線性可分離性的示例176
5.3.4應用於插值177
5.4與核方法的關係177
5.4.1RBF網絡的特例:核回歸177
5.4.2RBF網絡的特例:核SVM178
5.4.3觀察179
5.5總結179
5.6參考資料說明179
5.7練習180

第6章受限玻爾茲曼機181
6.1簡介181
6.2Hopfield 網絡 182
6.2.1訓練網絡的狀態配置183
6.2.2訓練Hopfield網絡184
6.2.3推薦器的構建及其局限性185
6.2.4提高Hopfield網絡的表達能力186
6.3玻爾茲曼機187
6.3.1玻爾茲曼機如何生成數據188
6.3.2學習玻爾茲曼機的權重188
6.4RBM的原理189
6.4.1訓練RBM191
6.4.2對比發散算法192
6.4.3實際問題和即興性193
6.5RBM的應用193
6.5.1降維和數據重構194
6.5.2使用RBM進行協同過濾196
6.5.3使用RBM進行分類198
6.5.4使用RBM建立主題模型201
6.5.5使用RBM進行多模態數據的機器學習202
6.6在二元數據類型之外使用RBM203
6.7堆疊式RBM204
6.7.1無監督學習206
6.7.2監督學習206
6.7.3深度玻爾茲曼機和深度信念網絡206
6.8總結207
6.9參考資料說明207
6.10練習208

第7章循環神經網絡210
7.1簡介210
7.2循環神經網絡的架構212
7.2.1RNN語言建模實例214
7.2.2時間反向傳播216
7.2.3雙向循環神經網絡218
7.2.4多層循環神經網絡220
7.3訓練循環神經網絡的挑戰221
7.4迴聲狀態網絡224
7.5長短期記憶網絡226
7.6門控循環單元228
7.7循環神經網絡的應用229
7.7.1應用於自動圖像描述230
7.7.2序列到序列的學習和機器翻譯231
7.7.3應用於句子級別分類234
7.7.4利用語言特徵進行詞級別分類235
7.7.5時間序列預測236
7.7.6時序推薦系統237
7.7.7蛋白質二級結構預測239
7.7.8端到端語音識別239
7.7.9手寫識別239
7.8總結240
7.9參考資料說明240
7.10練習241

第8章卷積神經網絡243
8.1簡介243
8.1.1歷史觀點和生物啟發243
8.1.2卷積神經網絡的廣義發現244
8.2卷積神經網絡的基本結構245
8.2.1填充248
8.2.2步長249
8.2.3典型設置250
8.2.4ReLU層250
8.2.5池化251
8.2.6全連接層252
8.2.7層與層之間的交織253
8.2.8局部響應歸一化254
8.2.9層次特徵工程255
8.3訓練一個卷積網絡256
8.3.1通過卷積反向傳播256
8.3.2通過反轉/轉置濾波器的捲積進行反向傳播257
8.3.3通過矩陣乘法進行卷積/反向傳播258
8.3.4數據增強259
8.4卷積架構的案例研究260
8.4.1AlexNet260
8.4.2ZFNet262
8.4.3VGG263
8.4.4GoogLeNet266
8.4.5ResNet267
8.4.6深度的影響270
8.4.7預訓練模型270
8.5可視化與無監督學習271
8.5.1可視化訓練網絡的特徵272
8.5.2卷積自編碼器276
8.6卷積網絡的應用280
8.6.1基於內容的圖像檢索280
8.6.2對象定位280
8.6.3對象檢測281
8.6.4自然語言和序列學習282
8.6.5視頻分類283
8.7總結283
8.8參考資料說明283
8.9練習286

第9章深度強化學習287
9.1簡介287
9.2無狀態算法:多臂老虎機288
9.2.1樸素算法289
9.2.2ε貪婪算法289
9.2.3上界方法289
9.3強化學習的基本框架290
9.3.1強化學習中的挑戰291
9.3.2用於井字棋的簡單強化學習292
9.3.3深度學習的作用和稻草人算法292
9.4用於學習價值函數的自舉算法294
9.4.1深度學習模型:函數逼近器295
9.4.2實例:用於Atari設置的神經網絡297
9.4.3同步策略與異步策略方法:SARSA298
9.4.4模型狀態與狀態動作對299
9.5策略梯度方法301
9.5.1有限差分方法302
9.5.2似然比方法302
9.5.3策略梯度與監督學習的結合304
9.5.4行動者評價者方法304
9.5.5連續動作空間305
9.5.6策略梯度的優缺點306
9.6蒙特卡洛樹搜索306
9.7案例研究308
9.7.1AlphaGo:冠軍級別的圍棋選手308
9.7.2自主學習機器人311
9.7.3建立會話系統:面向聊天機器人的深度學習314
9.7.4自動駕駛汽車316
9.7.5利用強化學習推斷神經架構317
9.8與安全相關的實際挑戰318
9.9總結319
9.10參考資料說明319
9.11練習321

第10章深度學習的前沿主題322
10.1簡介322
10.2注意力機制323
10.2.1視覺注意力循環模型324
10.2.2注意力機制用於機器翻譯327
10.3具有外部存儲的神經網絡329
10.3.1一個假想的視頻遊戲:基於樣本的排序330
10.3.2神經圖靈機331
10.3.3可微神經計算機:簡要概述336
10.4生成對抗網絡337
10.4.1訓練生成對抗網絡338
10.4.2與變分自編碼器比較340
10.4.3用GAN生成圖像數據340
10.4.4條件生成對抗網絡342
10.5競爭學習345
10.5.1矢量量化346
10.5.2Kohonen自組織映射346
10.6神經網絡的局限性349
10.6.1一個理想的目標:單樣本學習349
10.6.2一個理想的目標:節能學習350
10.7總結351
10.8參考資料說明352
10.9練習353
參考文獻354
術語表388