PyTorch 深度學習 (Deep Learning with PyTorch: A practical approach to building neural network models using PyTorch)
內容描述
PyTorch是Facebook於2017年初在機器學習和科學計算工具Torch的基礎上,針對Python語言發布的一個全新的機器學習工具包,一經推出便受到了業界的廣泛關註和討論,目前已經成為機器學習從業人員的研發工具。
《PyTorch深度學習》是使用PyTorch構建神經網絡模型的實用指南,內容分為9章,包括PyTorch與深度學習的基礎知識、神經網絡的構成、神經網絡的知識、機器學習基礎知識、深度學習在電腦視覺中的應用、深度學習在序列數據和文本中的應用、生成網絡、現代網絡架構,以及PyTorch與深度學習的未來走向。
《PyTorch深度學習》適合對深度學習領域感興趣且希望一探PyTorch的業內人員閱讀;具備其他深度學習框架使用經驗的讀者,也可以通過本書掌握PyTorch的用法。
目錄大綱
1章PyTorch與深度學習 1n
1.1 人工智能1n
1.2 機器學習3n
1.3 深度學習4n
1.3.1 深度學習的應用4n
1.3.2 深度學習的浮誇宣傳6n
1.3.3 深度學習發展史6n
1.3.4 為何是現在7n
1.3.5 硬件可用性7n
1.3.6 數據和算法8n
1.3.7 深度學習框架9n
1.4 小結n2章 神經網絡的構成11n
2.1 安裝PyTorch 11n
2.2 實現 個神經網絡12n
2.2.1 準備數據13n
2.2.2 為神經網絡創建數據20n
2.2.3 加載數據24n
2.3 小結25n
3章深入了解神經網絡26n
3.1 詳解神經網絡的組成部分26n
3.1.1 層—神經網絡的基本組成27n
3.1.2 線性激活函數29n
3.1.3 PyTorch中的線性激活函數32n
3.1.4 使用深度學習進行圖像分類36n
3.2 小結46n4章機器學習基礎47n
4.1 三類機器學習問題47n
4.1.1 有監督學習48n
4.1.2 無監督學習48n
4.1.3 強化學習48n
4.2 機器學習術語49n
4.3 評估機器學習模型50n
4.4 數據預處理與特徵工程54n
4.4.1 向量化54n
4.4.2 值歸化54n
4.4.3 處理缺失值55n
4.4.4 特徵工程55n
4.5 過擬合與擬合56n
4.5.1 獲取更多數據56n
4.5.2 縮小網絡規模57n
4.5.3 應用權重正則化58n
4.5.4 應用dropout 58n
4.5.5 擬合60n
4.6 機器學習項目的工作流60n
4.6.1 問題定義與數據集創建60n
4.6.2 成功的衡量標準61n
4.6.3 評估協議61n
4.6.4 準備數據62n
4.6.5 模型基線62n
4.6.6 大到過擬合的模型63n
4.6.7 應用正則化63n
4.6.8 學習率選擇策略64n
4.7 小結65n5章深度學習之計算機視覺66n
5.1 神經網絡簡介66n
5.2 從零開始構建N模型69n
5.2.1 Conv2d 71n
5.2.2 池化74n
5.2.3 線性激活—ReLU 75n
5.2.4 視圖76n
5.2.5 訓練模型77n
5.2.6 狗貓分類問題—從零開始構建N 80n
5.2.7 利用遷移學習對狗貓分類82n
5.3 創建和探索VGG16模型84n
5.3.1 凍結層85n
5.3.2 微調VGG16模型85n
5.3.3 訓練VGG16模型86n
5.4 計算預卷積特徵88n
5.5 理解N模型如何學習91n
5.6 N層的可視化權重94n
5.7 小結95n
6章序列數據和文本的深度學習96n
6.1 使用文本數據96n
6.1.1 分詞98n
6.1.2 向量化0n
6.2 通過構建情感分類器訓練詞向量4n
6.2.1 下載IMDB數據並對文本分詞4n
6.2.2 構建詞表6n
6.2.3 生成向量的批數據7n
6.2.4 使用詞向量創建網絡模型8n
6.2.5 訓練模型9n
6.3 使用預訓練的詞向量1n
6.3.1 下載詞向量111n
6.3.2 在模型中加載詞向量112n
6.3.3 凍結embedding層權重113n
6.4 遞歸神經網絡(RNN) 113n
6.5 LSTM 117n
6.5.1 長期依賴117n
6.5.2 LSTM網絡117n
6.6 基於序列數據的捲積網絡123n
6.7 小結125n7章生成網絡126n
7.1 神經風格遷移126n
7.1.1 加載數據129n
7.1.2 創建VGG模型130n
7.1.3 內容損失131n
7.1.4 風格損失131n
7.1.5 提取損失133n
7.1.6 為網絡層創建損失函數136n
7.1.7 創建優化器136n
7.1.8 訓練137n
7.2 生成對抗網絡(GAN) 138n
7.3 深度捲機生成對抗網絡139n
7.3.1 定義生成網絡140n
7.3.2 定義判別網絡144n
7.3.3 定義損失函數和優化器145n
7.3.4 訓練判別網絡145n
7.3.5 訓練生成網絡146n
7.3.6 訓練整個網絡147n
7.3.7 檢驗生成的圖片148n
7.4 語言建模150n
7.4.1 準備數據151n
7.4.2 生成批數據152n
7.4.3 定義基於LSTM的模型153n
7.4.4 定義訓練和評估函數155n
7.4.5 訓練模型157n
7.5 小結159n
8章現代網絡架構160n
8.1 現代網絡架構160n
8.1.1 ResNet 160n
8.1.2 Inception 168n
8.2 稠密連接卷積網絡(DenseNet) 175n
8.2.1 DenseBlock 175n
8.2.2 DenseLayer 176n
8.3 模型集成180n
8.3.1 創建模型181n
8.3.2 提取圖片特徵182n
8.3.3 創建自定義數據集和數據加載器183n
8.3.4 創建集成模型184n
8.3.5 訓練和驗證模型185n
8.4 encoder-decoder架構186n
8.4.1 編碼器188n
8.4.2 解碼器188n
8.5 小結188n9章未來走向189n
9.1 未來走向189n
9.2 回顧189n
9.3 有趣的創意應用190n
9.3.1 對象檢測190n
9.3.2 圖像分割191n
9.3.3 PyTorch中的OpenNMT 192n
9.3.4 AlleNLP 192n
9.3.5 fast.ai—神經網絡不再神秘192n
9.3.6 OpeNeural Network Exchange 192n
9.4 如何跟上前沿193n
9.5 小結193
作者介紹
Vishnu Subramanian在領導、設計和實施大數據分析項目(人工智能、機器學習和深度學習)方面富有經驗。
擅長機器學習、深度學習、分佈式機器學習和可視化等。
在零售、金融和旅行等行業頗具經驗,還善於理解和協調企業、人工智能和工程團隊之間的關係。