第1章 人工智能、機器學習與深度學習簡介 1
1.1 人工智能、機器學習、深度學習的關係 2
1.2 機器學習介紹 4
1.3 機器學習分類 4
1.4 深度學習簡介 7
1.5 結論 8
第2章 深度學習的原理 9
2.1 神經傳導的原理 10
2.2 以矩陣運算仿真神經網絡 13
2.3 多層感知器模型 14
2.4 使用反嚮傳播算法進行訓練 16
2.5 結論 21
第3章 TensorFlow與Keras介紹 22
3.1 TensorFlow架構圖 23
3.2 TensorFlow簡介 24
3.3 TensorFlow程序設計模式 26
3.4 Keras介紹 27
3.5 Keras程序設計模式 28
3.6 Keras與TensorFlow比較 29
3.7 結論 30
第4章 在Windows中安裝TensorFlow與Keras 31
4.1 安裝Anaconda 32
4.2 啓動命令提示符 35
4.3 建立TensorFlow的Anaconda虛擬環境 37
4.4 在Anaconda虛擬環境安裝TensorFlow與Keras 40
4.5 啓動Jupyter Notebook 42
4.6 結論 48
第5章 在Linux Ubuntu中安裝TensorFlow與Keras 49
5.1 安裝Anaconda 50
5.2 安裝TensorFlow與Keras 52
5.3 啓動Jupyter Notebook 53
5.4 結論 54
第6章 Keras MNIST手寫數字識彆數據集 55
6.1 下載MNIST數據 56
6.2 查看訓練數據 58
6.3 查看多項訓練數據images與label 60
6.4 多層感知器模型數據預處理 62
6.5 features數據預處理 62
6.6 label數據預處理 64
6.7 結論 65
第7章 Keras多層感知器識彆手寫數字 66
7.1 Keras多元感知器識彆MNIST手寫數字圖像的介紹 67
7.2 進行數據預處理 69
7.3 建立模型 69
7.4 進行訓練 73
7.5 以測試數據評估模型準確率 77
7.6 進行預測 78
7.7 顯示混淆矩陣 79
7.8 隱藏層增加為1000個神經元 81
7.9 多層感知器加入DropOut功能以避免過度擬閤 84
7.10 建立多層感知器模型包含兩個隱藏層 86
7.11 結論 89
第8章 Keras捲積神經網絡識彆手寫數字 90
8.1 捲積神經網絡簡介 91
8.2 進行數據預處理 97
8.3 建立模型 98
8.4 進行訓練 101
8.5 評估模型準確率 104
8.6 進行預測 104
8.7 顯示混淆矩陣 105
8.8 結論 107
第9章 Keras CIFAR-10圖像識彆數據集 108
9.1 下載CIFAR-10數據 109
9.2 查看訓練數據 111
9.3 查看多項images與label 112
9.4 將images進行預處理 113
9.5 對label進行數據預處理 114
9.6 結論 115
第10章 Keras捲積神經網絡識彆CIFAR-10圖像 116
10.1 捲積神經網絡簡介 117
10.2 數據預處理 118
10.3 建立模型 119
10.4 進行訓練 123
10.5 評估模型準確率 126
10.6 進行預測 126
10.7 查看預測概率 127
10.8 顯示混淆矩陣 129
10.9 建立3次的捲積運算神經網絡 132
10.10 模型的保存與加載 135
10.11 結論 136
第11章 Keras泰坦尼剋號上的旅客數據集 137
11.1 下載泰坦尼剋號旅客數據集 138
11.2 使用Pandas DataFrame讀取數據並進行預處理 140
11.3 使用Pandas DataFrame進行數據預處理 142
11.4 將DataFrame轉換為Array 143
11.5 將ndarray特徵字段進行標準化 145
11.6 將數據分為訓練數據與測試數據 145
11.7 結論 147
第12章 Keras多層感知器預測泰坦尼剋號上旅客的生存概率 148
12.1 數據預處理 149
12.2 建立模型 150
12.3 開始訓練 152
12.4 評估模型準確率 155
12.5 加入《泰坦尼剋號》電影中Jack與Rose的數據 156
12.6 進行預測 157
12.7 找齣泰坦尼剋號背後的感人故事 158
12.8 結論 160
第13章 IMDb網絡電影數據集與自然語言處理 161
13.1 Keras自然語言處理介紹 163
13.2 下載IMDb數據集 167
13.3 讀取IMDb數據 169
13.4 查看IMDb數據 172
13.5 建立token 173
13.6 使用token將“影評文字”轉換成“數字列錶” 174
13.7 讓轉換後的數字長度相同 174
13.8 結論 176
第14章 Keras建立MLP、RNN、LSTM模型進行IMDb情感分析 177
14.1 建立多層感知器模型進行IMDb情感分析 178
14.2 數據預處理 179
14.3 加入嵌入層 180
14.4 建立多層感知器模型 181
14.5 訓練模型 182
14.6 評估模型準確率 184
14.7 進行預測 185
14.8 查看測試數據預測結果 185
14.9 查看《美女與野獸》的影評 187
14.10 預測《美女與野獸》的影評是正麵或負麵的 190
14.11 文字處理時使用較大的字典提取更多文字 192
14.12 RNN模型介紹 193
14.13 使用Keras RNN模型進行IMDb情感分析 195
14.14 LSTM模型介紹 197
14.15 使用Keras LSTM模型進行IMDb情感分析 199
14.16 結論 200
第15章 TensorFlow程序設計模式 201
15.1 建立“計算圖” 202
15.2 執行“計算圖” 204
15.3 TensorFlow placeholder 206
15.4 TensorFlow數值運算方法介紹 207
15.5 TensorBoard 208
15.6 建立一維與二維張量 211
15.7 矩陣基本運算 212
15.8 結論 214
第16章 以TensorFlow張量運算仿真神經網絡的運行 215
16.1 以矩陣運算仿真神經網絡 216
16.2 以placeholder傳入X值 220
16.3 創建layer函數以矩陣運算仿真神經網絡 222
16.4 建立layer_debug函數顯示權重與偏差 225
16.5 結論 226
第17章 TensorFlow MNIST手寫數字識彆數據集 227
17.1 下載MNIST數據 228
17.2 查看訓練數據 229
17.3 查看多項訓練數據images與labels 232
17.4 批次讀取MNIST數據 234
17.5 結論 235
第18章 TensorFlow多層感知器識彆手寫數字 236
18.1 TensorFlow建立多層感知器辨識手寫數字的介紹 237
18.2 數據準備 239
18.3 建立模型 239
18.4 定義訓練方式 242
18.5 定義評估模型準確率的方式 243
18.6 進行訓練 244
18.7 評估模型準確率 249
18.8 進行預測 249
18.9 隱藏層加入更多神經元 250
18.10 建立包含兩個隱藏層的多層感知器模型 251
18.11 結論 252
第19章 TensorFlow捲積神經網絡識彆手寫數字 253
19.1 捲積神經網絡簡介 254
19.2 進行數據預處理 255
19.3 建立共享函數 256
19.4 建立模型 258
19.5 定義訓練方式 264
19.6 定義評估模型準確率的方式 264
19.7 進行訓練 265
19.8 評估模型準確率 266
19.9 進行預測 267
19.10 TensorBoard 268
19.11 結論 270
第20章 TensorFlow GPU版本的安裝 271
20.1 確認顯卡是否支持CUDA 273
20.2 安裝CUDA 274
20.3 安裝cuDNN 278
20.4 將cudnn64_5.dll存放的位置加入Path環境變量 281
20.5 在Anaconda建立TensorFlow GPU虛擬環境 283
20.6 安裝TensorFlow GPU版本 285
20.7 安裝Keras 286
20.8 結論 286
第21章 使用GPU加快TensorFlow與Keras訓練 287
21.1 啓動TensorFlow GPU環境 288
21.2 測試GPU與CPU執行性能 293
21.3 超齣顯卡內存的限製 296
21.4 以多層感知器的實際範例比較CPU與GPU的執行速度 297
21.5 以CNN的實際範例比較CPU與GPU的執行速度 299
21.6 以Keras Cifar CNN的實際範例比較CPU與GPU的執行速度 302
21.7 結論 304
附錄A 本書範例程序的下載與安裝說明 305
A.1 在Windows係統中下載與安裝範例程序 306
A.2 在Ubuntu Linux係統中下載與安裝範例程序 310
· · · · · · (
收起)