PyTorch版《動手學深度學習》開源了,最美DL書遇上最贊DL框架

2021-01-11 機器之心Pro

機器之心報導

項目作者:ShusenTang

參與:思

想要入門最前沿的深度學習,想要玩最常見的深度學習框架?那就用 PyTorch 版的《動手學深度學習》吧,零基礎也能入門 DL。

李沐等人的開源中文書《動手學深度學習》現在有 PyTorch 版實現了。不論是原書中的示例代碼,還是實戰項目,原來的 MXNet 都可以無縫轉化到 PyTorch 代碼。項目作者在保持原書內容基本不變的情況下,將 MXNet 代碼都轉換為了 PyTorch,想要學習 DL 和 PyTorch 的小夥伴們可以試試啊。

項目地址:https://github.com/ShusenTang/Dive-into-DL-PyTorch

近年來,不論是計算機專業的學生,還是已在科技網際網路行業從業多年的技術人員和其他從業者,人們對深度學習的興趣從未如此高漲。但是,由於語言等因素,中文版本的優秀深度學習教材也是鳳毛麟角。

之前,亞馬遜首席科學家李沐等人曾以電子版的形式在 GitHub 上開源了一本深度學習中文書籍——《動手學深度學習》,這是一本深度學習的入門教程類書籍。其英文版被 UC 伯克利「深度學習導論(STAT 157)」課程採用,2019 年李沐等在教授深度學習課程時也使用了這本教程。

中文版開源地址:https://github.com/d2l-ai/d2l-zh

目前,該項目在 GitHub 上已獲得超過 1.1 萬星,並且中文版電子書還發布了紙質版書籍。不過雖然書籍非常優秀,但還是有一些讀者不太習慣用 Gluon 來寫代碼,畢竟開源項目大部分都是 TF 或 PyTorch 寫的。現在好了,我們可以直接結合書籍內容和 PyTorch 框架,更深入地理解 DL。

項目怎麼樣

項目作者表示,該倉庫主要包含 code 和 docs 兩個文件夾。其中 code 文件夾就是每章相關 jupyter notebook 代碼(基於 PyTorch);docs 文件夾就是 markdown 格式的《動手學深度學習》書中的相關內容,它也是基於 PyTorch 的。

由於原書內容使用的是 MXNet 框架,所以 docs 內容可能與原書略有不同,但是整體內容是一樣的。如下所示為 docs 目錄下的文檔,它一共包含十章,大部分內容已經非常完整了,即 1-8 章和第 10 章,只有第 9 章計算機視覺還在繼續補全中。

其實新項目的內容結構與組織方式和原書是一樣的,上面展示的 docs 目錄主要可以分為三部分:基礎知識(1-3 章)、現代深度學習技術(4-6 章)、計算性能與應用(7-10)。如下所示為全書不同章節的主題與依賴關係,箭頭表示上一章有助於理解下一章。

除了內容,另一大部分就是實戰代碼了,隨書代碼基本都轉化為了 PyTorch,它如同原書一樣也是用 Jupyter Notebook 寫的,這樣更好地展示代碼與文字解釋。因為 GitHub 加載 Jupyter Notebook 挺慢的,所以最好還是下到本地查閱。

最後,《動手學深度學習》與 PyTorch 也是非常好的搭檔,也就是說我們不需要任何機器學習或深度學習背景知識,只需要了解基本數學與 Python 編程就可以了。

從 MXNet 到 PyTorch

這樣看起來可能不太直觀,我們可以通過兩個案例看看原版《動手學深度學習》隨書代碼和 PyTorch 版之間的區別。如果我們抽取使用循環神經網絡構建語言模型的分布代碼,就能看看原版 Gluon 和新版 PyTorch 之間的區別。

如下是原書採用 RNN 建模語言模型的部分代碼(原書 6.5 章),我們主要抽取了模型定義部分:

如上可以改寫為對應的 PyTorch 代碼,它們的風格雖然都非常簡潔,但還是有一些不同的。

相關焦點

  • 重磅| Torch7團隊開源PyTorch:Python優先的深度學習框架
    選自PyTorch.org機器之心編譯參與:吳攀、李澤南、李亞洲Torch7 團隊開源了 PyTorch。據官網介紹,PyTorch 是一個 Python 優先的深度學習框架,能夠在強大的 GPU 加速基礎上實現張量和動態神經網絡。
  • PyTorch官方教程書限時免費!500頁內容帶你上手最流行框架
    書籍地址:https://pytorch.org/assets/deep-learning/Deep-Learning-with-PyTorch.pdfPyTorch 是當前最熱的深度學習框架之一。自 2016 年誕生以來,PyTorch 迅速發展,成為廣受開發者和研究人員喜愛的框架。
  • TensorFlow與PyTorch之爭,哪個框架最適合深度學習
    那麼究竟哪種框架最適宜自己手邊的深度學習項目呢?本文作者從這兩種框架各自的功能效果、優缺點以及安裝、版本更新等諸多方面給出了自己的建議。如果你在讀這篇文章,那麼你可能已經開始了自己的深度學習之旅。如果你對這一領域還不是很熟悉,那麼簡單來說,深度學習使用了「人工神經網絡」,這是一種類似大腦的特殊架構,這個領域的發展目標是開發出能解決真實世界問題的類人計算機。
  • Keras vs PyTorch:誰是第一深度學習框架?
    兩大框架的連結:  Keras:https://github.com/keras-team/keras (https://keras.io/)  PyTorch:https://github.com/pytorch/pytorch  你想學習深度學習嗎?
  • 用PyTorch做深度學習實驗!Facebook新框架Ax和BoTorch雙雙開源
    新智元報導 來源:towardsdatascience編輯:大明【新智元導讀】近日,Facebook開源了兩款基於PyTorch的實驗框架Ax和BoTorch。Ax是一個面向自適應實驗的理解、管理、部署和自動化任務的通用平臺,BoTorch則主要面向貝葉斯優化任務。這兩個框架旨在簡化PyTorch應用中的自適應實驗流程。
  • 迎來PyTorch,告別 Theano,2017 深度學習框架發展大盤點
    深度學習是機器學習中一種基於對數據進行表徵學習的方法,作為當下最熱門的話題,谷歌、Facebook、微軟等巨頭紛紛圍繞深度學習做了一系列研究,一直在支持開源深度學習框架的建設。過去一年間,在這些巨頭的加持下,深度學習框架格局發生了極大改變:新框架橫空出世,舊的框架也逐漸退出歷史舞臺,而框架與框架之間的聯繫也更加緊密,生態更為開放。
  • Facebook 開源 3D 深度學習函數庫 PyTorch3D
    新酷產品第一時間免費試玩,還有眾多優質達人分享獨到生活經驗,快來新浪眾測,體驗各領域最前沿、最有趣、最好玩的產品吧~!下載客戶端還能獲得專享福利哦!原標題:Facebook開源3D深度學習函數庫PyTorch3D來源:開源中國Facebook近日開源了將PyTorch用於3D深度學習的函數庫PyTorch3D,這是一個高度模塊化且經過優化的庫,具備獨有的功能,旨在通過PyTorch簡化3D深度學習。
  • GitHub全面封殺YouTube-dl!這個7.2萬Star熱門開源項目,真的沒救了?
    最近,GitHub封殺了一個熱門開源項目—YouTube-dl相信很多程式設計師,或者經常使用YouTube網站的朋友,對它應該非常熟悉。在YouTube-dl之前,該協會從未遭受過如此大的抗議。2020年10月23日,RIAA正式向Github發出版權訴訟郵件,要求其立刻撤銷開源YouTube-dl存儲庫以及幾個分支。
  • GitHub CEO霸氣回應:把youtube-dl還給開發者!
    【新智元導讀】視頻下載神器youtube-dl上個月被指控違反了DMCA《千年數字版權法》,遭到GitHub官方的下架,但是11月16日,GitHub CEO宣布已經成功恢復!更神奇的是,該項目最近逆勢漲星數千,難道也是套路?前一陣子,開源視頻下載神器youtube-dl遭下架,惹了眾怒。
  • 潮科技行業入門指南 | 深度學習理論與實戰:提高篇(13)——Faster...
    編者按:本文節選自《深度學習理論與實戰:提高篇 》一書,原文連結http://fancyerii.github.io/2019/03/14/dl-book/。安裝數據準備訓練測試預測Faster R-CNN有很多開源的版本
  • 史上最強音視頻下載神器youtube-dl回歸,GitHub75k星
    youtube-dl:廣受歡迎的下載神器youtube-dl 已經成為 GitHub 上最受歡迎的項目之一,擁有 7.5萬星,人氣介於 Node.js 及 Kubernetes 之間。2006發布,一開始只能從YouTube下載視頻和音頻,後來經過創作人員的不斷完善,下載支持的站點達到了1000多個,成為最受歡迎的下載神器。
  • 瀏覽器中實現深度學習?有人分析了7個基於JS語言的DL框架
    具體而言,作者重點分析了 7 個最近出現的基於JavaScript 的 DL 框架,並對比了具體框架支持哪些 DL 任務。深度學習(Deep Learning,DL)是一類利用多層非線性處理單元(稱為神經元)進行特徵提取和轉換的機器學習算法。每個連續層使用前一層的輸出作為輸入。近十年來,深度學習技術的進步極大地促進了人工智慧的發展。
  • PyTorch官方出品了一本深度學習書,免費提供給開發者
    根據出版商Manning出版社的介紹,這本書的核心,是教你如何使用Python 和 PyTorch 實現深度學習算法。所以出版商介紹稱,想要更好的消化這本書,需要對Python知識和基本線性代數有了解,對深度學習有一些理解更好,但並不需要你具備使用PyTorch或其他深度學習框架的經驗。
  • 深度學習框架哪家強?國產框架OneFlow做了一份測評報告
    機器之心報導機器之心編輯部近日,國產深度學習框架 OneFlow 發布了人工智慧方向深度學習領域的 DLPerf 測評報告。數據顯示,OneFlow 在 4 機 32 卡下的 ResNet50-v1.5 和 BERT-base 兩個模型中,無論是 Float32 類型還是自動混合精度,在同樣的算法和硬體條件下,吞吐率及加速比均優於其他深度學習框架。
  • 教程| 斯坦福CS231n 2017最新課程:李飛飛詳解深度學習的框架實現...
    今天機器之心給大家分享的是其中的第八講——深度學習軟體(Deep Learning Software)。主要內容有:CPU 和 GPU 的對比;深度學習框架簡介;TensorFlow 和 PyTorch 的實例;以及各種深度學習框架的比較。
  • 瀏覽器中實現深度學習?有人分析了7個基於JS語言的DL框架,發現還有...
    具體而言,作者重點分析了 7 個最近出現的基於JavaScript 的 DL 框架,並對比了具體框架支持哪些 DL 任務。深度學習(Deep Learning,DL)是一類利用多層非線性處理單元(稱為神經元)進行特徵提取和轉換的機器學習算法。每個連續層使用前一層的輸出作為輸入。近十年來,深度學習技術的進步極大地促進了人工智慧的發展。
  • 2020年成國內深度學習框架開源元年 曠視科技開源天元加速AI落地與...
    人工智慧時代,開源作為算法創新與迭代的重要驅動力,在深度學習領域發揮著至關重要的作用。全球諮詢機構IDC《中國深度學習平臺市場份額調研》指出,在AI技術使用方面,接受調研的企業和開發者中,86.2%選擇使用開源的深度學習框架。
  • PyTorch 深度學習官方入門中文教程 pdf 下載|PyTorchChina
    PyTorch是一個基於Torch的Python開源機器學習庫,用於自然語言處理等應用程式。它主要由Facebookd的人工智慧小組開發,不僅能夠 實現強大的GPU加速,同時還支持動態神經網絡,這一點是現在很多主流框架如TensorFlow都不支持的。
  • 《PyTorch中文手冊》來了
    PyTorch 是一個深度學習框架,旨在實現簡單靈活的實驗。自 2017 年初首次推出,PyTorch 很快成為 AI 研究人員的熱門選擇並受到推崇。PyTorch 1.0 增加了一系列強大的新功能,大有趕超深度學習框架老大哥 TensorFlow 之勢。因此,學習 PyTorch 大有裨益!
  • 還不會使用PyTorch框架進行深度學習的小夥伴,看過來
    選自heartbeat.fritz.ai作者:Derrick Mwiti機器之心編譯參與:Geek AI、王淑婷這是一篇關於使用 PyTorch 框架進行深度學習的教程,讀完以後你可以輕鬆地將該框架應用於深度學習模型。