PyTorch 2.0深度學習從零開始學

PyTorch 2.0深度學習從零開始學

《PyTorch 2.0深度學習從零開始學》是清華大學出版社出版的一本圖書,作者是王曉華。

基本介紹

  • 中文名:PyTorch 2.0深度學習從零開始學
  • 作者:王曉華
  • 出版時間:2023年8月1日
  • 出版社:清華大學出版社
  • 出版地:北京
  • ISBN:9787302641087
  • 類別:IT
  • 定價:69 元
  • 開本:16 開
  • 裝幀:平裝
作者簡介,內容簡介,圖書目錄,

作者簡介

王曉華,高校計算機專業講師,研究方向為雲計算、大數據與人工智慧。著有《Python機器學習與可視化分析實戰》《谷歌JAX深度學習從零開始學》《Spark 3.0大數據分析與挖掘:基於機器學習》《TensorFlow深度學習套用實踐》《OpenCV+TensorFlow深度學習與計算機視覺實戰》《TensorFlow知識圖譜實戰》《TensorFlow人臉識別實戰》《TensorFlow語音識別實戰》《TensorFlow+Keras自然語言處理實戰》《TensorFlow 2.0卷積神經網路實戰》《Keras實戰:基於TensorFlow2.2的深度學習實踐》《TensorFlow 2.0深度學習從零開始學》《深度學習的數學原理與實現》。

內容簡介

PyTorch是一個開源的機器學習框架,它提供了動態計算圖的支持,讓用戶能夠自定義和訓練自己的神經網路,目前是機器學習領域中非常流程的框架之一。本書基於PyTorch 2.0,詳細介紹深度學習的基本理論、算法和套用案例,配套示例原始碼、PPT課件。
本書共分15章,內容包括PyTorch概述、開發環境搭建、基於PyTorch的MNIST分類實戰、深度學習理論基礎、MNIST分類實戰、數據處理與模型可視化、基於PyTorch卷積層的分類實戰、PyTorch數據處理與模型可視化、實戰ResNet卷積網路模型、有趣的Word Embedding、基於循環神經網路的中文情感分類實戰、自然語言處理的編碼器、站在巨人肩膀上的預訓練模型BERT、自然語言處理的解碼器、基於PyTorch的強化學習實戰、基於MFCC的語音喚醒實戰、基於PyTorch的人臉識別實戰。
本書適合深度學習初學者、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

相關詞條

熱門詞條

聯絡我們