AI前線導讀:近日,由MXNet創始人李沐大神、Aston Zhang等人所著的交互式深度學習書籍《動手學深度學習》推出了在線預覽版,面向在校學生、工程師和研究人員,旨在幫助讀者從入門到深入、動手學習深度學習,即使是零基礎的讀者也完全適用。
首先奉上資料傳送門:
-
在線書地址:
https://zh.gluon.ai/toc.html
這本書是亞馬遜 MXNet 零基礎深度學習課程的重要組成部分,爲此,亞馬遜團隊開發了MXNet的新前端Gluon,課程內容推薦使用Gluon 進行開發。
和吳恩達的深度學習課程有何區別?
李沐表示,開設這門課程的初衷,是看到了目前剛開始接觸機器學習的學習者沒有很完善的參考資料的現狀,這門課程可以幫助他們從深度學習入門到最新最前沿的算法,從0開始通過交互式的代碼來講解每個算法和概念。爲此,李沐團隊做了四件事:
- Eric和Sheng開發了MXNet的新前端Gluon,詳細可以參見Eric的這篇介紹。這個前端帶來跟Python更一致的便利的編程環境,不管是debug還是在交互上,都比TensorFlow之類通過計算圖編程的框架更適合學習深度學習。
- Zack、Alex、Aston和很多小夥伴一起寫了一系列的notebook來講解各個模型。Zack從一個外行(他是專業音樂人)和老師(CMU計算機教授)的角度,從0開始講解和實現各個算法。
- 我們同時將notebook翻譯成中文,而且做了很多改進(我個人認爲中文版質量更高),並建立中文社區discuss.gluon.ai方便大家來討論和學習。
- 我們聯合將門在鬥魚上直播一系列課程,深入講解各個教程。
摘錄自李沐知乎
李沐表示,與吳恩達的深度學習課程相比,本課程主要有三個不同點:
- 我們不僅介紹深度學習模型,而且提供簡單易懂的代碼實現。我們不是通過幻燈片來講解,而是通過解讀代碼,實際動手調參數和跑實驗來學習。
- 我們使用中文。不管是教材、直播,還是論壇。(雖然在美國呆了5,6年了,事實上我仍然對一邊聽懂各式口音的英文一邊理解內容很費力。)
- Andrew課目前免費版只能看視頻,而我們不僅僅直播教學,而且提供練習題,提供大家交流的論壇,並鼓勵大家在github上參與到課程的改進中來。希望能與大家有更近距離的交互。
摘錄自李沐知乎
貢獻者
該書的作者包括亞馬遜應用科學家,美國伊利諾伊大學香檳分校計算機科學博士阿斯頓·張;亞馬遜首席科學家,美國卡內基梅隆大學計算機系博士李沐;亞馬遜應用科學家,美國卡內基梅隆大學助理教授,加州大學聖迭戈分校計算機科學博士扎卡里 C. 立頓;亞馬遜機器學習總監,德國柏林工業大學計算機科學博士亞歷山大 J. 斯莫拉,以及來自社區的100多位貢獻者。
如果你願意加入社區併成爲本書的貢獻者,你將會獲得贈書以及我們誠摯的謝意。
以Jupyter記事本形式運行
該書以Jupyter記事本的形式呈現,每一小節都是可以運行的Jupyter記事本,讀者可以自由修改代碼和超參數來獲取及時反饋,從而積累深度學習的實戰經驗,並提高學習效率。
本書還有活躍的社區支持,可以通過每個章節最後的鏈接來同社區的數千名小夥伴一起討論學習。
公式+圖示+代碼
本書不僅結合文字+公式+圖示來闡明深度學習裏常用的模型和算法,還提供代碼演示如何從零開始實現它們,並使用真實數據來提供一個交互式的學習體驗。
這三種展示方法能相互補充。很多算法可以通過圖示加深對結構的理解,而如上圖所示的 LSTM 等算法卻需要公式才能理解具體結構。此外,不論是表達式還是圖例,都無法包含完整的細節,很多具體細節需要有代碼才能展示出來。
結合算法與實踐
本書將從頭開始解釋深度學習和機器學習的各個概念,讀者無需具備這些背景知識。課程目標是讓讀者在完成學習後不但能從概念上理解深度學習,而且能將它應用到實際項目和研究之中。
詳細目錄
引言
- 前言
- 深度學習簡介
- 如何使用本書
預備知識
- 獲取和運行本書代碼
- 數據操作
- 自動求梯度
- 查閱 MXNet 文檔
深度學習基礎
- 線性迴歸
- 線性迴歸的從零開始實現
- 線性迴歸的 Gluon 實現
- Softmax 迴歸
- 圖像分類數據集(Fashion-MNIST)
- Softmax 迴歸的從零開始實現
- Softmax 迴歸的 Gluon 實現
- 多層感知機
- 多層感知機的從零開始實現
- 多層感知機的 Gluon 實現
- 模型選擇、欠擬合和過擬合
- 權重衰減
- 丟棄法
- 正向傳播、反向傳播和計算圖
- 數值穩定性和模型初始化
- 實戰 Kaggle 比賽:房價預測
深度學習計算
- 模型構造
- 模型參數的訪問、初始化和共享
- 模型參數的延後初始化
- 自定義層
- 讀取和存儲
- GPU 計算
卷積神經網絡
- 二維卷積層
- 填充和步幅
- 多輸入通道和多輸出通道
- 池化層
- 卷積神經網絡(LeNet)
- 深度卷積神經網絡(AlexNet)
- 使用重複元素的網絡(VGG)
- 網絡中的網絡(NiN)
- 含並行連結的網絡(GoogLeNet)
- 批量歸一化
- 殘差網絡(ResNet)
- 稠密連接網絡(DenseNet)
循環神經網絡
- 語言模型
- 循環神經網絡
- 語言模型數據集(周杰倫專輯歌詞)
- 循環神經網絡的從零開始實現
- 循環神經網絡的 Gluon 實現
- 通過時間反向傳播
- 門控循環單元(GRU)
- 長短期記憶(LSTM)
- 深度循環神經網絡
- 雙向循環神經網絡
優化算法
- 優化與深度學習
- 梯度下降和隨機梯度下降
- 小批量隨機梯度下降
- 動量法
- Adagrad
- RMSProp
- Adadelta
- Adam
計算性能
- 命令式和符號式混合編程
- 異步計算
- 自動並行計算
- 多 GPU 計算
- 多 GPU 計算的 Gluon 實現
計算機視覺
- 圖像增廣
- 微調
- 目標檢測和邊界框
- 錨框
- 多尺度目標檢測
- 目標檢測數據集(皮卡丘)
- 單發多框檢測(SSD)
- 區域卷積神經網絡(R-CNN)系列
- 語義分割和數據集
- 全卷積網絡(FCN)
- 樣式遷移
- 實戰 Kaggle 比賽:圖像分類(CIFAR-10)
- 實戰 Kaggle 比賽:狗的品種識別 (ImageNet Dogs)
自然語言處理
- 詞嵌入(word2vec)
- 近似訓練
- Word2vec 的實現
- 子詞嵌入(fastText)
- 全局向量的詞嵌入(GloVe)
- 求近義詞和類比詞
- 文本情感分類:使用循環神經網絡
- 文本情感分類:使用卷積神經網絡(textCNN)
- 編碼器—解碼器(seq2seq)
- 束搜索
- 注意力機制
- 機器翻譯
附錄
- 主要符號一覽
- 數學基礎
- 使用 Jupyter 筆記本
- 使用 AWS 運行代碼
- GPU 購買指南
- 如何爲本書貢獻
- gluonbook 包索引
在本書上線之前,李沐等人還推出了《動手學深度學習》系列視頻,這門課程的第一季已經於今年 2 月份結束,共 19 課。李沐博士對此係列視頻進行了整理,有需求的同學可通過這裏的課程視頻學習。