本書借助現(xiàn)實案例介紹深度學習算法的實際應用(包括最佳實踐),旨在幫助讀者了解如何識別和提取信息,以提高預測準確率及優(yōu)化結(jié)果。
本書共10章,分別是機器學習—引言、神經(jīng)網(wǎng)絡、深度學習基本原理、無監(jiān)督特征學習、圖像識別、遞歸神經(jīng)網(wǎng)絡和語言模型、深度學習在棋盤游戲中的應用、深度學習在電子游戲中的應用、異常檢測和構(gòu)建一個可用于生產(chǎn)環(huán)境的入侵檢測系統(tǒng)。
本書適合想深入研究深度學習算法和技術(shù)的讀者學習,也適合想探究如何從這項強大技術(shù)中學到更多知識的讀者參考。
1. 涵蓋深度學習算法的實際應用和最佳實踐,可從中了解識別和提取信息的方法,提高預測的準確率,并對結(jié)果進行優(yōu)化;
2. 涵蓋神經(jīng)網(wǎng)絡、無監(jiān)督特征學習、圖像識別以及遞歸神經(jīng)網(wǎng)絡等多種機器學習的方法和技術(shù);
3. 展示了深度學習在棋盤游戲和電子游戲中的應用;
4. 實現(xiàn)了一個可用于生產(chǎn)環(huán)境的入侵檢測系統(tǒng);
5. 提供源代碼。
Valentino Zocca本科畢業(yè)于羅馬大學數(shù)學系,博士畢業(yè)于美國馬里蘭大學,獲得數(shù)學博士學位。他在設計、開發(fā)和實現(xiàn)高級立體3D地球可視化軟件方面有著深厚的經(jīng)驗。他在波音公司開發(fā)了許多數(shù)學算法和預測模型,并自動化了幾個衛(wèi)星圖像的可視化程序。此后,他成為機器學習和深度學習方面的專家,曾在米蘭和紐約舉辦了關(guān)于機器學習和深度學習的研討會。
第 1章 機器學習—引言 1
1.1 什么是機器學習 1
1.2 不同的機器學習方法 2
1.2.1 監(jiān)督學習 2
1.2.2 無監(jiān)督學習 4
1.2.3 強化學習 6
1.2.4 機器學習系統(tǒng)所涉及的步驟 7
1.2.5 關(guān)于流行技術(shù)/算法的簡介 9
1.2.6 在現(xiàn)實生活中的應用 19
1.2.7 流行開源包 21
1.3 小結(jié) 26
第 2章 神經(jīng)網(wǎng)絡 27
2.1 為什么是神經(jīng)網(wǎng)絡 27
2.2 基本原理 28
2.2.1 神經(jīng)元以及層 29
2.2.2 不同類型的激活函數(shù) 33
2.3 反向傳播算法 37
2.3.1 線性回歸 37
2.3.2 邏輯回歸 39
2.3.3 反向傳播 41
2.4 行業(yè)應用 44
2.4.1 信號處理 44
2.4.2 醫(yī)療 44
2.4.3 自動汽車駕駛 44
2.4.4 商業(yè) 45
2.4.5 模式識別 45
2.4.6 語音生成 45
2.5 異或函數(shù)的神經(jīng)網(wǎng)絡代碼示例 45
2.6 小結(jié) 50
第3章 深度學習基本原理 52
3.1 什么是深度學習 52
3.1.1 基本概念 54
3.1.2 特征學習 55
3.1.3 深度學習算法 62
3.2 深度學習應用 63
3.2.1 語音識別 63
3.2.2 對象識別與分類 65
3.3 圖形處理單元與中央處理單元 67
3.4 流行開源庫—引言 69
3.4.1 Theano 69
3.4.2 TensorFlow 69
3.4.3 Keras 70
3.4.4 使用Keras的簡單深度神經(jīng)
網(wǎng)絡代碼 70
3.5 小結(jié) 75
第4章 無監(jiān)督特征學習 76
4.1 自編碼器 77
4.1.1 網(wǎng)絡設計 80
4.1.2 用于自編碼器的正則化技術(shù) 83
4.1.3 自編碼器概述 87
4.2 受限玻爾茲曼機 87
4.2.1 霍普菲爾德網(wǎng)絡與
玻爾茲曼機 89
4.2.2 玻爾茲曼機 91
4.2.3 受限玻爾茲曼機 93
4.2.4 在TensorFlow中的實現(xiàn) 94
4.2.5 深度信念網(wǎng)絡 98
4.3 小結(jié) 99
第5章 圖像識別 102
5.1 人工模型與生物模型的相似性 102
5.2 直觀認識與合理性 103
5.3 卷積層 104
5.4 池化層 111
5.5 dropout層 112
5.6 深度學習中的卷積層 113
5.7 Theano中的卷積層 114
5.8 用Keras來識別數(shù)字的卷積層
示例 115
5.9 將Keras用于cifar10的卷積層
示例 118
5.10 預訓練 120
5.11 小結(jié) 121
第6章 遞歸神經(jīng)網(wǎng)絡和語言模型 123
6.1 遞歸神經(jīng)網(wǎng)絡 123
6.1.1 RNN—如何實施和訓練 125
6.1.2 長短期記憶 130
6.2 語言建!133
6.2.1 基于單詞的語言模型 133
6.2.2 基于字符的語言模型 138
6.3 語音識別 144
6.3.1 語音識別管線 144
6.3.2 作為輸入數(shù)據(jù)的語音 145
6.3.3 預處理 146
6.3.4 聲學模型 147
6.3.5 解碼 149
6.3.6 端到端模型 150
6.4 小結(jié) 150
6.5 拓展閱讀 150
第7章 深度學習在棋盤游戲中的
應用 154
7.1 早期游戲AI 155
7.2 用最小-最大算法評估游戲狀態(tài) 156
7.3 實現(xiàn)Python井字游戲 158
7.4 學習價值函數(shù) 166
7.5 訓練AI掌握圍棋 167
7.6 應用于樹結(jié)構(gòu)的置信上限 169
7.7 蒙特卡羅樹搜索中的深度學習 176
7.8 快速復習強化學習 177
7.9 用于學習策略函數(shù)的策略梯度 177
7.10 AlphaGo中的策略梯度 185
7.11 小結(jié) 186
第8章 深度學習在電子游戲中的
應用 188
8.1 應用于游戲的監(jiān)督學習算法 188
8.2 遺傳算法在游戲中的應用 189
8.3 Q-learning算法 190
8.4 Q-learning算法在動作中的應用 192
8.5 動態(tài)游戲 197
8.5.1 經(jīng)驗回放 200
8.5.2 Epsilon貪婪算法 203
8.6 《雅達利打磚塊》游戲 204
8.6.1 《雅達利打磚塊》游戲的
隨機基準 205
8.6.2 預處理屏幕 207
8.6.3 創(chuàng)建一個深度卷積網(wǎng)絡 208
8.6.4 Q-learning算法中的收斂
問題 213
8.6.5 策略梯度與Q-learning算法 214
8.7 actor-critic算法 215
8.7.1 方差縮減基線 216
8.7.2 通用優(yōu)勢估計器 216
8.8 異步算法 217
8.9 基于模型的算法 218
8.10 小結(jié) 220
第9章 異常檢測 221
9.1 什么是異常檢測和異常點檢測 221
9.2 異常檢測的現(xiàn)實應用 224
9.3 流行的淺層機器學習技術(shù) 225
9.3.1 數(shù)據(jù)建模 225
9.3.2 檢測建!225
9.4 基于深度自編碼器的異常檢測 227
9.5 開始使用H2O 229
9.6 示例 230
9.6.1 MNIST數(shù)字異常識別 230
9.6.2 心電圖脈沖檢測 238
9.7 小結(jié) 243
第 10章 構(gòu)建一個可用于生產(chǎn)環(huán)境的
入侵檢測系統(tǒng) 244
10.1 什么是數(shù)據(jù)產(chǎn)品 245
10.2 訓練 246
10.2.1 權(quán)值初始化 246
10.2.2 使用HOGWILD!的并行
隨機梯度下降算法 248
10.2.3 自適應學習 250
10.2.4 學習率退火 250
10.2.5 動量法 251
10.2.6 Nesterov加速法 251
10.2.7 牛頓迭代法 252
10.2.8 Adagrad算法 253
10.2.9 Adadelta算法 253
10.2.10 通過Map/Reduce實現(xiàn)
分布式學習 255
10.2.11 Sparkling Water 258
10.3 測試 260
10.3.1 模型驗證 266
10.3.2 有標記數(shù)據(jù) 267
10.3.3 無標記數(shù)據(jù) 269
10.3.4 驗證總結(jié) 272
10.3.5 超參數(shù)調(diào)優(yōu) 272
10.3.6 端到端評估 275
10.3.7 A/B測試 277
10.3.8 測試總結(jié) 278
10.4 部署 279
10.4.1 POJO模型導出 280
10.4.2 異常得分API 283
10.4.3 部署總結(jié) 285
10.5 小結(jié) 285