作者:Pranav Dar ;翻譯:季洋 ;校對:張玲
本文約6000字,建議閱讀10分鐘。
本文為你介紹了27本有關資料科學方面的精彩書籍。
引言
每個人都有自己的學習方法,而助我闖入資料科學領域的則是書籍。書籍將知識世界壓縮成幾百頁,沒有什麼能像它一樣開啟你的思維,我從未在其他任何學習方法中發現這種魔力和魅力。
“如果你只是閱讀人人都在閱讀的書,你可能只能想到人人都在想的東西。”
—— 村上春樹
靠自己來學習資料科學可能是一項非常艱巨的任務!現在有許多方法來學習 – 網路公開課、研討會、學位、文憑和文章,諸如此類。但是,系統化安排它們,致力於形成一條結構化的學習路線,以成為一名資料科學家,是至關重要的。
一條結構化的學習路線:https://trainings.analyticsvidhya.com/courses/coursev1:AnalyticsVidhya+LPDS2019+LPDS2019_T1/info?utm_source=booksarticle&utm;_medium=blog
成為一名資料科學家,是:
https://trainings.analyticsvidhya.com/courses/coursev1:AnalyticsVidhya+LPDS2019+LPDS2019_T1/info?utm_source=booksarticle&utm;_medium=blog
關於資料科學的書,已經有了成百上千本,你該如何選擇開始之處呢?怎麼選擇適合學習某種技術或領域的書呢?儘管對於這個問題沒有一刀切的答案,我已經竭盡所能,精減書單,得到一份只有27本的簡短書單。
將這些書分成不同的領域,以易於你理解。
-
統計學書籍
-
機率學書籍
-
機器學習書籍
-
深度學習書籍
-
自然語言處理(NLP)書籍
-
計算機視覺書籍
-
人工智慧書籍
-
工具/語言書籍
-
Python
-
R
福利:
在這篇文章底部,你將會發現一個極好的說明圖表,涵蓋上述提及的每一本書。你可以將它作為一個“待讀”書單,當你讀完一本書時,可從單子上將它們一一劃去!你也可以下載這個圖表的一個高解析度版本,打印出來非常完美,因為它是PDF格式。
好了,讓我們現在就進入正題。
這個圖表的一個高解析度版本:
https://discuss.analyticsvidhya.com/t/download-hd-infographic-27-essential-data-science-books/75604
統計學書籍
《白話統計學》
https://www.amazon.in/Statistics-Plain-English-Third-1/dp/041587291X
作者:蒂莫西·C·烏爾單(Timothy C. Urdan)
正是這本美好的書,開始了我在統計學世界的旅程。它完全是為初學者寫的,總能吸引你回來以查詢更多的內容,而且寫作風格和解釋內容恰到好處地呼應書名-白話統計學。你可以推薦這本書給任何一位非技術人員,他們應該能夠掌握這些原理,因為它就是這麼出色!
《思考統計: 程式員的機率學和統計學》
http://greenteapress.com/thinkstats/thinkstats.pdf
作者:艾倫·B·唐尼(Allen B. Downey)
在大多數的資料科學書單中,你都可以發現這本書位列第一。這本書有大量的資源,點選上面連結,進入這本書的主頁,你將看到資料檔案、程式碼、解決方案等資料。對於已經瞭解Python基礎知識的人來說,它是特別有用的,因為在這本書中,用來演示實體的正是python語言。
《統計學習導論》
作者:加雷思·詹姆斯(Gareth James), 達尼埃拉·威滕(Daniela Witten), 特雷弗·哈西蒂(Trevor Hastie)和 羅布·蒂布里亞尼(Robert Tibshirani)
這是一本經典之作,大多數我看過的機器學習課程都推薦或取用了這本書,當然是因為它寫的好的緣故。它涵蓋了基礎的統計學和機器學習技術,最棒的是,每個觀點都會用R語言的案例分析來說明。一旦你學會程式設計,就來回反覆驗證每個觀點,還有什麼方法比多次練習能更好地鞏固一個觀點呢?
機率學書籍
《機率學:給熱情的初學者》
https://www.amazon.in/Probability-Enthusiastic-Beginner-David-Morin/dp/1523318678
作者:大衛·莫林(David Morin)
這是一本針對初學者的完美書籍。這本書是為學院學生們而寫的,所以,所有傾向於從零開始學習機率學的同學們都很會很欣賞這本書的寫作方式。它涵蓋了所有的基礎內容-組合數學、機率學規則、貝葉斯定理、期望值、偏差、機率密度、常見機率分佈、大數定律、中心極限定理、相關性和回歸分析。
機率學導論
《機率學導論》
https://www.math.dartmouth.edu/~prob/prob/prob.pdf
作者:J·勞裡·斯內爾(J. Laurie Snell)和 查爾斯·米勒·格裡斯(Charles Miller Grinstead)
這是另一本入門級的書籍,涵蓋了基礎的機率學概念。像上本書一樣,這本書是針對大學畢業生而寫的,因而進行了詳盡的文字描述。你可能會奇怪為什麼我一直重覆這一點,這是因為我想強調:總有一個地方是可以讓我們從零開始學習的,它是一本為那些從未探索進入這個領域的學生而寫的書。
《機率論及其應用概論》
作者:威廉·費勒(William Feller)
正如這本書的描述所說的,它完全是一本關於機率論及其應用的入門指導書。如果你真的想深深地扎入機率學的世界,我推薦你讀這本書,因為它是一本非常詳細的教科書,但可能不符合一個初學者的口味。如果你學習機率學只是為了進入資料科學,你可以避開這本,只閱讀上面提到的兩本機率學書籍中的任意一本就好了。
機器學習書籍
《機器學習百頁書》
http://www.themlbook.com/
作者:安德里·布林科夫(Andriy Burkov)
閱讀了大量試圖從不同的角度和觀點來教授機器學習的書籍,我努力想要找尋能夠一本能夠簡明地歸納費解的原理和方程式的書。直到安德里·布林科夫用100多頁設法做到了這點,我喜歡上了這本書。它寫得很出色,易於理解,而且還有彼德·諾維格(Peter Norvig)等思想領袖為其背書。還需要我說更多嗎?初學者也許已經成名,因此,每個資料科學家都應該擁有這本書。
機器學習
《機器學習》
https://www.amazon.in/Machine-Learning-Tom-M-Mitchell/dp/1259096955
作者:湯姆·米切爾(Tom Mitchell)
在所有機器學習書大肆宣傳之前,湯姆·米切爾關於機器學習的書是理解各種技術和演演算法背後數學原理的首要選擇。我會建議在拿起這本書之前先複習一下數學,但你並不需要有任何人工智慧和統計學的背景來理解這些概念。它是我機器學習的第一本書! 它售價不高,因此它絕對值得加入你們的收藏。
統計學學習要素
《統計學學習要素》
https://web.stanford.edu/~hastie/Papers/ESLII.pdf
作者:特雷弗·哈西蒂(Trevor Hastie),羅布·蒂布里亞尼(Robert Tibshirani)和 耶羅梅·弗裡德曼(Jerome Friedman)
現在我們回到哈西蒂和蒂布里亞尼的另一本經典!它是我們之前提到的《統計學習導論》自然續篇。儘管和那本書有一些重覆,但這本書更進一步地分析了我們所說的機器學習演演算法。除了一般的機器學習技術,它還涵蓋其他機器學習技術,諸如神經網路、矩陣分解法、譜聚類法這些內容。
深度學習書籍
《深度學習》
https://www.deeplearningbook.org/
作者:伊恩·古德費羅(Ian Goodfellow),義華·本焦(Yoshua Bengio)和阿倫·考維爾(Aaron Courville)
這本書的作者們都是巨星級的!《深度學習》這本書被廣泛地認為是初學者最好的學習資源。它分為三個章節:應用數學和機器學習基礎、現代深度學習實踐框架和深度學習研究。迄今為止,它是深度學習社群取用最多的一本書。床邊放一本,膜拜它並經常查閱它 –無論什麼時候你開始深度學習旅程,這種情形將一直伴隨著你。
《和Python一起深度學習》
https://www.amazon.com/Deep-Learning-Python-Francois-Chollet/dp/1617294438
作者:弗朗索瓦·喬萊(Francois Chollet)
透過程式設計和理論並行學習深度學習(或機器學習),真的很酷,這也是弗朗索瓦·喬萊在《和Python一起深度學習》書中所遵循的方法。常用的Keras庫可以幫助你學習深度學習概念,而弗朗索瓦是Keras的建立者,所以,還會有誰比他更適合來教這個領域的知識呢?我也建議在推特上關註一下弗朗索瓦 – 那裡有很多我們學習的東西。
《神經網路和深度學習》
http://neuralnetworksanddeeplearning.com/
作者:邁克爾·尼爾森(Michael Nielsen)
這是一本免費的線上書籍,以幫助學習為深度學習賦能的核心元件 – 神經網路。我很喜歡這本書的寫作方式,它採用一種實踐的方式來教授基本概念,還從初學者的視角來看待深度學習的研究課題。在這本書裡,你學不到任何一種程式語言,因為它是一本解釋神經網路背後基礎概念的教科書,偏老式風格但很好。
自然語言處理(NLP)書籍
《用Python自然語言處理》
https://www.nltk.org/book/
作者:斯蒂文·伯德(Steven Bird),伊旺·克萊恩(Ewan Klein)和 愛德華·洛珀(Edward Loper)
這是另外一本堅持邊做邊學原則的書,你將學到一些在其他地方學不到的python概念知識,這樣才能利用NLTK(Natural Language Toolkit自然語言工具)庫在NLP(Natural Language Processing自然語言處理)的世界裡暢遊。儘管這本書不是你學習NLP唯一參考的資源(NLP太複雜了,不是一下能說清楚的),但它還是在這一課題上提供一個相當不錯的介紹。
《統計學自然語言處理基礎》
https://www.cs.vassar.edu/~cs366/docs/Manning_Schuetze_StatisticalNLP.pdf
作者:克裡斯多夫·曼寧(Christopher Manning)和 欣裡奇·舒埃策(Hinrich Schutze)
這本書已經出版了20年,依然能夠作為一本優秀的自然語言處理入門書。它對NLP下廣泛的子課題對非常詳盡的指引,如文字分類、詞性標註、機率句法分析和其它內容。作者在數學和語言的基礎上對這些課題做了非常嚴謹而且十分詳細的分析,我們要謹記這一點。
《語音和語言處理》
https://web.stanford.edu/~jurafsky/slp3/ed3book.pdf
作者:丹尼爾·尤拉夫斯基(Daniel Jurafsky)和 詹姆斯·H·馬丁(James H. Martin)
這本書著重介紹的是,自然語言和語音的實際應用和科學評估。我將這本書列入書單是為了開闊我們在文字處理以外的眼界 – 也來看一看語音識別。為什麼不呢?每天都有不計其數的語音識別應用出現,可見,它是一個日益繁榮的研究領域。尤拉夫斯基和馬丁合著的這本書是自然語言處理領域和計算機語言學非常有深度的一本書。同樣,這也是一本大師們自己寫的書。
計算機視覺書籍
《計算機視覺:演演算法和應用》
http://szeliski.org/Book/
作者:理查德·謝利斯基(Richard Szeliski)
這本書中探討了很多常見的計算機視覺技術,尤其是那些用來分析和解析影象的技術。雖然這本書大在約九年前出版,但理查德·謝利斯基舉例說明所用的例子和方法學在當今還是很實用的。它是一本教科書,詳細介紹瞭如何採用科學方法來解決計算機視覺領域中的基本挑戰。點選上面書名,就可以免費獲得這本書的PDF版本。
《用Python程式設計計算機視覺》
http://programmingcomputervision.com/
作者:揚·埃裡克·索勒姆(Jan Erik Solem)
在你探究這本令人驚嘆的書之前,點選書名,進入網站,下載資料包、程式碼以及從Github目錄上複製下來的資源庫。這本書是一本真正具有實踐指導意義的計算機視覺導論書,而這些豐富的學習資源則有助於你有效地閱讀它,正如作者所說的,“當你練習這些用Python編寫的例子時,你將學會一些技術如物體識別、3D重建、立體成像、增強現實和其它的計算機視覺應用。”
《計算機視覺:建模,學習,和推理》
http://www.computervisionmodels.com/
作者:西蒙·J·D·普林斯博士(Dr. Simon J.D. Prince)
這本書從最基本的機率學基本概念開始介紹,然後非常快地以此切入正題。儘管書裡介紹的有些框架出現更新版本,但這本書在當今的大環境中還是有價值的。它介紹了70多個演演算法,而且完美地補充了350多個示例說明。如果你喜歡幻燈片的學習方式,那麼請點選書名連結,進入網站下載。
人工智慧書籍
《人工智慧:一種現代的方法》
http://aima.cs.berkeley.edu/
作者:斯圖爾特·羅素(Stuart Russell)和 彼德·諾維格(Peter Norvig)
這是一本斯圖爾特·羅素和彼德·諾維格寫的書,是人工智慧界首屈一指的好書,100多個國家、超過1300個高等學府在他們的課程中參考或取用了這本書。提到作者是誰,就不會驚訝於書的厚度 – 1100頁,涵蓋了人工智慧的方方面面 – 語音識別、自動駕駛、機器翻譯和計算機視覺等其他內容,這本書可以認為是人工智慧界的聖經。
《人工智慧》
https://www.amazon.in/Artificial-Intelligence-Humans-Fundamental-Algorithms-ebook/dp/B00HAT0APE
作者:傑夫·西頓(Jeff Heaton)
人工智慧的基本演演算法是什麼?這本書打包了大量的技術知識,僅編成區區222頁。這還只是人工智慧技術系列書籍的第一卷(維度、距離度量、聚類、誤差計算、爬山演演算法、內爾德·米德演演算法以及線性回歸)。此外,還有一個伴生網站包含了這本書取用的範例和一個包含其程式碼的GitHub資源庫。
伴生網站:
https://www.heatonresearch.com/aifh/vol1/
GitHub資源庫:
https://github.com/jeffheaton/aifh
《終極演演算法》
作者:佩德羅·多明戈斯(Pedro Domingos)
如果你想找一本人工智慧方面的技術書,這本不是。但它是什麼呢?它用極具說服性的文字闡述了機器學習是如何改變商業、政治、科學和戰爭的書,是一本討論人工智慧現在在哪裡以及未來可能帶領人類去哪裡的書,論證深入而且發人深省。我們將有可能找到有能力透過資料推進所有知識的唯一一個演演算法(或“主演演算法”)嗎?加入佩德羅·多明戈斯的探索來一起找出答案。
Python工具/語言書籍
《流暢的Python:清晰、簡練以及高效程式設計》
https://www.amazon.in/Fluent-Python-Concise-Effective-Programming-ebook/dp/B0131L3PW4
作者:盧西亞諾·拉馬爾霍(Luciano Ramalho)
有很多資源可以用來學習Python,但是沒有能夠像這本優秀的教科書一樣教你如何程式設計。就如你渴望從一本程式設計書上得到的一樣,它是一本具有操作性的指導書,可以幫助你理解Python是如何工作的以及怎樣寫出精彩且高效的Python程式碼。盧西亞諾·拉馬爾霍還網羅了一些流行的程式碼庫,你會發現自己經常在資料科學專案中用到這些庫。有足足794頁的長度,這本書真是物有所值。
《Python程式設計:強大的面向物件程式設計》
https://www.amazon.in/Programming-Python-4e-Mark-Lutz/dp/0596158106
作者:馬克·盧茨(Mark Lutz)
如果你認為上本書已經教會你所有需要瞭解的Python知識,那麼請再考慮考慮這部書。畢竟,Python是一個龐大的程式語言,還有很多其它內容沒有改寫。一旦你從上面那本盧西亞諾·拉馬爾霍的書中掌握了基本原理,就可以來看看馬克·盧茨的這本書。它在很多研究問題上都有深入詳盡的教程:資料庫、網路、文字處理和圖形使用者介面(GUIs)等等,書中有大量例子,是程式碼迷必須讀的一本書。
《資料科學Python手冊》
作者:薩米爾·馬達文(Samir Madhavan)
目前為止,前面介紹的兩本書都是從程式語言角度來學習Python,現在是時候從資料科學的角度來學習它了。哪些資料科學庫正被普遍使用,並且怎麼用?你如何能在Python中建立資料視覺化並按圖表挖掘資料?並且你如何能將高階的資料科學/機器學習技術編成程式碼從而建立資料模型?薩米爾·馬達文在這本精心著作的書中回答了這些以及其他更多的問題。
R工具/語言書籍
《資料科學的R程式設計》
https://r4ds.had.co.nz/
作者:加勒特·格羅勒蒙德(Garrett Grolemund)和 哈德利·韋翰(Hadley Wickham)
只要是稍稍聽說過R程式設計的人都將會接觸到哈德利·韋翰的成果,他在這個語言的成就是舉世無雙的 – 關於他我可以滔滔不絕,怎麼極力推薦這本書都不為過。你將學會如何匯入不同種類的資料進R和不同的資料結構以及如何轉變、視覺化與建模你的資料。因此,這是一本透過R程式設計學習資料科學的書,特別好。
《大家來學R》
https://www.amazon.in/R-Everyone-Advanced-Analytics-Graphics/dp/9332539243
作者:賈裡德·蘭德(Jared P. Lander)
我在聽說Python之前就已經學習R了,因此在我心中,它佔據了一個特殊的位置,而賈裡德·蘭德的《大家來學R》在其中起了很大的作用。我從一個朋友那裡得到了這本書,並且很快被它精彩的寫作所吸引了。它聲稱是寫給“大家”的,實至名歸。如果你沒有技術和統計學背景的話,這是一本很好的書。
《R學習書》
https://www.amazon.in/Cookbook-Recipes-Analysis-Statistics-Graphics/dp/9350233797?tag=googinhydr18418-21&tag;=googinkenshoo-21&ascsubtag;=_k_EAIaIQobChMIqZ3q0uvy3wIV2SMrCh0M3w3nEAYYASABEgJmJ_D_BwE_k_&gclid;=EAIaIQobChMIqZ3q0uvy3wIV2SMrCh0M3w3nEAYYASABEgJmJ_D_BwE
作者:保羅·泰託(Paul Teetor)
《R學習書》很好地完善了你的資料科學書單,它包含了200多個切實可行的小技巧來幫助你著手用R分析和運算元據,每個技巧都著眼於一個不同的問題。不管是學習新的程式設計技巧還是掃清你的觀念,這本書適合每個人,因此,它對初學者、中級和高階專業人士有著同樣的意義。
正像前文承諾的一樣,這裡有一個完整的資訊圖表,包含了文章中所提及的所有書籍:
原文標題:
27 Amazing Data Science Books Every Data Scientist should Read
原文連結:
https://www.analyticsvidhya.com/blog/2019/01/27-amazing-data-science-books-every-data-scientist-should-read/
譯者簡介:季洋,蘇州某IT公司技術總監,從業20年,現在主要負責Java專案的方案和管理工作。對大資料、資料挖掘和分析專案躍躍欲試卻苦於沒有機會和資料。