第1章 深度學習入門 1
1.1 機器學習簡介 1
1.1.1 監督學習 2
1.1.2 無監督學習 2
1.1.3 強化學習 3
1.2 深度學習定義 3
1.2.1 人腦的工作機製 3
1.2.2 深度學習曆史 4
1.2.3 應用領域 5
1.3 神經網絡 5
1.3.1 生物神經元 5
1.3.2 人工神經元 6
1.4 人工神經網絡的學習方式 8
1.4.1 反嚮傳播算法 8
1.4.2 權重優化 8
1.4.3 隨機梯度下降法 9
1.5 神經網絡架構 10
1.5.1 多層感知器 10
1.5.2 DNN架構 11
1.5.3 捲積神經網絡 12
1.5.4 受限玻爾茲曼機 12
1.6 自編碼器 13
1.7 循環神經網絡 14
1.8 幾種深度學習框架對比 14
1.9 小結 16
第2章 TensorFlow初探 17
2.1 總覽 17
2.1.1 TensorFlow 1.x版本特性 18
2.1.2 使用上的改進 18
2.1.3 TensorFlow安裝與入門 19
2.2 在Linux上安裝TensorFlow 19
2.3 為TensorFlow啓用NVIDIA GPU 20
2.3.1 第1步:安裝NVIDIA CUDA 20
2.3.2 第2步:安裝NVIDIA cuDNN v5.1+ 21
2.3.3 第3步:確定GPU卡的CUDA計算能力為3.0+ 22
2.3.4 第4步:安裝libcupti-dev庫 22
2.3.5 第5步:安裝Python
(或Python 3) 22
2.3.6 第6步:安裝並升級PIP
(或PIP3) 22
2.3.7 第7步:安裝TensorFlow 23
2.4 如何安裝TensorFlow 23
2.4.1 直接使用pip安裝 23
2.4.2 使用virtualenv安裝 24
2.4.3 從源代碼安裝 26
2.5 在Windows上安裝TensorFlow 27
2.5.1 在虛擬機上安裝TensorFlow 27
2.5.2 直接安裝到Windows 27
2.6 測試安裝是否成功 28
2.7 計算圖 28
2.8 為何采用計算圖 29
2.9 編程模型 30
2.10 數據模型 33
2.10.1 階 33
2.10.2 形狀 33
2.10.3 數據類型 34
2.10.4 變量 36
2.10.5 取迴 37
2.10.6 注入 38
2.11 TensorBoard 38
2.12 實現一個單輸入神經元 39
2.13 單輸入神經元源代碼 43
2.14 遷移到TensorFlow 1.x版本 43
2.14.1 如何用腳本升級 44
2.14.2 局限 47
2.14.3 手動升級代碼 47
2.14.4 變量 47
2.14.5 匯總函數 47
2.14.6 簡化的數學操作 48
2.14.7 其他事項 49
2.15 小結 49
第3章 用TensorFlow構建前饋
神經網絡 51
3.1 前饋神經網絡介紹 51
3.1.1 前饋和反嚮傳播 52
3.1.2 權重和偏差 53
3.1.3 傳遞函數 53
3.2 手寫數字分類 54
3.3 探究MNIST數據集 55
3.4 softmax分類器 57
3.5 TensorFlow模型的保存和還原 63
3.5.1 保存模型 63
3.5.2 還原模型 63
3.5.3 softmax源代碼 65
3.5.4 softmax啓動器源代碼 66
3.6 實現一個五層神經網絡 67
3.6.1 可視化 69
3.6.2 五層神經網絡源代碼 70
3.7 ReLU分類器 72
3.8 可視化 73
3.9 dropout優化 76
3.10 可視化 78
3.11 小結 80
第4章 TensorFlow與捲積神經網絡 82
4.1 CNN簡介 82
4.2 CNN架構 84
4.3 構建你的第一個CNN 86
4.4 CNN錶情識彆 95
4.4.1 錶情分類器源代碼 104
4.4.2 使用自己的圖像測試模型 107
4.4.3 源代碼 109
4.5 小結 111
第5章 優化TensorFlow自編碼器 112
5.1 自編碼器簡介 112
5.2 實現一個自編碼器 113
5.3 增強自編碼器的魯棒性 119
5.4 構建去噪自編碼器 120
5.5 捲積自編碼器 127
5.5.1 編碼器 127
5.5.2 解碼器 128
5.5.3 捲積自編碼器源代碼 134
5.6 小結 138
第6章 循環神經網絡 139
6.1 RNN的基本概念 139
6.2 RNN的工作機製 140
6.3 RNN的展開 140
6.4 梯度消失問題 141
6.5 LSTM網絡 142
6.6 RNN圖像分類器 143
6.7 雙嚮RNN 149
6.8 文本預測 155
6.8.1 數據集 156
6.8.2 睏惑度 156
6.8.3 PTB模型 156
6.8.4 運行例程 157
6.9 小結 158
第7章 GPU計算 160
7.1 GPGPU計算 160
7.2 GPGPU的曆史 161
7.3 CUDA架構 161
7.4 GPU編程模型 162
7.5 TensorFlow中GPU的設置 163
7.6 TensorFlow的GPU管理 165
7.7 GPU內存管理 168
7.8 在多GPU係統上分配單個GPU 168
7.9 使用多個GPU 170
7.10 小結 171
第8章 TensorFlow高級編程 172
8.1 Keras簡介 172
8.2 構建深度學習模型 174
8.3 影評的情感分類 175
8.4 添加一個捲積層 179
8.5 Pretty Tensor 181
8.6 數字分類器 182
8.7 TFLearn 187
8.8 泰坦尼剋號幸存者預測器 188
8.9 小結 191
第9章 TensorFlow高級多媒體編程 193
9.1 多媒體分析簡介 193
9.2 基於深度學習的大型對象檢測 193
9.2.1 瓶頸層 195
9.2.2 使用重訓練的模型 195
9.3 加速綫性代數 197
9.3.1 TensorFlow的核心優勢 197
9.3.2 加速綫性代數的準時編譯 197
9.4 TensorFlow和Keras 202
9.4.1 Keras簡介 202
9.4.2 擁有Keras的好處 203
9.4.3 視頻問答係統 203
9.5 Android上的深度學習 209
9.5.1 TensorFlow演示程序 209
9.5.2 Android入門 211
9.6 小結 214
第10章 強化學習 215
10.1 強化學習基本概念 216
10.2 Q-learning算法 217
10.3 OpenAI Gym框架簡介 218
10.4 FrozenLake-v0實現問題 220
10.5 使用TensorFlow實現Q-learning 223
10.6 小結 227
· · · · · · (
收起)