PyTorch 2.0 深度學習從零開始學

王曉華

  • 出版商: 清華大學
  • 出版日期: 2023-08-01
  • 售價: $414
  • 貴賓價: 9.5$393
  • 語言: 簡體中文
  • 頁數: 280
  • 裝訂: 平裝
  • ISBN: 7302641080
  • ISBN-13: 9787302641087
  • 相關分類: DeepLearning
  • 立即出貨 (庫存 < 4)

  • PyTorch 2.0 深度學習從零開始學-preview-1
  • PyTorch 2.0 深度學習從零開始學-preview-2
  • PyTorch 2.0 深度學習從零開始學-preview-3
PyTorch 2.0 深度學習從零開始學-preview-1

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

商品描述

PyTorch是一個開源的機器學習框架,它提供了動態計算圖的支持,讓用戶能夠自定義和訓練自己的神經網絡,目前是機器學習領域中****的框架之一。本書基於PyTorch 2.0,詳細介紹深度學習的基本理論、算法和應用案例,配套示例源代碼、PPT課件。 《PyTorch?2.0深度學習從零開始學》共分15章,內容包括PyTorch概述、開發環境搭建、基於PyTorch的MNIST分類實戰、深度學習理論基礎、MNIST分類實戰、數據處理與模型可視化、基於PyTorch捲積層的分類實戰、PyTorch數據處理與模型可視化、實戰ResNet捲積網絡模型、有趣的Word Embedding、基於循環神經網絡的中文情感分類實戰、自然語言處理的編碼器、站在巨人肩膀上的預訓練模型BERT、自然語言處理的解碼器、基於PyTorch的強化學習實戰、基於MFCC的語音喚醒實戰、基於PyTorch的人臉識別實戰。 《PyTorch?2.0深度學習從零開始學》適合深度學習初學者、PyTorch初學者、PyTorch深度學習項目開發人員學習,也可作為高等院校或高職高專學校電腦技術、人工智能、智能科學與技術、數據科學與大數據技術等相關專業的教材。

目錄大綱

目    錄

第1章  PyTorch 2.0—一個新的開始 1

1.1  燎原之勢的人工智能 1

1.1.1  從無到有的人工智能 1

1.1.2  深度學習與人工智能 2

1.1.3  應用深度學習解決實際問題 2

1.1.4  深度學習技術的優勢和挑戰 3

1.2  為什麽選擇PyTorch 2.0 4

1.2.1  PyTorch的前世今生 4

1.2.2  更快、更優、更具編譯支持—PyTorch 2.0更好的未來 4

1.2.3  PyTorch 2.0學習路徑—從零基礎到項目實戰 5

1.3  本章小結 6

第2章  Hello PyTorch 2.0—深度學習環境搭建 7

2.1  安裝Python 7

2.1.1  Miniconda的下載與安裝 7

2.1.2  PyCharm的下載與安裝 10

2.1.3  Python代碼小練習:計算Softmax函數 13

2.2  安裝PyTorch 2.0 14

2.2.1  Nvidia 10/20/30/40系列顯卡選擇的GPU版本 15

2.2.2  PyTorch 2.0 GPU Nvidia運行庫的安裝—以CUDA 11.7+cuDNN 8.2.0為例 15

2.2.3  PyTorch 2.0小練習:Hello PyTorch 18

2.3  實戰:基於PyTorch 2.0的圖像去噪 18

2.3.1  MNIST數據集的準備 18

2.3.2  MNIST數據集的特徵和標簽介紹 20

2.3.3  模型的準備和介紹 21

2.3.4  模型的損失函數與優化函數 24

2.3.5  基於深度學習的模型訓練 24

2.4  本章小結 26

第3章  基於PyTorch的MNIST分類實戰 27

3.1  實戰:基於PyTorch的MNIST手寫體分類 27

3.1.1  數據圖像的獲取與標簽的說明 27

3.1.2  模型的準備(多層感知機) 29

3.1.3  損失函數的表示與計算 30

3.1.4  基於PyTorch的手寫體識別的實現 31

3.2  PyTorch 2.0模型結構輸出與可視化 33

3.2.1  查看模型結構和參數信息 33

3.2.2  基於netron庫的PyTorch 2.0模型可視化 34

3.2.3  更多的PyTorch 2.0模型可視化工具 37

3.3  本章小結 38

第4章  深度學習的理論基礎 39

4.1  反向傳播神經網絡的歷史 39

4.2  反向傳播神經網絡兩個基礎算法詳解 43

4.2.1  最小二乘法詳解 43

4.2.2  道士下山的故事—梯度下降算法 45

4.2.3  最小二乘法的梯度下降算法以及Python實現 48

4.3  反饋神經網絡反向傳播算法介紹 54

4.3.1  深度學習基礎 54

4.3.2  鏈式求導法則 55

4.3.3  反饋神經網絡的原理與公式推導 56

4.3.4  反饋神經網絡原理的激活函數 61

4.3.5  反饋神經網絡原理的Python實現 62

4.4  本章小結 66

第5章  基於PyTorch捲積層的MNIST分類實戰 67

5.1  捲積運算的基本概念 68

5.1.1  基本捲積運算示例 68

5.1.2  PyTorch 2.0中捲積函數實現詳解 70

5.1.3  池化運算 72

5.1.4  Softmax激活函數 73

5.1.5  捲積神經網絡的原理 74

5.2  實戰:基於捲積的MNIST手寫體分類 76

5.2.1  數據準備 77

5.2.2  模型設計 77

5.2.3  基於捲積的MNIST分類模型 78

5.3  PyTorch 2.0的深度可分離膨脹捲積詳解 80

5.3.1  深度可分離捲積的定義 81

5.3.2  深度的定義以及不同計算層待訓練參數的比較 82

5.3.3  膨脹捲積詳解 83

5.4  實戰:基於深度可分離膨脹捲積的MNIST手寫體識別 84

5.5  本章小結 86

第6章  PyTorch數據處理與模型可視化 87

6.1  用於自定義數據集的torch.utils.data工具箱使用詳解 88

6.1.1  使用torch.utils.data.Dataset封裝自定義數據集 88

6.1.2  改變數據類型的Dataset類中transform的使用 90

6.1.3  批量輸出數據的DataLoader類詳解 94

6.2  基於tensorboardX的訓練可視化展示 97

6.2.1  tensorboardX的安裝與簡介 97

6.2.2  tensorboardX可視化組件的使用 97

6.2.3  tensorboardX對模型訓練過程的展示 99

6.3  本章小結 102

第7章  從冠軍開始—實戰ResNet 103

7.1  ResNet基礎原理與程序設計基礎 103

7.1.1  ResNet誕生的背景 104

7.1.2  不要重復造輪子—PyTorch 2.0中的模塊工具 106

7.1.3  ResNet殘差模塊的實現 107

7.1.4  ResNet網絡的實現 109

7.2  實戰ResNet:CIFAR-10數據集分類 112

7.2.1  CIFAR-10數據集簡介 112

7.2.2  基於ResNet的CIFAR-10數據集分類 115

7.3  本章小結 117

第8章  梅西-阿根廷+巴西=?—有趣的Word Embedding 118

8.1  文本數據處理 119

8.1.1  數據集介紹和數據清洗 119

8.1.2  停用詞的使用 121

8.1.3  詞向量訓練模型Word2Vec使用介紹 124

8.1.4  文本主題的提取:基於TF-IDF 127

8.1.5  文本主題的提取:基於TextRank 131

8.2  更多的Word Embedding方法—FastText和預訓練詞向量 133

8.2.1  FastText的原理與基礎算法 134

8.2.2  FastText訓練以及與PyTorch 2.0的協同使用 135

8.2.3  使用其他預訓練參數生成PyTorch 2.0詞嵌入矩陣(中文) 140

8.3  針對文本的捲積神經網絡模型簡介—字符捲積 141

8.3.1  字符(非單詞)文本的處理 141

8.3.2  捲積神經網絡文本分類模型的實現—Conv1d(一維捲積) 149

8.4  針對文本的捲積神經網絡模型簡介—詞捲積 151

8.4.1  單詞的文本處理 152

8.4.2  捲積神經網絡文本分類模型的實現—Conv2d(二維捲積) 153

8.5  使用捲積實現文本分類的補充內容 156

8.6  本章小結 159

第9章  基於循環神經網絡的中文情感分類實戰 160

9.1  實戰:循環神經網絡與情感分類 160

9.1.1  基於循環神經網絡的中文情感分類準備 161

9.1.2  基於循環神經網絡的中文情感分類實現 163

9.2  循環神經網絡理論講解 165

9.2.1  什麽是GRU 166

9.2.2  單向不行,那就雙向 167

9.3  本章小結 168

第10章  從0起步—自然語言處理的編碼器 169

10.1  編碼器的核心—註意力模型 170

10.1.1  輸入層—初始詞向量層和位置編碼器層 170

10.1.2  自註意力層(重點) 172

10.1.3  ticks和LayerNormalization 177

10.1.4  多頭自註意力 178

10.2  編碼器的實現 181

10.2.1  前饋層的實現 182

10.2.2  編碼器的實現 183

10.3  實戰編碼器:漢字拼音轉換模型 186

10.3.1  漢字拼音數據集處理 186

10.3.2  漢字拼音轉換模型的確定 188

10.3.3  模型訓練部分的編寫 191

10.4  本章小結 193

第11章  站在巨人肩膀上的預訓練模型BERT 194

11.1  預訓練模型BERT 194

11.1.1  BERT的基本架構與應用 195

11.1.2  BERT預訓練任務與Fine-Tuning 195

11.2  實戰BERT:中文文本分類 198

11.2.1  使用Hugging Face獲取BERT預訓練模型 198

11.2.2  BERT實戰文本分類 200

11.3  更多的預訓練模型 204

11.4  本章小結 206

 

第12章  從1起步—自然語言處理的解碼器 207

12.1  解碼器的核心—註意力模型 207

12.1.1  解碼器的輸入和交互註意力層的掩碼 208

12.1.2  為什麽通過掩碼操作能夠減少乾擾 213

12.1.3  解碼器的輸出(移位訓練方法) 214

12.1.4  解碼器的實現 215

12.2  實戰解碼器:漢字拼音翻譯模型 217

12.2.1  數據集的獲取與處理 218

12.2.2  翻譯模型 220

12.2.3  漢字拼音模型的訓練 230

12.2.4  漢字拼音模型的使用 231

12.3  本章小結 232

第13章  我也可以成為馬斯克—無痛的基於PyTorch的強化學習實戰 233

13.1  實戰:基於強化學習的火箭回收 233

13.1.1  火箭回收技術基本運行環境介紹 234

13.1.2  火箭回收參數介紹 235

13.1.3  基於強化學習的火箭回收實戰 236

13.1.4  強化學習的基本內容 241

13.2  強化學習的基本算法—PPO算法 246

13.2.1  PPO算法簡介 246

13.2.2  函數使用說明 246

13.2.3  一學就會的TD-Error理論介紹 248

13.2.4  基於TD-Error的結果修正 250

13.2.5  對於獎勵的倒序構成的說明 251

13.3  本章小結 252

第14章  創建你自己的小精靈—基於MFCC的語音喚醒實戰 253

14.1  語音識別的理論基礎—MFCC 253

14.2  語音識別的數據獲取與準備 255

14.2.1  Speech Commands簡介與數據說明 255

14.2.2  語音識別編碼器模塊與代碼實現 258

14.3  實戰:PyTorch 2.0語音識別 260

14.3.1  基於PyTorch 2.0的語音識別模型 260

14.3.2  基於PyTorch 2.0的語音識別實現 261

14.4  本章小結 262

第15章  基於PyTorch的人臉識別實戰 263

15.1  人臉識別數據集的建立 263

15.1.1  LFW數據集簡介 264

15.1.2  Dlib庫簡介 264

15.1.3  OpenCV簡介 265

15.1.4  使用Dlib檢測人臉位置 265

15.1.5  使用Dlib和OpenCV建立自己的人臉檢測數據集 268

15.1.6  基於人臉定位製作適配深度學習的人臉識別數據集 270

15.2  實戰:基於深度學習的人臉識別模型 274

15.2.1  人臉識別的基本模型Siamese Model 274

15.2.2  基於PyTorch 2.0的Siamese Model的實現 276

15.2.3  人臉識別的Contrastive Loss詳解與實現 277

15.2.4  基於PyTorch 2.0的人臉識別模型 278

15.3  本章小結 280