想要入門最前沿的深度學習,想要玩最常見的深度學習框架?那就用 PyTorch 版的《動手學深度學習》吧,零基礎(chǔ)也能入門 DL。
李沐等人的開源中文書《動手學深度學習》現(xiàn)在有 PyTorch 版實現(xiàn)了。不論是原書中的示例代碼,還是實戰(zhàn)項目,原來的 MXNet 都可以無縫轉(zhuǎn)化到 PyTorch 代碼。項目作者在保持原書內(nèi)容基本不變的情況下,將 MXNet 代碼都轉(zhuǎn)換為了 PyTorch,想要學習 DL 和 PyTorch 的小伙伴們可以試試啊。
項目地址:https://github.com/ShusenTang/Dive-into-DL-PyTorch
近年來,不論是計算機專業(yè)的學生,還是已在科技互聯(lián)網(wǎng)行業(yè)從業(yè)多年的技術(shù)人員和其他從業(yè)者,人們對深度學習的興趣從未如此高漲。但是,由于語言等因素,中文版本的優(yōu)秀深度學習教材也是鳳毛麟角。
之前,亞馬遜首席科學家李沐等人曾以電子版的形式在 GitHub 上開源了一本深度學習中文書籍——《動手學深度學習》,這是一本深度學習的入門教程類書籍。其英文版被 UC 伯克利「深度學習導論(STAT 157)」課程采用,2019 年李沐等在教授深度學習課程時也使用了這本教程。
中文版開源地址:https://github.com/d2l-ai/d2l-zh
目前,該項目在 GitHub 上已獲得超過 1.1 萬星,并且中文版電子書還發(fā)布了紙質(zhì)版書籍。不過雖然書籍非常優(yōu)秀,但還是有一些讀者不太習慣用 Gluon 來寫代碼,畢竟開源項目大部分都是 TF 或 PyTorch 寫的?,F(xiàn)在好了,我們可以直接結(jié)合書籍內(nèi)容和 PyTorch 框架,更深入地理解 DL。
項目怎么樣
項目作者表示,該倉庫主要包含 code 和 docs 兩個文件夾。其中 code 文件夾就是每章相關(guān) jupyter notebook 代碼(基于 PyTorch);docs 文件夾就是 markdown 格式的《動手學深度學習》書中的相關(guān)內(nèi)容,它也是基于 PyTorch 的。
由于原書內(nèi)容使用的是 MXNet 框架,所以 docs 內(nèi)容可能與原書略有不同,但是整體內(nèi)容是一樣的。如下所示為 docs 目錄下的文檔,它一共包含十章,大部分內(nèi)容已經(jīng)非常完整了,即 1-8 章和第 10 章,只有第 9 章計算機視覺還在繼續(xù)補全中。
其實新項目的內(nèi)容結(jié)構(gòu)與組織方式和原書是一樣的,上面展示的 docs 目錄主要可以分為三部分:基礎(chǔ)知識(1-3 章)、現(xiàn)代深度學習技術(shù)(4-6 章)、計算性能與應用(7-10)。如下所示為全書不同章節(jié)的主題與依賴關(guān)系,箭頭表示上一章有助于理解下一章。
除了內(nèi)容,另一大部分就是實戰(zhàn)代碼了,隨書代碼基本都轉(zhuǎn)化為了 PyTorch,它如同原書一樣也是用 Jupyter Notebook 寫的,這樣更好地展示代碼與文字解釋。因為 GitHub 加載 Jupyter Notebook 挺慢的,所以最好還是下到本地查閱。
最后,《動手學深度學習》與 PyTorch 也是非常好的搭檔,也就是說我們不需要任何機器學習或深度學習背景知識,只需要了解基本數(shù)學與 Python 編程就可以了。
從 MXNet 到 PyTorch
這樣看起來可能不太直觀,我們可以通過兩個案例看看原版《動手學深度學習》隨書代碼和 PyTorch 版之間的區(qū)別。如果我們抽取使用循環(huán)神經(jīng)網(wǎng)絡構(gòu)建語言模型的分布代碼,就能看看原版 Gluon 和新版 PyTorch 之間的區(qū)別。
如下是原書采用 RNN 建模語言模型的部分代碼(原書 6.5 章),我們主要抽取了模型定義部分:
如上可以改寫為對應的 PyTorch 代碼,它們的風格雖然都非常簡潔,但還是有一些不同的。
-
代碼
+關(guān)注
關(guān)注
30文章
4788瀏覽量
68616 -
深度學習
+關(guān)注
關(guān)注
73文章
5503瀏覽量
121169 -
pytorch
+關(guān)注
關(guān)注
2文章
808瀏覽量
13226
發(fā)布評論請先 登錄
相關(guān)推薦
評論