2018年最佳深度学习书单
摘要:?AI人才缺口巨大?如果你想成為AI革命中的一員,那么你就必須要學習深度學習,看看這12本書,它們將成為你的利器!
我相信你應該知道人工智能,尤其是深度學習在過去5年左右取得了不錯的進步。?
深度學習是由少數研究人員開始的一個相對較小的領域,現在已經變得如此主流,以至于我們現在每天使用的應用程序和服務,現在都在使用深度學習來執行不久前難以想象的任務。
但深度學習并不新鮮,從20世紀40年代開始,Warren McCulloch和Walter Pitts就基于數學和算法創建了神經網絡的計算模型。
然而,“深度學習”在不久前才開始流行起來,當時Geoffrey Hinton和Ruslan Salakhutdinov發表了一篇論文,??展示了一個多層神經網絡如何可以一次預先訓練一層。
在2009年,人們發現,使用足夠大的數據集,你實際上并不需要預訓練,并且錯誤率可能因為數據的增加顯著下降。
2012年,Google的Deep Learning系統實現了人類發現貓的能力。
2016年,Google的阿爾法狗打敗了李世石,人工智能大火。
2017年,Google的DeepMind構建了一種名為AlphaGo?zero的算法,該算法可以自行掌握?下圍棋,并取得了不錯的成績。
但這僅僅是一個開始。隨著數據集越來越大,處理器速度越來越快,以便能夠訓練更多的海量數據,深度學習的能力將不斷提高。
所以,如果你想成為這場革命的一部分,現在無疑是最佳的時間進入深度學習領域了。
隨著GPU和大數據集一應俱全,學習深度學習的機會巨大。這樣做將使你能夠訓練機器執行一些令人難以置信的任務,例如面部識別,癌癥檢測,甚至是股市預測。
這就是這些書能派上用場的地方,因為它們可以讓你從零開始學習深度學習。本綜述中的每一本書都有各自的優點,而且每一本書都非常出色。
不過,我已經把它們按我認為是最好的以及我建議學習先后的順序排名。
以下是目前互聯網上的12本最好的深度學習書籍:
1.用Scikit-Learn和TensorFlow進行機器學習
首先,在我看來最好的一本是采用流行的機器學習庫Scikit-Learn和Google的TensorFlow的實踐教程來學習深度學習的書。
作者試圖以一種幾乎任何人都能理解的方式來解釋復雜的話題,這在我看來是一個很大的優勢。
我喜歡“?動手機器學習”,它可以讓你通過機器學習項目從開始到結束。因此,你可以看到如何處理真實數據,如何將數據可視化以獲取洞察力,以及重要的是如何為機器學習算法準備數據。
在本書后面,你將看到著名的MNIST分類器,模型是如何訓練以及一些基本的機器學習分類器,如SVM,決策樹,隨機森林等。
所有這一切都是為了讓你準備好本書的第二部分,內容涉及Tensorflow(包括安裝)以及基本的神經網絡和深度神經網絡。
我認為這本書的結構很好,并以正確的順序介紹了主題,而且書中的想法和具體例子都有很好的解釋。
2.深度學習(Deep Learning)
深度學習,可能是本文中最全面的書。?這本書由該領域的三位專家Ian Goodfellow,Yoshua Bengio和Aaron Courville撰寫。此書也是唯一得到企業家馬斯克認可的書。
這本書被許多人認為是深度學習的圣經,因為它匯集了數年和數年在一本書中學習和專注的研究。
這本書并不是為了專心學習,而是可以更好地用于睡前閱讀,因為它充滿了函數方程式,并以典型的教科書書寫,所以它不會寫成最有趣的風格。
它從一開始就介紹基礎數學,如線性代數,概率論,接著轉向機器學習基礎,最后介紹深度網絡和深度學習。
所以,如果你是一個渴望掌握主題并進入深度學習研究的有抱負的學生,那么這本書肯定會對你有所幫助。這可能是目前關于此主題的最全面的書籍。
3.Deep Learning for the Layman(為外行準備的深度學習)
我把這本書添加進來,因為正如標題所說的的那樣,它是為一般讀者而寫的。
對于外行的深度學習首先介紹深度學習,具體來說,它是什么以及為什么需要它。
本書的下一部分解釋了監督學習,無監督學習和強化學習之間的差異,并介紹了分類和聚類等主題。本書后面將討論人工神經網絡,包括它們是如何構建的以及構成網絡中每一層的部分。最后討論了深度學習,包括構成當今許多計算機視覺算法的一部分的卷積神經網絡。
我將這本書看作是對深度學習的介紹,并了解所涉及的概念。但實際上,我不確定這本書會對你有好處,但如果你想要一本簡單的英文指南,同時又能看到很少炒作的文字,那么這本書可能適合你。
4.建立你自己的神經網絡(Make Your Own Neural Network)
這不是嚴格意義上的“深度學習”,但本書將帶你深入了解神經網絡及其工作原理,幫助你了解深度神經網絡。
在本書中,你可以通過神經網絡的數學指導,完整的理解神經網絡的工作方式。
你不僅可以知道他們如何工作,還可以在Python中實現兩個神經網絡示例,這將有助于鞏固你對該主題的理解。
本書從機器學習的高層概述開始,然后深入研究神經網絡的細節。所涉及的數學并沒有超出大學水平,但包含微積分的介紹,這是以盡可能多的人訪問的方式解釋的。
有兩個部分可以建立自己的神經網絡,第一部分是關于思想和理論的,第二部分是更實際的。
在第二部分中,你將學習Python編程語言,并逐漸建立起自己的能夠識別手寫數字的神經網絡。
作為獎勵,你還將學習如何讓你的神經網絡在Raspberry Pi上運行!
對于那些希望學習基本神經網絡的基本內容的人來說,這本書是一本很棒的書,并且可以成為本次綜述中有關深度學習的其中一本書的重要先決條件。
5.深度學習初學者(Deep Learning for Beginners)
對于初學者的深度學習,這本書并不太重視深度學習的數學,而是使用圖表來幫助你理解深度學習的基本概念和算法。
本書采用與許多其他書籍不同的方法,通過提供深度學習算法的工作原理的簡單示例,然后逐步構建這些示例并逐步引入更復雜的算法部分。
本書的目標受眾非常多樣,從計算機科學新手到數據科學專業人員和導師都希望以最簡單的方式向學生解釋相關主題。
就書本結構而言,你將首先學習人工神經網絡的基礎知識,并了解機器學習和深度學習之間的差異。之后,你將在進入卷積神經網絡(CNN)和其他深度學習算法之前了解有關多層感知器(MLP)的所有信息。
這是一本很好的初學者書籍,可以很好地解釋這些概念,但是如果你正在尋找更實用的東西,那么你應該在本綜述中查找其他書籍。
6.神經網絡和深度學習(Neural Networks and Deep Learning:Deep Learning explained to your granny)
一本通俗解釋深度學習的書,簡單地說,你的奶奶都可以在本書的幫助下理解深度學習!
神經網絡和深度學習:讓你逐步了解神經網絡和深度學習的基礎知識,對于那些想要了解這個主題但不一定想深入了解所有數學背景的人來說,這本書是一本很棒的書。
因此,在簡要介紹機器學習之后,你將學習有監督學習和無監督的學習,然后研究諸如神經元、激活函數和不同類型的網絡體系結構等。
最后,你將學習深度學習的實際工作原理,深度神經網絡的主要類型(包括卷積神經網絡),如何給神經網絡提供記憶,還討論了可用的各種框架和庫。
7.深度學習基礎:設計下一代機器智能算法(Fundamentals of Deep Learning: Designing Next-Generation Machine Intelligence Algorithms)
Nikhil Buduma和Nicholas Locascio撰寫的這本書以及旨在幫助你開始深度學習,但其目標是那些熟悉Python并具有微積分背景的人.
盡管如此,深度學習基礎知識確實涵蓋了機器學習和神經網絡的基礎,并且教會了如何訓練前饋神經網絡。
我認為這本書的亮點之一是它大量使用了Tensorflow,它是Google的深度學習框架,用于構建神經網絡。事實上,書中有一整章專門介紹它,這在我看來是一個巨大的優勢。
就本書的其余部分而言,它涉及一些相當先進的特性,如梯度下降、卷積濾波器、深度強化學習等等。
8.學習TensorFlow:構建深度學習系統的指南(Learning TensorFlow: A Guide to Building Deep Learning Systems)
接下來是一本完全關注Tensorflow的書,本書為Tensorflow提供了一個實用的實踐方法,適用于廣泛的技術人員,從數據科學家到工程師,學生。
通過在Tensorflow中提供一些基本示例,本書開始非常入門,但隨后轉向更深入的主題,如卷積神經網絡等神經網絡體系結構,如何使用文本和序列、TensorBoard可視化、TensorFlow抽象庫以及多線程輸入管道。
學習TensorFlow的終極目標是教你如何通過保存和導出模型以及如何使用Tensorflow服務API,在Tensorflow中構建和部署適用于生產的深度學習系統。
9.用Python深入學習(Deep Learning with Python)
深度學習with python作為標題建議介紹深度學習使用Python編程語言和開源Keras庫,它允許簡單快速的原型設計。
關于這本書的偉大之處在于作者非常有吸引力,這使得本書非常易讀。正因為如此,人工智能和深度學習的一些更具挑戰性的方面的布局簡單易懂。
本書還避免了數學符號,而是專注于通過代碼片段(其中有30多個)解釋概念。
在Python深度學習中,??你將從一開始就學習深度學習,你將學習所有關于圖像分類模型,如何使用深度學習獲取文本和序列,甚至可以學習如何使用神經網絡生成文本和圖像。
本書是為那些具有Python技能的人員編寫的,但你不必在機器學習,Tensorflow或Keras方面有過任何經驗。你也不需要先進的數學背景,只有基礎的高中水平數學應該讓你跟隨和理解核心思想。
10.深度學習:從業者的方法(Deep Learning :A Practitioner’s Approach)
與本綜述中的其他書不同,本書重點介紹Deep Learning For Java(DL4J),它是用于訓練和實施深度神經網絡的Java框架/庫。
現在大多數人工智能研究都是用Python進行的,因為快速原型開發通常更快,但隨著更多組織(其中許多使用Java)擁抱AI,我們可能會看到更多的AI算法轉向Java,如DL4J。
本書首先是關于深度學習的初學者書籍,但如果你已經具備Java或深度學習的經驗,那么你可以直接查看示例。
如果你在深度學習方面沒有經驗,但是有豐富的Java經驗,那么你應該從封面閱讀。如果你根本不了解Java,那么我強烈推薦閱讀其中一本??Java初學者書籍。
通過閱讀本書,你將總體了解機器學習概念,特別關注深度學習。你將了解深度神經網絡是如何從基礎神經網絡發展而來的,你還將了解一些深層網絡架構,如卷積神經網絡和循環神經網絡。
如果你熟悉Hadoop和Spark,那么你將能夠了解如何使用DL4J本身的這些技術。
11.用TensorFlow進行專業深度學習(Pro Deep Learning with TensorFlow)
本書將以親身實踐的方式教給你Tensorflow,讓你能夠從零開始學習深度學習,快速掌握Tensorflow API并學習如何優化各種深度學習網絡架構。
專業深度學習將幫助你開發調整現有神經網絡體系結構所需的數學知識和經驗,甚至創造出可能挑戰最新技術水平的全新體系結構。
本書中的所有代碼都以iPython筆記本的形式提供,因為我過去曾使用過Tensorflow,我發現在開發過程中使用iPython筆記本電腦非常有用。
本書面向數據科學家和機器學習專業人員、軟件開發人員、研究生和開源愛好者,并將為你提供數學基礎和機器學習原理,使你能夠開展研究并將深度學習解決方案部署到生產環境中。
12.用于深度學習的TensorFlow(TensorFlow for Deep Learning)
在撰寫本文時,深度學習的TensorFlow尚未發布,但可用于預購。
本書將通過從頭開始的實例向你介紹深度學習的概念,專門為開發經驗豐富的構建軟件系統的開發人員但沒有深度學習體系結構的經驗設計。
本書將向你展示如何設計可執行對象檢測,翻譯人類語言,分析視頻甚至預測潛在藥物特性的系統!
你將獲得關于Tensorflow API的深入知識,如何在大型數據集上訓練神經網絡以及如何在卷積網絡,循環網絡,LSTM和強化學習中使用TensorFlow。
本書的確需要一些基本線性代數和微積分的背景知識,但這是一本實用的書,旨在教你如何創建可以學習的系統。
總結:
所以這就是它們,這是目前最好的深度學習書籍。人工智能,尤其是深度學習,已經非常火熱了,而且這項技術已經實現了非凡的功能。然而,它仍處于起步階段,許多組織尚未接受它。
但是,這恰恰是為愿意學習深度學習的人提供了時間和機會。
深度學習有能力改變許多行業,并且還有許多尚未被夢想過的創業公司的想法。我覺得我們只是站在技術革命的開端。
作為Java開發人員,我有過深度學習的一些經驗,但我知道很多同事還沒有學習這個主題。所以,趁早抓住機會學習吧。
文章作者:【方向】
原文鏈接
總結
以上是生活随笔為你收集整理的2018年最佳深度学习书单的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Multi Task Learning在
- 下一篇: 阿里云NAS备份服务