《輕鬆學會TensorFlow 2.0人工智慧深度學習套用開發》是清華大學出版社於2021年出版的書籍。
基本介紹
- 中文名:輕鬆學會TensorFlow 2.0人工智慧深度學習套用開發
- 作者:黃士嘉、林邑
- 出版社:清華大學出版社
- 出版時間:2021年1月1日
- 定價:79 元
- ISBN:9787302566458
內容簡介,圖書目錄,
內容簡介
本書從介紹深度學習和重要入門知識入手,通過範例講解TensorFlow的套用開發。本書文字清晰、嚴謹,並輔以簡潔明了的插圖說明,同時提供步驟細緻的範例程式教學,讓讀者可以輕鬆理解並掌握深度學習原理和TensorFlow開發方法。本書分為12章,內容包括:環境安裝、TensorFlow 2.0介紹、回歸問題、二分類問題、多分類問題、神經網路訓練技巧、TensorFlow 2.0高級技巧、TensorBoard高級技巧、卷積神經網路經典架構、遷移學習、變分自編碼器和生成式對抗網路。 本書適合TensorFlow深度學習自學者、深度學習開發人員、人工智慧行業諮詢顧問等閱讀,也適合作為高等院校和培訓學校人工智慧及其相關專業師生的教學參考書。
圖書目錄
第1章 環境安裝 1
1.1 Python安裝 1
1.1.1 Windows安裝方法 1
1.1.2 Ubuntu安裝方法 2
1.2 TensorFlow安裝 2
1.2.1 Windows安裝方法 2
1.2.2 Ubuntu安裝方法 5
1.3 Python 擴充套件安裝 8
1.4 Jupyter Notebook 9
1.4.1 Windows安裝方法 9
1.4.2 Ubuntu安裝方法 10
1.4.3 設定並建立項目 10
1.4.4 常用快捷鍵 11
1.4.5 Jupyter Notebook操作練習 11
1.5 本書的範例程式 13
1.5.1 在Windows中打開項目 14
1.5.2 在Ubuntu中打開項目 14
第2章 TensorFlow 2.0介紹 16
2.1 什麼是深度學習 16
2.2 建立項目 17
2.3 TensorFlow介紹 18
2.4 TensorFlow 2.0的變化 20
2.5 Eager Execution 21
2.5.1 Eager Execution介紹 21
2.5.2 TensorFlow基本運算 22
2.6 Keras 24
2.6.1 Keras介紹 24
2.6.2 序貫模型 26
2.6.3 Functional API 28
2.7 tf.data 32
2.7.1 tf.data介紹 32
2.7.2 基本操作 34
第3章 回歸問題 39
3.1 深度神經網路 39
3.1.1 神經網路簡史 39
3.1.2 神經網路原理 40
3.1.3 全連線 41
3.1.4 損失函式MSE 和MAE 41
3.1.5 神經網路權重更新 43
3.1.6 神經網路訓練步驟 44
3.2 Kaggle介紹 46
3.3 實驗一:房價預測模型 47
3.3.1 數據集介紹 47
3.3.2 新建項目 48
3.3.3 程式代碼 49
3.4 TensorBoard 介紹 56
3.5 實驗二:過擬合問題 58
3.5.1 過擬合說明 58
3.5.2 程式代碼 60
3.5.3 TensorBoard 數據分析 64
3.6 參考文獻 65
第4章 二分類問題 67
4.1 機器學習的四大類別 67
4.2 二分類問題介紹 69
4.2.1 邏輯回歸 69
4.2.2 Sigmoid 69
4.2.3 二分類交叉熵 69
4.2.4 獨熱編碼 71
4.3 實驗:精靈寶可夢對戰預測 72
4.3.1 數據集介紹 72
4.3.2 新建項目 75
4.3.3 程式代碼 76
4.4 參考文獻 91
第5章 多分類問題 94
5.1 卷積神經網路 94
5.1.1 卷積神經網路簡介 94
5.1.2 卷積神經網路架構 95
5.1.3 卷積神經網路的原理 102
5.2 多分類問題介紹 105
5.2.1 Softmax 105
5.2.2 多分類交叉熵 106
5.2.3 數據增強 107
5.3 實驗:CIFAR-10圖像識別 108
5.3.1 數據集介紹 108
5.3.2 TensorFlow Datasets 109
5.3.3 新建項目 110
5.3.4 程式代碼 111
5.4 參考文獻 127
第6章 神經網路訓練技巧 129
6.1 反向傳播 129
6.2 權重初始化 133
6.2.1 常態分配 133
6.2.2 Xavier/Glorot 初始化 135
6.2.3 He初始化 137
6.3 批量歸一化 139
6.3.1 批量歸一化介紹 139
6.3.2 批量歸一化網路架構 140
6.4 實驗一:使用CIFAR-10數據集實驗 3種權重初始化方法 141
6.4.1 新建項目 141
6.4.2 建立圖像增強函式 142
6.4.3 程式代碼 144
6.4.4 TensorBoard可視化權重分布 148
6.5 實驗二:使用CIFAR-10數據集實驗 批量歸一化方法 151
6.6 總結各種網路架構的性能比較 154
6.7 參考文獻 155
第7章 TensorFlow 2.0高級技巧 157
7.1 TensorFlow高級技巧 157
7.1.1 自定義網路層 158
7.1.2 自定義損失函式 159
7.1.3 自定義評價指標函式 159
7.1.4 自定義回調函式 160
7.2 Keras高級API與自定義API比較 161
7.2.1 網路層 161
7.2.2 損失函式 162
7.2.3 評價指標函式 163
7.2.4 回調函式 165
7.3 實驗:比較Keras 高級API和 自定義API兩種網路訓練的結果 166
7.3.1 新建項目 166
7.3.2 程式代碼 167
第8章 TensorBoard高級技巧 176
8.1 TensorBoard的高級技巧 176
8.1.1 tf.summary 177
8.1.2 tf.summary.scalar 177
8.1.3 tf.summary.image 179
8.1.4 tf.summary.text 181
8.1.5 tf.summary.audio 182
8.1.6 tf.summary.histogram 183
8.2 實驗一:使用tf.summary.image記錄訓練結果 186
8.2.1 新建項目 186
8.2.2 程式代碼 187
8.3 實驗二:使用TensorBoard超參數調校工具來 訓練多個網路模型 195
8.3.1 啟動TensorBoard(命令行) 196
8.3.2 程式代碼 197
第9章 卷積神經網路經典架構 205
9.1 神經網路架構 205
9.1.1 LeNet 205
9.1.2 AlexNet 206
9.1.3 VGG 206
9.1.4 GoogLeNet 207
9.1.5 ResNet 210
9.1.6 總結各種網路架構的比較 211
9.2 實驗:實現Inception V3網路架構 212
9.2.1 新建項目 213
9.2.2 Keras Applications 214
9.2.3 TensorFlow Hub 217
9.3 參考文獻 222
第10章 遷移學習 224
10.1 認識遷移學習 224
10.1.1 遷移學習介紹 224
10.1.2 遷移學習訓練技巧 225
10.2 實驗:遷移學習範例 230
10.2.1 新建項目 230
10.2.2 數據集介紹 231
10.2.3 程式代碼 231
10.3 參考文獻 237
第11章 變分自編碼器 239
11.1 自編碼器介紹 239
11.2 變分自編碼器介紹 241
11.3 變分自解碼器的損失函式 243
11.4 實驗:變分自編碼器程式代碼的實現 244
11.4.1 建立項目 245
11.4.2 數據集介紹 247
11.4.3 變分自編碼器項目說明 248
11.4.4 變分自編碼器訓練和生成圖像 254
11.5 參考文獻 257
第12章 生成式對抗網路 258
12.1 認識生成式對抗網路 258
12.1.1 生成式對抗網路介紹 258
12.1.2 生成式對抗網路訓練及損失函式 260
12.2 GAN、WGAN、WGAN-GP的演進 262
12.2.1 生成式對抗網路的問題 262
12.2.2 Wasserstein距離介紹 264
12.2.3 WGAN-GP 損失函式 266
12.3 實驗:WGAN-GP程式代碼的實現 268
12.3.1 建立項目 269
12.3.2 數據集介紹 271
12.3.3 WGAN-GP 項目說明 272
12.4 參考文獻 281