TOP
英國出版界指標大獎肯定!A.F. Steadman 獲年度作家,《史坎德》系列帶你踏上熱血奇幻旅程
深度學習框架PyTorch:入門與實踐(第2版)(簡體書)
滿額折

深度學習框架PyTorch:入門與實踐(第2版)(簡體書)

商品資訊

人民幣定價:159 元
定價
:NT$ 954 元
優惠價
87830
海外經銷商無庫存,到貨日平均30天至45天
下單可得紅利積點 :24 點
商品簡介
作者簡介
名人推薦
目次

商品簡介

本書從多維數組Tensor開始,循序漸進地介紹PyTorch各方面的基礎知識,並結合深度學習中的經典應用,帶領讀者從零開始完成幾個經典而有趣的實際項目,包括動漫頭像生成、風格遷移、自動寫詩以及目標檢測。本書還介紹了PyTorch的幾個高級擴展,包括向量化計算、分布式加速以及CUDA擴展。本書既適合深度學習的初學者及第一次接觸PyTorch的研究人員閱讀,也適合有一定PyTorch使用經驗的用戶閱讀,幫助他們建立對PyTorch的基本認識,提高使用PyTorch框架解決實際問題的能力。

作者簡介

王博:北京郵電大學模式識別實驗室在讀碩士研究生,主要研究方向為深度學習與計算機視覺。Python程序員,PyTorch推廣者。作為助教為大一學生講解《人工智能導論》實驗課程,受到同學們的好評。


陳云:多倫多大學在讀計算機博士生,現任waabi.ai研究員。曾在Uber ATG從事無人駕駛研究,獲得CVPR2021最佳論文提名。

名人推薦

本書從多維數組Tensor開始,循序漸進地介紹PyTorch各方面的基礎知識,並結合深度學習中的經典應用,帶領讀者從零開始完成幾個經典而有趣的實際項目,包括動漫頭像生成、風格遷移、自動寫詩以及目標檢測。本書還介紹了PyTorch的幾個高級擴展,包括向量化計算、分布式加速以及CUDA擴展。

為什麼寫這本書
伴隨著人工智能浪潮的興起,越來越多的研究者開始從事深度學習的相關研究。在實際的學習過程中,除了對理論本身進行研究與思考,還需要將自己的改進與優化付諸行動,從而更好地驗證自己的想法。筆者在自身的學習生活以及助教生涯中發現,許多同學空有新奇的想法,但是很難將其實現。因此,有必要結合目前深度學習中最流行
的框架 PyTorch 編寫一本入門與實踐指南。
本書第 1 版於 2018 年出版,當時主流的 PyTorch 版本為 0.3。隨著 PyTorch 的不斷更新迭代,許多函數接口已經被舍棄,同時新增了許多更加實用的功能接口。在本書第 1 版出版後,許多讀者通過各路渠道提出了不少好的建議與意見,綜合這些建議與意見,筆者對本書內容進行了較大程度的修訂,主要修訂和更新了以下幾個方面的內容:
• 增加了 PyTorch 的擴展內容。本書新增了向量化計算、分布式加速以及 CUDA 擴展等高級內容,同時新增了更加豐富的函數方法,幫助讀者編寫更加高效、簡潔的程序。
• 刪除了陳舊的 API。使用 PyTorch 0.3 版本,在編寫與神經網絡相關的代碼時,必須使用 Variable 定義數據,該版本的 Tensor 無法直接進行反向傳播。當前版本的PyTorch 已經優化了 Tensor 物件,可以直接進行反向傳播。
• 修訂了實戰部分的內容,相比第 1 版而言更加實用。例如,實現了訓練更加穩定的生成對抗網絡,實現了支持任意風格的風格遷移網絡,使用更加流行的 Transformer架構進行自動寫詩等。
本書的結構
本書分為四部分:第 1 部分(第 1 章)對深度學習框架進行簡單介紹;第 2 部分(第 2~5 章)介紹 PyTorch 的基礎知識;第 3 部分(第 6~8 章)介紹 PyTorch 的進階擴展;第 4 部分(第 9~13 章)介紹如何使用 PyTorch 進行實戰。其中第 1、2、5、7、10、12、13 章由王博編寫,第 3、4、6、8、9、11 章由周藍翔編寫,陳云在整本書的編寫中提供了主體方向的指導及具體內容的修訂建議。
第 1 章介紹深度學習框架的編年史,並對比介紹目前最為流行的兩個深度學習框架——PyTorch 和 TensorFlow,同時解釋了為什麼要學習 PyTorch。
第 2 章介紹 PyTorch 的安裝,以及相關學習環境的配置。同時,本章以概要的方式介紹了 PyTorch 的主要內容,幫助讀者初步了解 PyTorch。
第 3 章介紹 PyTorch 中的多維數組 Tensor,以及自動微分系統 autograd 的使用,舉例說明如何使用 Tensor 和 autograd 實現線性回歸,並對比它們的不同點。本章對 Tensor的基本結構以及 autograd 的原理進行了分析,幫助讀者更加全面地了解 PyTorch 的底層模塊。
第 4 章介紹 PyTorch 中神經網絡模塊 nn 的基本用法,講解神經網絡中的層、激活函數、損失函數以及優化器等。在本章的最後,帶領讀者使用不到 50 行的代碼實現經典的網絡結構 ResNet。
第 5 章介紹 PyTorch 中的數據處理、預訓練模型、可視化工具以及 GPU 加速等工具,合理地使用這些工具可以提高用戶的編程效率。
第 6 章介紹 PyTorch 中的向量化思想,主要包括廣播法則、基本索引、高級索引以及愛因斯坦操作。在本章的最後,帶領讀者使用向量化思想實現深度學習中的卷積操作、交並比、RoI Align 以及反向 Unique 操作。
第 7 章介紹 PyTorch 中的分布式操作。並行計算和分布式計算可以加速網絡的訓練過程,本章詳細介紹了並行計算和分布式計算的基本原理,同時介紹了如何使用torch.distributed 和 Horovod 進行 PyTorch 的分布式訓練。
第 8 章介紹 PyTorch 中的 CUDA 擴展,帶領讀者使用 CUDA 實現 Sigmoid 函數。同時,本章對 CUDA、NVIDIA-driver、cuDNN 和 Python 之間的關係進行了總結。
第 9 章是承上啟下的一章,目標不是教會讀者使用新函數、新知識,而是結合 Kaggle中的一個經典比賽,實現深度學習中最為簡單的圖像二分類。在實現的過程中,將帶領讀者復習第 1~5 章的知識,並幫助讀者合理地組織程序和代碼,使程序更加易讀且更好維護。同時,本章介紹了如何在 PyTorch 中調試代碼。
第 10 章介紹生成對抗網絡的基本原理,帶領讀者從零開始實現一個動漫頭像生成器,能夠利用生成對抗網絡生成風格多變的動漫頭像。
第 11 章介紹自然語言處理的一些基本知識,並詳細介紹 CharRNN 和 Transformer的基本原理。本章帶領讀者使用 Transformer 實現自動寫詩,該程序可以模仿古人實現詩詞的續寫以及藏頭詩的生成。
第 12 章介紹風格遷移的基本原理,帶領讀者實現支持任意風格遷移的神經網絡。通過該網絡,讀者可以將任意圖像轉換為名畫的風格。
第 13 章介紹目標檢測的基本原理,帶領讀者實現單階段、無錨框、無非極大值抑制的目標檢測算法 CenterNet。CenterNet 的設計思路可以被遷移到三維圖像的目標檢測、人體姿態估計以及目標跟蹤等經典的計算機視覺問題中。

目次

第 1 章 深度學習框架簡介 1
1.1 深度學習框架編年史 1
1.2 PyTorch 與 TensorFlow 的對比 6
1.3 為什麼選擇 PyTorch 8
第 2 章 PyTorch 快速入門 11
2.1 安裝與配置 11
2.1.1 在 Linux 系統下安裝 PyTorch 11
2.1.2 在 Windows 系統下安裝 PyTorch 13
2.1.3 學習工具介紹 14
2.1.4 服務器開發介紹 23
2.2 PyTorch 快速入門指南 23
2.2.1 Tensor 23
2.2.2 autograd:自動微分 29
2.2.3 神經網絡 31
2.2.4 小試牛刀:CIFAR-10 分類 36
2.3 小結 42
第 3 章 Tensor 和 autograd 43

3.1 Tensor 基礎 43

3.1.1 Tensor 的基本操作 43
3.1.2 命名張量 60
3.1.3 Tensor 與 NumPy 61
3.1.4 Tensor 的基本結構 63
3.1.5 變形記:N 種改變 Tensor 形狀的方法 65
3.2 小試牛刀:線性回歸 70
3.3 autograd 和計算圖基礎 73
3.3.1 autograd 的用法:requires_grad 與 backward 73
3.3.2 autograd 的原理:計算圖 76
3.3.3 擴展 autograd:Function 83
3.3.4 小試牛刀:利用 autograd 實現線性回歸 84
3.4 小結 87
第 4 章 神經網絡工具箱 nn 89
4.1 nn.Module 89
4.2 常用的神經網絡層 93
4.2.1 圖像相關層 93
4.2.2 激活函數 97
4.2.3 構建神經網絡 98
4.2.4 循環神經網絡 101
4.2.5 損失函數 102
4.3 nn.functional 103
4.3.1 nn.functional 與 nn.Module 的區別 103
4.3.2 采樣函數 105
4.4 初始化策略 106
4.5 優化器 107
4.6 nn.Module 深入分析 109
4.7 小試牛刀:搭建 ResNet 116
4.8 小結 120
第 5 章 PyTorch 中常用的工具 121
5.1 數據處理 121
5.1.1 Dataset121
5.1.2 DataLoader 128
5.2 預訓練模型 135
5.3 可視化工具 137
5.3.1 TensorBoard 137
5.3.2 Visdom 143
5.4 使用 GPU 加速:CUDA 148
5.5 小結 154
第 6 章 向量化 155
6.1 向量化簡介 155
6.2 廣播法則 156
6.3 索引操作 157
6.3.1 基本索引 157
6.3.2 高級索引 161
6.3.3 einsum / einops 173
6.4 小試牛刀:使用向量化思想解決實際問題 179
6.4.1 Box_IoU 179
6.4.2 RoI Align 181
6.4.3 反向 Unique 185
6.5 小結 185
第 7 章 PyTorch 與 Multi-GPU 187
7.1 單機多卡並行 187
7.1.1 並行原理介紹 187
7.1.2 DataParallel 使用示例 189
7.2 分布式系統 191
7.2.1 分布式系統的基本概念 191
7.2.2 分布式消息傳遞接口 192
7.2.3 小試牛刀:分布式計算實操演練 196
7.3 PyTorch 分布式訓練 198
7.3.1 使用 MPI 進行分布式訓練 198
7.3.2 使用 torch.distributed 進行分布式訓練 201
7.3.3 使用 Horovod 進行分布式訓練 203
7.4 分布式訓練中的注意事項 206
7.4.1 保持同步 206
7.4.2 進程協作 207
7.4.3 常用調試技巧 208
7.5 進階擴展 209
7.6 小結 210
第 8 章 CUDA 擴展與編譯 211
8.1 PyTorch C++ 擴展簡介 211
8.1.1 C++ 擴展 211
8.1.2 CUDA 擴展 216
8.2 CUDA、NVIDIA-driver、cuDNN、PyTorch 之間的關係 222
8.3 小結 225
第 9 章 PyTorch 實戰指南 227
9.1 編程實戰:貓和狗二分類 227
9.1.1 比賽介紹 228
9.1.2 文件組織結構 228
9.1.3 __init__.py 229
9.1.4 數據加載 230
9.1.5 模型定義 232
9.1.6 工具函數 233
9.1.7 配置文件 235
9.1.8 main.py 237
9.1.9 使用 244
9.1.10 爭議 244
9.2 PyTorch 調試指南 246
9.2.1 ipdb 介紹 246
9.2.2 在 PyTorch 中調試 250
9.3 小結 254
第 10 章 AI 插畫師:生成對抗網絡 255
10.1 GAN 原理簡介 255
10.2 使用 GAN 生成動漫人物頭像 259
10.3 實驗結果分析 268
10.4 小結 269
第 11 章 AI 詩人:用 Transformer 寫詩 271
11.1 自然語言處理的基礎知識 271
11.1.1 詞向量 271
11.1.2 RNN 274
11.2 CharRNN 277
11.3 Transformer 278
11.3.1 自注意力模塊 280
11.3.2 位置編碼模塊 281
11.4 使用 PyTorch 實現 Transformer 寫詩 282
11.5 小結 294
第 12 章 AI 藝術家:神經網絡風格遷移 295
12.1 風格遷移原理介紹 296
12.2 使用 PyTorch 實現風格遷移 300
12.3 實驗結果分析 308
12.4 小結 310
第 13 章 CenterNet:目標檢測 311
13.1 目標檢測概述 311
13.2 CenterNet 原理介紹 313
13.3 使用 PyTorch 實現 CenterNet 318
13.3.1 使用 pycocotools 加載 COCO 數據集 318
13.3.2 搭建 CenterNet 網絡 319
13.4 實驗結果分析 328
13.5 小結 330
參考文獻 331

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 830
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區