動手學 PyTorch 深度學習建模與應用

王國平

  • 出版商: 清華大學
  • 出版日期: 2022-03-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • ISBN: 7302598983
  • ISBN-13: 9787302598985
  • 相關分類: DeepLearning
  • 立即出貨

  • 動手學 PyTorch 深度學習建模與應用-preview-1
  • 動手學 PyTorch 深度學習建模與應用-preview-2
  • 動手學 PyTorch 深度學習建模與應用-preview-3
動手學 PyTorch 深度學習建模與應用-preview-1

買這商品的人也買了...

商品描述

本書以新版深度學習框架PyTorch為基礎,循序漸進地介紹其在深度學習中的應用。全書共10章,從深度學習數學知識入手,逐步介紹PyTorch在數值建模、圖像建模、文本建模、音頻建模中的基本概念及應用示例,還將介紹模型的可視化和聯邦學習等內容,以擴展讀者的視野。本書在講解每一個知識點的同時,都配合有動手練習實例,便於讀者深入理解所學知識,並達成學以致用的目標。 本書原理與實踐並重,易於理解且可操作性強,特別適合PyTorch新手、大學生、研究人員和開發人員使用,也可作為高等院校相關專業的教學用書。

目錄大綱

目    錄

 

第1章  深度學習環境搭建 1

1.1  深度學習概述 1

1.1.1  深度學習發展歷史 1

1.1.2  深度學習框架比較 2

1.1.3  深度學習應用領域 5

1.2  搭建開發環境 6

1.2.1  安裝Python 3.10 6

1.2.2  安裝Jupyter Lab 10

1.2.3  安裝PyTorch 1.10 12

1.3  PyTorch應用場景 16

1.4  動手練習:每日最高溫度預測 17

1.5  練習題 20

第2章  PyTorch與數學基礎 21

2.1  PyTorch中的函數 21

2.1.1  函數基礎知識 21

2.1.2  PyTorch中的主要函數 24

2.2  微分基礎 26

2.2.1  微分及其公式 26

2.2.2  PyTorch自動微分 28

2.3  數理統計基礎 33

2.3.1  數理統計及其指標 33

2.3.2  PyTorch統計函數 38

2.4  矩陣基礎 46

2.4.1  矩陣及其運算 47

2.4.2  PyTorch矩陣運算 49

2.5  動手練習:擬合餘弦函數曲線 54

2.6  練習題 57

第3章  PyTorch的基本概念 58

3.1  張量及其創建 58

3.1.1  張量及其數據類型 58

3.1.2  數組直接創建張量 59

3.1.3  概率分佈創建張量 61

3.2  激活函數 62

3.2.1  激活函數及必要性 62

3.2.2  Sigmoid激活函數 63

3.2.3  Tanh激活函數 64

3.2.4  ReLU激活函數 65

3.2.5  Leakly ReLU激活函數 67

3.2.6  其他類型的激活函數 68

3.3  損失函數 69

3.3.1  損失函數及選取 69

3.3.2  L1範數損失函數 70

3.3.3  均方誤差損失函數 71

3.3.4  交叉熵損失函數 72

3.3.5  餘弦相似度損失 73

3.3.6  其他損失函數 74

3.4  優化器 74

3.4.1  梯度及梯度下降 74

3.4.2  隨機梯度下降算法 76

3.4.3  標準動量優化算法 76

3.4.4  AdaGrad算法 77

3.4.5  RMSProp算法 77

3.4.6  Adam算法 78

3.5  動手練習:PyTorch優化器比較 78

3.6  練習題 82

第4章  PyTorch深度神經網絡 83

4.1  神經網絡概述 83

4.1.1  神經元模型 83

4.1.2  多層感知器 85

4.1.3  前饋神經網絡 87

4.2  捲積神經網絡 87

4.2.1  捲積神經網絡的歷史 88

4.2.2  捲積神經網絡的結構 88

4.2.3  捲積神經網絡的類型 90

4.3  幾種常見的循環神經網絡 93

4.3.1  循環神經網絡 93

4.3.2  長短期記憶網絡 96

4.3.3  門控循環單元 97

4.4  動手練習:股票成交量趨勢預測 98

4.5  練習題 104

第5章  PyTorch數據建模 105

5.1  回歸分析及案例 105

5.1.1  回歸分析簡介 105

5.1.2  回歸分析建模 106

5.1.3  動手練習:住房價格回歸預測 109

5.2  聚類分析及案例 112

5.2.1  聚類分析簡介 113

5.2.2  聚類分析建模 113

5.2.3  動手練習:植物花卉特徵聚類 115

5.3  主成分分析及案例 118

5.3.1  主成分分析簡介 118

5.3.2  主成分分析建模 119

5.3.3  動手練習:地區競爭力指標降維 120

5.4  模型評估與調優 124

5.4.1  模型評估方法 124

5.4.2  模型調優方法 128

5.4.3  動手練習:PyTorch實現交叉驗證 129

5.5  練習題 134

第6章  PyTorch圖像建模 135

6.1  圖像建模概述 135

6.1.1  圖像分類技術 135

6.1.2  圖像識別技術 136

6.1.3  圖像分割技術 137

6.2  動手練習:創建圖像自動分類器 138

6.2.1  加載數據集 138

6.2.2  搭建網絡模型 139

6.2.3  訓練網絡模型 140

6.2.4  應用網絡模型 141

6.3  動手練習:搭建圖像自動識別模型 142

6.3.1  加載數據集 142

6.3.2  搭建與訓練網絡 143

6.3.3  預測圖像數據 144

6.3.4  圖像識別模型的判斷 145

6.4  動手練習:搭建圖像自動分割模型 148

6.4.1  加載數據集 148

6.4.2  搭建網絡模型 149

6.4.3  訓練網絡模型 152

6.4.4  應用網絡模型 153

6.5  練習題 155

第7章  PyTorch文本建模 156

7.1  自然語言處理的幾個模型 156

7.1.1  Word2Vec模型 156

7.1.2  Seq2Seq模型 157

7.1.3  Attention模型 158

7.2  動手練習:Word2Vec提取相似文本 159

7.2.1  加載數據集 159

7.2.2  搭建網絡模型 162

7.2.3  訓練網絡模型 163

7.2.4  應用網絡模型 164

7.3  動手練習:Seq2Seq實現機器翻譯 165

7.3.1  加載數據集 165

7.3.2  搭建網絡模型 168

7.3.3  訓練網絡模型 172

7.3.4  應用網絡模型 174

7.4  動手練習:Attention模型實現文本自動分類 175

7.4.1  加載數據集 175

7.4.2  搭建網絡模型 177

7.4.3  訓練網絡模型 178

7.4.4  應用網絡模型 181

7.5  練習題 181

第8章  PyTorch音頻建模 182

8.1  音頻處理及應用 182

8.1.1  音頻處理技術 182

8.1.2  音頻摘要及應用 183

8.1.3  音頻識別及應用 184

8.1.4  音頻監控及應用 185

8.1.5  場景感知及其應用 186

8.2  音頻特徵提取步驟 187

8.2.1  特徵提取流程 187

8.2.2  音頻預處理 187

8.2.3  傅里葉變換 188

8.2.4  能量譜處理 189

8.2.5  離散餘弦轉換 190

8.3  PyTorch音頻建模 190

8.3.1  加載音頻數據源 190

8.3.2  波形變換的類型 191

8.3.3  繪制波形頻譜圖 192

8.3.4  波形Mu-Law編碼 194

8.3.5  變換前後波形比較 196

8.4  動手練習:音頻相似度分析 196

8.5  練習題 198

第9章  PyTorch模型可視化 199

9.1  Visdom 199

9.1.1  Visdom簡介 199

9.1.2  Visdom可視化操作 201

9.1.3  動手練習:識別手寫數字 214

9.2  TensorBoard 219

9.2.1  TensorBoard簡介 219

9.2.2  TensorBoard基礎操作 221

9.2.3  動手練習:可視化模型參數 229

9.3  Pytorchviz 231

9.3.1  Pytorchviz簡介 231

9.3.2  動手練習:Pytorchviz建模可視化 231

9.4  Netron 233

9.4.1  Netron簡介 233

9.4.2  動手練習:Netron建模可視化 234

9.5  練習題 237

第10章  PyTorch聯邦學習 238

10.1  聯邦學習算法簡介 238

10.1.1  聯邦學習提出背景 238

10.1.2  聯邦學習基本概念 239

10.2  聯邦學習主要類型 239

10.2.1  橫向聯邦學習及其過程 240

10.2.2  縱向聯邦學習及其過程 241

10.2.3  聯邦遷移學習及其過程 242

10.3  聯邦學習研究現狀 242

10.3.1  算法重要研究進展 242

10.3.2  聯邦學習算法優化 243

10.3.3  主要應用前景介紹 244

10.4  動手練習:手寫數字識別 245

10.4.1  讀取手寫數據集 245

10.4.2  訓練與測試模型 246

10.4.3  模型結果輸出 250

10.5  練習題 252

附錄A  Python常用第三方工具包簡介 253

A.1  數據分析類包 253

A.2  數據可視化類包 254

A.3  機器學習類包 255

參考文獻 258