書單 | 深度學習修煉祕籍 (文末贈書)

七月線上實驗室發表於2018-04-09

深度學習是如今最火熱的技術之一,但是對於有心入門卻不得其法的同學來說,選擇適合自己的書籍至關重要。


小七特意為大家精選了 7 本深度學習相關的書籍。這些書籍中,有些非常注重理論知識,主要關注神經網路和深度學習背後的數學和相關假設;有些則注重實戰,通過程式碼而不是理論來講解深度學習。下面列出每本書籍的核心內容以及目標受眾,以幫助大家選擇最適合自己的深度學習教材。


1.《深度學習》(Deep Learning)

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

出自 Goodfellow、Bengio 和 Courville 三位大牛之手的《深度學習》(Deep Learning)不可不提。本書旨在成為一本教科書,用於在大學課堂上教授關於深度學習的基本原理和理論。Goodfellow 等人的《深度學習》完全是理論性的書籍,而且沒有程式碼,因此適用物件為學術界的讀者。

640?wxfrom=5&wx_lazy=1

這本書首先討論了機器學習的基礎知識,從學術角度講解了有效研究深度學習所需的應用數學(線性代數,概率和資訊理論等)知識;在此基礎上,本書進一步講解了深度學習演算法和技術的相關知識;在最後一部分,《深度學習》這本書主要講解了深度學習領域當前的研究趨勢以及正在發生的變化。


這本也是今天要送出的書籍喲!

本書適用人群:

1. 喜歡理論學習

2. 喜歡學術寫作

3. 本科生、研究生、教授等學術界的人員


2、Neural networks and Deep Learning

640?wx_fmt=png


第二本以理論為主的深度學習圖書是 Michael Nielsen 撰寫的《神經網路和深度學習》(Neural networks and Deep Learning)。


本書其實還包含了 7 段由 Python 編寫的程式碼,包括各種基本的機器學習演算法,神經網路或深度學習技術,所有都是基於 MNIST 資料集上實現的。雖然這些程式碼的實現手段可能並不是最好的,但它們可以幫助讀者理解書中的一些理論概念。


如果你對機器學習和深度學習不熟悉,但渴望深入瞭解其理論方法,Nielsen 的書應該是你的首選。這本書比 Goodfellow 的《深度學習》要更容易閱讀,而 Nielsen 的寫作風格加上一些的程式碼片段使得知識更容易融會貫通。


本書適用人群:1. 正在尋找一本基於理論的深度學習書籍2. 機器學習/深度學習的新手,但希望從更學術的角度來看待這一領域


3、Deep Learning with Python

640?wx_fmt=jpeg

谷歌 AI 研究員、Keras 的作者 Francois Chollet 在 2017 年 10 月出版了他自己的書 Deep Learning with Python 。


在該書中,Francois 從一個從業者的角度來講解深度學習方法。書中包括了一些理論知識和相應的討論,但是每一段理論都會配合基於 Keras 的實現方式。


這本書我最喜歡的一個地方是 Francois 列舉了將深度學習應用於計算機視覺、文字和序列的例子,使這本書為那些希望在瞭解機器學習和深度學習的同時學習 Keras 的讀者,提供了一個不錯的選擇。


我發現 Francois 的文字清晰易讀,他對深度學習趨勢和歷史的評論非常富有洞察力。需要特別指出的是,這本書並不是一本深入深度學習的書。相反,它的主要用途是通過 Keras 來教會你深度學習基礎和不同領域的深度學習實戰案例。


本書適用人群:1. 對 Keras 感興趣2. 習慣通過動手來學習3. 希望快速瞭解如何將深度學習應用於各個領域,如計算機視覺、序列學習和文字等


4、Hands-On Machine Learning with Scikit-Learn and TensorFlow

640?wx_fmt=jpeg

當我第一次拿到 Aurélien Géron 的 Hands-On Machine Learning with Scikit-Learn and TensorFlow 這本書時,如果不是標題中包含了“TensorFlow”這個詞,我可能僅認為它只是關於機器學習的基本介紹。


幸運的是,這本書其實非常棒,而且是被標題耽誤的一本好書。


Géron 的深度學習書籍分為兩部分:第一部分介紹支援向量機(SVM),決策樹,隨機森林,整合方法和無監督學習演算法等基本機器學習演算法,而且還包括了每個演算法的 Scikit-learn 程式碼示例;第二部分是基於 TensorFlow 庫講解了基本的深度學習內容。


本書適用人群:機器學習的新手,並希望從程式碼示例來學習核心演算法對流行的 scikit-learn 機器學習庫感興趣想要快速學習如何使用 TensorFlow 庫來完成基本的深度學習任務


5、TensorFlow Deep Learning Cookbook

640?wx_fmt=png

如果你喜歡“食譜”那樣的教學風格(理論少、程式碼多),我會建議你看看 Gulli 和 Kapoor 撰寫的 TensorFlow Deep Learning Cookbook 這本書。


這是一本非常具有實用性的深度學習手冊,而且對於 TensorFlow 使用者來說也是一個很好的參考。再次說明,這本書並不是要教深度學習,而是告訴你如何在深度學習的背景下使用 TensorFlow庫。


當然,讀完這本書,你一定會學習到新的深度學習概念、技術和演算法。但是這本書採用了嚴格的類似於食譜的寫作手法:大量的程式碼和相應的解釋。


我認為這本書的唯一不足之處是程式碼片段中存在一些拼寫錯誤。當你閱讀這本書時,請注意這一點。


本書適用人群:1. 已經學習了深度學習的基礎知識2. 對 TensorFlow 感興趣3. 喜歡“食譜”這種文風,也就是用程式碼來解決特定問題,但不討論基礎理論


6、Deep Learning: A Practitioners Approach

640?wx_fmt=jpeg

雖然大多數包含程式碼示例的深度學習書籍都使用 Python,但 Adam Gibson 和 Josh Patterson 撰寫的 Deep Learning:A Practitioners Approach 一書卻使用 Java 和 DL4J 庫。


為什麼選擇 Java?


Java 是大型企業中最常用的程式語言,特別是在企業級的應用上。


Gibson 和 Patterson 在前幾章討論了基本的機器學習和深度學習基礎知識,剩下的部分包括了使用 DL4J 庫,基於 Java 的深度學習程式碼示例。


本書適用人群:1. 需要使用 Java 程式語言來進行特定的開發2. 為主要使用 Java 的大型公司或企業工作3. 想了解如何使用 DL4J 庫


7、Deep Learning for Computer Vision with Python

640?wx_fmt=png

這本書已經成為當今最好的深度學習和計算機視覺資源之一。谷歌AI的研究員、Keras 的作者 Francois Chollet 對這本新書是這樣評價的:


“這本書在計算機視覺深度學習實踐方面講解得非常深入,而且讀起來也通俗易懂:講解不僅清晰而且非常詳細。你會發現許多實用的技巧和建議,這些在其他書籍或大學課程中都很少提到。無論你是從業人員還是初學者,我強烈推薦這本書。—— Francois Chollet”


這本書裡面有很多的細節講解,並有大量的詳細例子,涵蓋了各種方法與如何在實際問題使用這些方法來解決問題。


如果你有興趣學習深度學習在計算機視覺上的應用(影象分類、物體檢測、影象理解等),那麼這本書將非常適合你。


在這本書裡面,你會:

  • 理論和實踐相結合的方式來學習機器學習和深度學習的基礎;

  • 學習先進的深度學習技術,包括物件檢測,多GPU訓練,遷移學習和生成對抗網路(GAN)等;

  • 復現 ResNet、SqueezeNet、VGGNet 等在 ImageNet 資料集上的結果;


此外,對於每個理論深度學習概念,你都可以在這本書中找到相關的 Python實 現來幫助您鞏固知識。


本書適用人群:1. 對深度學習在計算機視覺和影象理解方面的應用特別有興趣2. 想在理論和實踐之間取得很好的平衡需要一本深度學習書籍,使得看似複雜的演算法和技巧易於掌握和理解3. 需要一本清晰易懂的書,引導你掌握深度學習

粉絲福利

即日起至4月13日(本週五)18:00,在留言區留下你對深度學習的理解或見解,點贊數最高的 1 位小夥伴,將免費獲得小七送出的《深度學習》中文版圖書(沒錯,就是今天推薦的第一本書)。


另,七月線上【深度學習專案班】4月14日開課,一站式掌握場景、資料、建模與優化!而且課程特提供畢業考試且1v1批改(考試優秀者內推BAT等各大公司),佈置作業且解答作業,輔助簡歷優化、專案包裝(本課程的近10個專案在實踐完成後都可以寫在簡歷裡)。

掃描下方二維碼,助力跳槽漲薪!

640?wx_fmt=png

《深度學習專案班》大綱

預習階段 邁入深度學習 開啟DL大門

神經網路初步

知識點1:全連線神經網路

知識點2:反向傳播演算法與權重優化

知識點3:訓練注意點

實戰專案:構建神經網路解決非線性切分問題

卷積神經網路與計算機視覺

知識點1:卷積神經網路結構分析

知識點2:過擬合與隨機失活

知識點3:卷積神經網路理解

實戰專案:工業界常用網路結構與搭建


第一階段 影象分類和影象搜尋實戰

第一課 深度卷積神經網路基礎(原理、調參、Kaggle比賽實踐)  

知識點1:神經網路和深度學習調參詳解

知識點2:卷積神經網路原理

實戰專案:百行程式碼搞定Kaggle影象分類Top-5%

第二課 深度學習在大規模影象搜尋中的實際應用

知識點1:影象搜尋技術的過去、現在和未來

知識點2:深度學習在影象搜尋中的應用

知識點3:深度排序技術詳解

實戰專案:基於深度排序技術的大規模影象搜尋演算法實戰


第二階段 自然語言處理與聊天機器人實戰

第三課 自然語言處理從入門到進階

知識點1:自然語言處理基礎知識:BoW、TFIDF等

知識點2:自然語言處理進階:CNN、GAN等

實戰專案:自然語言處理應用實戰

第四課 聊天機器人實戰演練

知識點1:聊天機器人基礎與綜述

知識點2:深度學習的方法制作聊天機器人

實戰專案:更猛的機器人:VQA


第三階段 CTR預估實戰

第五課 從FM到DNN到wide&deep model

知識點1:CTR預估背景簡述

知識點2:tensorflow簡單回顧

實戰專案:tensorflow實現LR與FM的CTR預估

實戰專案:tensorflow實現的DNN與Wide&Deep Model

第六課 FNN CCPM PNN與圖片混合點選率預估

知識點1:Factorization-Machine based Neural Network FNN

知識點2:卷積點選率預測模型 CCPM

知識點3:Product-based Neural Networks 基於內/外積的神經網路

實戰專案:圖片和業務資料混合的CTR預估


第四階段 推薦系統實戰

第七課 從矩陣分解到FM based NN

知識點1:Biased Matrix Factorization

實戰專案:基於FM的深度神經網路

第八課 從CCF神經網路到Deep Auto-encoder for CF

知識點1:Content-Boosted協同過濾神經網路

實戰專案:深度自編碼網路協同過濾

相關文章