深度學習實踐教程
內容描述
本書共分8章,內容包括深度學習基礎、深度學習框架PyTorch的安裝、PyTorch基礎、
線性回歸和邏輯回歸、全連接神經網絡、卷積神經網絡、循環神經網絡及生成式對抗網絡。
本書首先從深度學習基礎知識入手,引領讀者動手搭建深度學習框架PyTorch,
然後在PyTorch框架下實現深度學習中常用的網絡模型。
通過本書,讀者可對深度學習有一個清晰的認識。
本書中的程序均可在Windows系統中運行,不受是否具備GPU的限制。
本書提供電子課件、源代碼,讀者可登錄“華信教育資源網”(www.hxedu.com.cn)免費下載。
書中每章都配有習題和實驗,最後還附有參考答案。
本書可作為高等學校本科數據科學與大數據、人工智能、機器人工程等專業深度學習相關課程的教材,
也適合廣大對深度學習有興趣的讀者自學使用。
目錄大綱
目錄
第1章深度學習基礎1
1.1人工智能、機器學習與深度學習1
1.1.1人工智能簡介1
1.1.2機器學習簡介2
1.1.3深度學習簡介3
1.2深度學習的三大核心要素4
1.3神經元與深度神經網絡7
1.4神經網絡中常用的激勵函數9
1.5深度學習的優勢13
1.6常用的深度學習框架15
本章小結16
習題16
第2章深度學習框架PyTorch的安裝19
2.1 PyTorch介紹19
2.2 Windows系統中PyTorch的配置20
2.2.1安裝Python 20
2.2.2 PyTorch環境搭建21
2.3 Linux系統中PyTorch的配置22
2.3.1安裝虛擬機23
2.3.2 Python環境配置25
2.3.3 PyTorch環境搭建25
2.4 PyTorch開發工具26
2.4.1 IDLE 26
2.4.2 PyCharm 27
本章小結34
習題34
實驗35
第3章PyTorch基礎36
3.1 Tensor的定義36
3.2 Tensor的創建37
3.3 Tensor的形狀調整39
3.4 Tensor的簡單運算40
3.5 Tensor的比較41
3.6 Tensor的數理統計42
3.7 Tensor與NumPy的互相轉換43
3.8 Tensor的降維和增維44
3.9 Tensor的裁剪46
3.10 Tensor的索引46
3.11把Tensor移到GPU上48
本章小結49
習題49
實驗50
第4章線性回歸和邏輯回歸54
4.1回歸54
4.2線性回歸55
4.3一元線性回歸的代碼實現58
4.4梯度及梯度下降法62
4.4.1梯度62
4.4.2梯度下降法62
4.5多元線性回歸的代碼實現63
4.6邏輯回歸65
4.6.1邏輯回歸65
4.6.2邏輯回歸中的損失函數66
4.6.3邏輯回歸的代碼實現66
本章小結69
習題69
實驗70
第5章全連接神經網絡72
5.1全連接神經網絡概述72
5.2多分類問題73
5.3 Softmax函數與交叉熵74
5.4反向傳播算法76
5.4.1鍊式求導法則76
5.4.2反向傳播算法實例77
5.4.3 Sigmoid函數實例77
5.5計算機視覺工具包torchvision 78
5.6全連接神經網絡實現多分類80
5.6.1定義全連接神經網絡80
5.6.2全連接神經網絡識別MNIST手寫數字81
本章小結85
習題85
實驗87
第6章卷積神經網絡88
6.1前饋神經網絡88
6.2卷積神經網絡的原理89
6.2.1卷積層91
6.2.2池化層94
6.3卷積神經網絡的代碼實現96
6.4 LeNet-5模型99
6.4.1 LeNet-5模型的架構99
6.4.2 CIFAR 10數據集101
6.4.3 LeNet-5模型的代碼實現101
6.5 VGGNet模型106
6.5.1 VGGNet模型簡介106
6.5.2 VGGNet模型的代碼實現107
6.6 ResNet模型112
6.6.1 ResNet模型簡介112
6.6.2 ResNet模型殘差學習單元的代碼實現113
本章小結114
習題114
實驗115
第7章循環神經網絡119
7.1循環神經網絡概述119
7.2循環神經網絡的原理120
7.3長短時記憶神經網絡122
7.3.1長短時記憶神經網絡的原理122
7.3.2長短時記憶神經網絡實例1 125
7.3.3長短時記憶神經網絡實例2 129
本章小結136
習題136
實驗137
第8章生成式對抗網絡138
8.1生成式對抗網絡概述138
8.1.1生成式對抗網絡的原理138
8.1.2生成式對抗網絡的代碼實現142
8.2條件生成式對抗網絡150
8.3最小二乘生成式對抗網絡151
本章小結151
習題151
實驗152
附錄A部分習題與實驗參考答案153
A. 1第1章習題與實驗參考答案153
A. 2第2章習題與實驗參考答案155
A. 2.1習題參考答案155
A. 2.2實驗參考答案156
A. 3第3章習題與實驗參考答案156
A. 3.1習題參考答案156
A. 3.2實驗參考答案156
A. 4第4章習題與實驗參考答案166
A. 4.1習題參考答案166
A. 4.2實驗參考答案167
A. 5第5章習題與實驗參考答案175
A. 5.1習題參考答案175
A. 5.2實驗參考答案175
A. 6第6章習題與實驗參考答案178
A. 6.1習題參考答案178
A. 6.2實驗參考答案179
A. 7第7章習題與實驗參考答案192
A. 7.1習題參考答案192
A. 7.2實驗參考答案193
A. 8第8章習題與實驗參考答案196
A. 8.1習題參考答案196
A. 8.2實驗參考答案197
參考文獻212
作者介紹
吳微
中國科學院瀋陽自動化研究所博士後,副教授,美國普渡大學訪問學者;參與編寫《跨越軟件設計師必備訓練》、
《跨越軟考精講精練》系列考試培訓教程,共計100萬字;2016年起承擔本校"深度學習算法及應用”本科課程的教學工作,
具有豐富的深度學習教學經驗。