第1章 緒論 1
1.1 引言 1
1.2 人工智能的發展曆程 2
1.3 機器學習及相關技術 4
1.3.1 學習形式分類 4
1.3.2 學習方法分類 5
1.3.3 機器學習的相關技術 7
1.4 國內外研究現狀 8
1.4.1 國外研究現狀 8
1.4.2 國內研究現狀 9
第2章 深度學習 11
2.1 神經網絡模型 11
2.1.1 人腦視覺機理 11
2.1.2 生物神經元 13
2.1.3 人工神經網絡 15
2.2 BP神經網絡 18
2.2.1 BP神經元 18
2.2.2 BP神經網絡構成 19
2.2.3 正嚮傳播 21
2.2.4 反嚮傳播 21
2.3 捲積神經網絡 24
2.3.1 捲積神經網絡的曆史 25
2.3.2 捲積神經網絡的網絡結構 26
2.3.3 局部感知 27
2.3.4 參數共享 28
2.3.5 多捲積核 28
2.3.6 池化(Pooling) 29
2.4 深度學習框架 30
2.4.1 Caffe 30
2.4.2 Torch 31
2.4.3 Keras 32
2.4.4 MXNet 32
2.4.5 TensorFlow 33
2.4.6 CNTK 33
2.4.7 Theano 34
第3章 Caffe簡介及其安裝配置 36
3.1 Caffe是什麼 36
3.1.1 Caffe的特點 38
3.1.2 Caffe的架構 38
3.2 Caffe的安裝環境 39
3.2.1 Caffe的硬件環境 39
3.2.2 Caffe的軟件環境 43
3.2.3 Caffe的依賴庫 44
3.2.4 Caffe開發環境的安裝 46
3.3 Caffe接口 52
3.3.1 Caffe Python接口 52
3.3.2 Caffe MATLAB接口 55
3.3.3 Caffe命令行接口 56
第4章 Caffe網絡定義 58
4.1 Caffe模型要素 58
4.1.1 網絡模型 58
4.1.2 參數配置 62
4.2 Google Protobuf結構化數據 63
4.3 Caffe數據庫 65
4.3.1 LevelDB 65
4.3.2 LMDB 66
4.3.3 HDF5 66
4.4 Caffe Net 66
4.5 Caffe Blob 68
4.6 Caffe Layer 70
4.6.1 Data Layers 71
4.6.2 Convolution Layers 75
4.6.3 Pooling Layers 76
4.6.4 InnerProduct Layers 77
4.6.5 ReLU Layers 78
4.6.6 Sigmoid Layers 79
4.6.7 LRN Layers 79
4.6.8 Dropout Layers 80
4.6.9 SoftmaxWithLoss Layers 80
4.6.10 Softmax Layers 81
4.6.11 Accuracy Layers 81
4.7 Caffe Solver 82
Solver方法 83
第5章 LeNet模型 88
5.1 LeNet模型簡介 88
5.2 LeNet模型解讀 89
5.3 Caffe環境LeNet模型 91
5.3.1 mnist實例詳解 91
5.3.2 mnist手寫測試 103
5.3.3 mnist樣本字庫的圖片轉換 106
第6章 AlexNet模型 107
6.1 AlexNet模型介紹 107
6.2 AlexNet模型解讀 108
6.3 AlexNet模型特點 111
6.4 Caffe環境AlexNet模型訓練 112
6.4.1 數據準備 112
6.4.2 其他支持文件 113
6.4.3 圖片預處理 113
6.4.4 ImageNet數據集介紹 113
6.4.5 ImageNet圖片介紹 115
6.4.6 ImageNet模型訓練 115
6.4.7 Caffe的AlexNet模型與論文的不同 124
6.4.8 ImageNet模型測試 124
第7章 GoogLeNet模型 126
7.1 GoogLeNet模型簡介 126
7.1.1 背景和動機 127
7.1.2 Inception結構 127
7.2 GoogLeNet模型解讀 129
7.2.1 GoogLeNet模型結構 129
7.2.2 GoogLeNet模型特點 134
7.3 GoogLeNet模型的Caffe實現 135
第8章 VGGNet模型 146
8.1 VGGNet網絡模型 146
8.1.1 VGGNet模型介紹 146
8.1.2 VGGNet模型特點 147
8.1.3 VGGNet模型解讀 147
8.2 VGGNet網絡訓練 149
8.2.1 VGGNet訓練參數設置 149
8.2.2 Multi-Scale訓練 149
8.2.3 測試 150
8.2.4 部署 150
8.3 VGGNet模型分類實驗 150
8.3.1 Single-scale對比 150
8.3.2 Multi-scale對比 151
8.3.3 模型融閤 152
8.4 VGGNet網絡結構 153
第9章 Siamese模型 158
9.1 Siamese網絡模型 159
9.1.1 Siamese模型原理 159
9.1.2 Siamese模型實現 160
9.2 Siamese網絡訓練 165
9.2.1 數據準備 165
9.2.2 生成side 165
9.2.3 對比損失函數 166
9.2.4 定義solver 166
9.2.5 網絡訓練 166
第10章 SqueezeNet模型 168
10.1 SqueezeNet網絡模型 168
10.1.1 SqueezeNet模型原理 168
10.1.2 Fire Module 169
10.1.3 SqueezeNet模型結構 170
10.1.4 SqueezeNet模型特點 171
10.2 SqueezeNet網絡實現 172
第11章 FCN模型 177
11.1 FCN模型簡介 177
11.2 FCN的特點和使用場景 178
11.3 Caffe FCN解讀 179
11.3.1 FCN模型訓練準備 180
11.3.1 FCN模型訓練 183
第12章 R-CNN模型 196
12.1 R-CNN模型簡介 196
12.2 R-CNN的特點和使用場景 197
12.3 Caffe R-CNN解讀 198
12.3.1 R-CNN模型訓練準備 198
12.3.2 R-CNN模型訓練 201
第13章 Fast-RCNN模型 217
13.1 Fast-RCNN模型簡介 217
13.2 Fast-RCNN的特點和使用場景 218
13.3 Caffe Fast-RCNN解讀 220
13.3.1 Fast-RCNN模型訓練準備 220
13.3.2 Fast-RCNN模型訓練 222
第14章 Faster-RCNN模型 239
14.1 Faster-RCNN模型簡介 239
14.2 Faster-RCNN的特點和使用場景 241
14.3 Caffe Faster-RCNN解讀 242
14.3.1 Faster-RCNN模型訓練準備 242
14.3.2 Faster-RCNN模型訓練 244
第15章 SSD模型 264
15.1 SSD模型簡介 264
15.2 SSD的特點和使用場景 266
15.3 Caffe SSD解讀 267
15.3.1 SSD模型訓練準備 267
15.3.2 SSD模型訓練 268
第16章 Kaggle項目實踐:人臉特徵檢測 290
16.1 項目簡介 290
16.2 賽題和數據 291
16.3 Caffe訓練和測試數據庫 293
16.3.1 數據庫生成 293
16.3.2 網絡對比 295
16.3.3 網絡一 296
16.3.4 網絡二 300
16.3.5 Python人臉特徵預測程序 306
第17章 Kaggle項目實踐:貓狗分類檢測 311
17.1 項目簡介 311
17.2 賽題和數據 312
17.3 Caffe訓練和測試數據庫 312
17.3.1 數據庫生成 312
17.3.2 Caffe實現 316
17.3.3 CatdogNet訓練 328
17.3.4 CatdogNet模型驗證 332
· · · · · · (
收起)