作 者:(美)安德魯·費利奇 著 李軒涯,盧苗苗,劉安安 譯
定 價:128
出 版 社:清華大學出版社
出版日期:2023年06月01日
頁 數:784
裝 幀:平裝
ISBN:9787302630630
作為近幾年人工智能領域的主要研究方向之一,深度學習主要通過構建深度卷積神經網絡和采用大量樣本數據作為輸入,最終得到-一個具有強大分析能力和識別能力的模型。深度學習可以是有監督的、半監督的或無監督的。深度學習架構(例如深度神經網絡、深度信念網絡、遞歸神經網絡和卷積神經網絡)已應用於計算機視覺、語音識別、自然語言處理、機器翻譯等領域並取得初步成效。隨著深度學習的發展,了 解計算機編程語言以及掌握計算機組成原理等知識已成為推薦技能。本書中的所有代碼示例都是用Python編寫的,因此讀者需要有一定的等
●第Ⅰ部分 深度學習基礎知識
第1章 現代機器學習的設計 3
1.1 關注適應性 4
1.1.1 計算機視覺引領潮流 4
1.1.2 超越計算機視覺:NLP、NLU和結構化數據 5
1.2 機器學習方法的演變 6
1.2.1 經典人工智能與狹義人工智能 6
1.2.2 計算機學習的未來 8
1.3 設計模式的好處 13
1.4 本章小結 14
第2章 深度神經網絡 15
2.1 神經網絡基礎 15
2.1.1 輸入層 15
2.1.2 深度神經網絡簡介 17
2.1.3 前饋網絡 18
2.1.4 序貫式API方法 18
2.1.5 函數式API方法 19
2.1.6 輸入形狀與輸入層 19
2.1.7 致密層 20
2.1.8 激活函數 21
2.1.9 速記語法 24
2.1.10 使用優化器提高準確度 25
2.2 D分類器 26
2.3 DNN多類分類器 28
2.4 DNN多標簽多類分類器 29
2.5 簡單圖像分類器 31
2.5.1 展平 32
2.5.2 過擬合和丟棄 33
2.6 本章小結 35
第3章 卷積神經網絡和殘差神經網絡 37
3.1 卷積神經網絡 37
3.1.1 為什麼在DNN的基礎上對圖像模型使用CNN 38
3.1.2 下采樣(調整大小) 38
3.1.3 特征檢測 39
3.1.4 池化 41
3.1.5 展平 42
3.2 CNN的ConvNet設計 43
3.3 VGG網絡 46
3.4 ResNet網絡 49
3.4.1 架構 49
3.4.2 批標準化 54
3.4.3 ResNet50 55
3.5 本章小結 59
第4章 訓練基礎知識 61
4.1 前饋和反向傳播 61
4.1.1 饋送 62
4.1.2 反向傳播 62
4.2 拆分數據集 64
4.2.1 訓練集和測試集 64
4.2.2 獨熱編碼 65
4.3 數據歸一化 67
4.3.1 歸一化 67
4.3.2 標準化 69
4.4 驗證和過擬合 69
4.4.1 驗證 69
4.4.2 損失監控 73
4.4.3 深入層中 73
4.5 收斂 74
4.6 設置檢查點和早停法 77
4.6.1 設置檢查點 77
4.6.2 早停法 78
4.7 超參數 79
4.7.1 時期數 80
4.7.2 步數 80
4.7.3 批大小 81
4.7.4 學習率 82
4.8 不變性 84
4.8.1 平移不變性 85
4.8.2 尺度不變性 91
4.8.3 TF.Keras的ImageDataGenerator類 93
4.9 初始(磁盤)數據集 94
4.9.1 目錄結構 95
4.9.2 CSV文件 97
4.9.3 JSON文件 98
4.9.4 讀取圖像 98
4.9.5 調整大小 101
4.10 模型保存/恢復 102
4.10.1 保存 103
4.10.2 恢復 103
4.11 本章小結 104
第Ⅱ部分 基本設計模式
第5章 過程設計模式 107
5.1 基本的神經網絡架構 108
5.2 stem組件 110
5.2.1 VGG 110
5.2.2 ResNet 111
5.2.3 ResNeXt 115
5.2.4 Xception 116
5.3 預stem 117
5.4 學習器組件 118
5.4.1 ResNet 119
5.4.2 DenseNet 121
5.5 任務組件 123
5.5.1 ResNet 124
5.5.2 多層輸出 125
5.5.3 SqueezeNet 127
5.6 超越計算機視覺:自然語言處理 128
5.6.1 自然語言理解 128
5.6.2 Transformer架構 129
5.7 本章小結 130
第6章 寬卷積神經網絡 131
6.1 Inception v1 132
6.1.1 原生inception模塊 132
6.1.2 Inception v1模塊 134
6.1.3 stem 136
6.1.4 學習器 137
6.1.5 輔助分類器 137
6.1.6 分類器 139
6.2 Inception v2:卷積分解 140
6.3 Inception v3:重新設計架構 142
6.3.1 Inception組和塊 143
6.3.2 普通卷積 146
6.3.3 空間可分離卷積 147
6.3.4 stem重設計和實現 148
6.3.5 輔助分類器 149
6.4 ResNeXt:寬殘差神經網絡 150
6.4.1 ResNeXt塊 150
6.4.2 ResNeXt架構 152
6.5 寬殘差網絡 153
6.5.1 WRN-50-2架構 154
6.5.2 寬殘差塊 154
6.6 超越計算機視覺:結構化數據 155
6.7 本章小結 157
第7章 可替代連接模式 159
7.1 DenseNet:致密連接的卷積神經網絡 160
7.1.1 致密組 160
7.1.2 致密塊 162
7.1.3 DenseNet宏觀架構 164
7.1.4 致密過渡塊 165
7.2 Xception 166
7.2.1 Xception架構 167
7.2.2 Xception的入口流 169
7.2.3 Xception的中間流 171
7.2.4 Xception的出口流 173
7.2.5 深度可分離卷積 175
7.2.6 逐深度卷積 175
7.2.7 逐點卷積 175
7.3 SE-Net 176
7.3.1 SE-Net架構 177
7.3.2 SE-Net的組和塊 177
7.3.3 SE鏈接 179
7.4 本章小結 180
第8章 移動卷積神經網絡 181
8.1 MobileNet v1 182
8.1.1 架構 182
8.1.2 寬度乘數 183
8.1.3 分辨率乘數 184
8.1.4 stem 185
8.1.5 學習器 186
8.1.6 分類器 188
8.2 MobileNet v2 189
8.2.1 架構 189
8.2.2 stem 190
8.2.3 學習器 191
8.2.4 分類器 194
8.3 SqueezeNet 195
8.3.1 架構 196
8.3.2 stem 197
8.3.3 學習器 197
8.3.4 分類器 200
8.3.5 旁路連接 202
8.4 ShuffleNet v1 205
8.4.1 架構 205
8.4.2 stem 206
8.4.3 學習器 206
8.5 部署 213
8.5.1 量化 213
8.5.2 TF Lite轉換和預測 214
8.6 本章小結 216
第9章 自動編碼器 217
9.1 深度神經網絡自動編碼器 217
9.1.1 自動編碼器架構 218
9.1.2 編碼器 219
9.1.3 解碼器 219
9.1.4 訓練 220
9.2 卷積自動編碼器 221
9.2.1 架構 222
9.2.2 編碼器 222
9.2.3 解碼器 223
9.3 稀疏自動編碼器 225
9.4 去噪自動編碼器 226
9.5 超分辨率 226
9.5.1 預上采樣SR 227
9.5.2 後上采樣SR 229
9.6 前置任務 232
9.7 超越計算機視覺:Seq2Seq模型 234
9.8 本章小結 235
第Ⅲ部分 使用管線
第10章 超參數調優 239
10.1 權重初始化 240
10.1.1 權重分布 241
10.1.2 彩票假設 241
10.1.3 預熱(數值穩定性) 243
10.2 超參數搜索基礎知識 246
10.2.1 超參數搜索的手動方法 246
10.2.2 網格搜索 248
10.2.3 隨機搜索 248
10.2.4 KerasTuner 250
10.3 學習率調度器 252
10.3.1 Keras衰減參數 253
10.3.2 Keras學習率調度器 253
10.3.3 Ramp 254
10.3.4 恆定步長 255
10.3.5 餘弦退火 256
10.4 正則化 258
10.4.1 權重正則化 258
10.4.2 標簽平滑 259
10.5 超越計算機視覺 260
10.6 本章小結 261
第11章 遷移學習 263
11.1 TF.Keras預構建模型 264
11.1.1 基礎模型 265
11.1.2 用於預測的預訓練ImageNet模型 266
11.1.3 新分類器 267
11.2 TF Hub預構建模型 271
11.2.1 使用TF Hub預訓練模型 271
11.2.2 新分類器 273
11.3 域間的遷移學習 274
11.3.1 類似的任務 274
11.3.2 不同的任務 275
11.3.3 特定域權重 278
11.3.4 域遷移權重初始化 279
11.3.5 負遷移 281
11.4 超越計算機視覺 281
11.5 本章小結 281
第12章 數據分布 283
12.1 分布類型 284
12.1.1 總體分布 284
12.1.2 抽樣分布 285
12.1.3 子總體分布 286
12.2 分布外樣本 286
12.2.1 MNIST精選數據集 287
12.2.2 建立環境 287
12.2.3 挑戰分布外數據 288
12.2.4 作為DNN進行訓練 289
12.2.5 作為CNN進行訓練 294
12.2.6 圖像增強 297
12.2.7 最終測試 299
12.3 本章小結 299
第13章 數據管線 301
13.1 數據格式和存儲 303
13.1.1 壓縮圖像格式和原始圖像格式 303
13.1.2 HDF5格式 306
13.1.3 DICOM格式 310
13.1.4 TFRecord格式 311
13.2 數據饋送 316
13.2.1 NumPy 316
13.2.2 TFRecord 318
13.3 數據預處理 320
13.3.1 使用預stem進行預處理 320
13.3.2 使用TF Extended進行預處理 327
13.4 數據增強 332
13.4.1 不變性 332
13.4.2 使用tf.data進行增強 334
13.4.3 預stem 335
13.5 本章小結 335
本書通過介紹很好實踐、設計模式和可復制的架構,指導讀者的深度學習項目從實驗室走向應用。本書收集並闡明了近十年來真實世界中深度學習最緊密的洞察。讀者將通過每個有趣的例子學習相關技能,並建立信心。本書深入研究了如何構建成功的深度學習應用程序。通過將經過驗證的模式和實踐應用到自身項目中,讀者將數小時的試錯時間。本書通過測試的代碼示例、真實世界示例和出色的敘事風格,使復雜的概念變得簡單和有趣。在此過程中,讀者將學會相關技巧來部署、測試和維護項目。
(美)安德魯·費利奇 著 李軒涯,盧苗苗,劉安安 譯
Andrew Ferlitsch是谷歌雲人工智能開發者關繫部的一名專家,領域為計算機視覺、深度學習和在應用中操作機器學習。