# 自學深度學習書單(更新中) ## 1. 精通 Python:運用簡單的套件進行現代運算 ![](https://i.imgur.com/3708ZPT.png) **評分:4.0 / 5.0** 學 python 的人都應該聽過這本書,主要介紹一些 python 語言特性及資料型態,每章後面有習題可以練習,內容淺顯易懂適合剛入門的新手,算是初學 python 的聖經。目前有出第二版。 <br> ## 2. Python 資料科學學習手冊 ![](https://i.imgur.com/3dBxM8Q.png) **評分:3.5 / 5.0** 主要分為三個部分: 1. numpy、pandas 介紹:作為寫 python 的都必定會用到的兩個套件,這本書算是很有系統性的介紹。缺點是沒再版,有些方法已棄用。 2. 資料視覺化:主要用 matplotlib 和 seaborn 視覺化,前半部介紹折線圖、直方圖、subplot 等蠻實用的語法,後半部的 3D 圖視覺化則偏向時間多的時候拿來炫技用,很漂亮但不直覺。 3. 機器學習:跳過沒看,本書的機器學習省略理論及數學部分,只介紹一些簡單的概念及程式語法,要深度了解機器學習有更好的選擇。 這本書的重點在於熟悉 numpy、pandas 的用法,並學習 matplotlib 將資料加以視覺化,單就這幾個章節而言,本書介紹得很詳細且值得推薦。 <br> ## 3. 初探深度學習 使用 Tensorflow ![](https://i.imgur.com/1QXSwFU.png) **評分:2.0 / 5.0** 本書非常不適合新手閱讀,雖然書名叫初探深度學習,但作者預設你已經有一些基礎概念,會省略很多細節,導致範例中常出現沒介紹過的語法。此外書中的圖示及解釋也不清楚,作者常會放一張圖加一段簡述要讀者自行通靈。 <br> ## 4. Deep Learning:用 Python 進行深度學習的基礎理論實作 ![](https://i.imgur.com/VIJgxtW.png) **評分:5.0 / 5.0** 如果精通 Python 是 python 初學者的聖經,那這本書就是深度學習初學者的寶典。 這本書主要是用 numpy 手刻深度學習的各種網路層,包括 loss function、activation function、全連接層、卷積層等等,並鉅細靡遺解釋這些背後的原理,如梯度、反向傳播,說明做模型有關的技巧及注意事項,如優化器選用、過擬合、參數初始值等等。 有些人可能會覺得這個跟他想像中的深度學習不太一樣,因為裡面沒有任何 tensorflow、keras 的成分,但裡面的基礎知識及底層實作是其他書所缺乏的,同時也是目前自學者、職訓局出來的人欠缺的。 <br> ## 5. Deep Learning 2:用 Python 進行自然語言處理的基礎理論實作 ![](https://i.imgur.com/RuyOoiN.png) **評分:4.5 / 5.0** 跟前一本的作者是同一個人,延續第一本做法解釋自然語言處理的原理,從早期的 word2vec、Embedding,到現主流的 RNN、Attention 都有用 numpy 程式碼實作,並用清楚的圖例解釋背後原理,是一本很好的自然語言處理相關書籍。唯一的缺點是重要的 Transformer 只有簡單帶過,沒有詳細的介紹,這部分可以參考:[LeeMong-淺談神經機器翻譯 & 用 Transformer 與 TensorFlow 2 英翻中](https://leemeng.tw/neural-machine-translation-with-transformer-and-tensorflow2.html) <br> ## 6. 深度學習必讀:Keras 大神帶你用 Python 實作 ![](https://i.imgur.com/8a06ygR.png) **評分:4.5 / 5.0** 充滿實作的一本書,從簡單機器學習分類、迴歸預測,到深度學習 NLP、RNN、CNN、GAN 等等循序漸進建構模型,並詳細解釋每行程式碼的意思,個人認為有些太詳細以至於變得有點囉嗦,此外本書省略的大部分的理論及數學,因此不建議當作第一本深度學習入門的書,適合讀完 Deep Learning 1、2 後再來實戰。 <br> ## 7. 精通機器學習:使用 Scikit-Learn, Keras 與 Tensorflow(第二版) ![](https://i.imgur.com/3Mc5gYA.png) **評分:4.5 / 5.0** 結合理論、技術、實戰於一身的好書,內容扎實是其他書無法比擬的,每章後也會有習題提供練習。其主要分為兩個部分: 1. 機器學習:詳細介紹每一個機器學習演算法背後數學原理、理論基礎,比較各演算法間的優缺點並實際用 sklearn 帶你做一遍,非常適合剛接觸機器學習的人。(我讀完後才發現原來我以前機器學習的觀念都是垃圾) 2. 深度學習:主要的重點在於對過去過時的技術提出修正,並使用 Tensorflow 2 及 Keras 客製化模型、預先處理資料,對初學者稍嫌困難,建議具備一點深度學習知識再來讀。 缺點是中譯本語句稍微不通順,不過大致不影響閱讀理解。 <br> ## 8. 深度學習 ![](https://i.imgur.com/9IfOUc4.png) **評分:? / 5.0** 就是封面上花花草草的那本,網路上很多人都推這本書,但書中包含大量數學公式讓我讀起來很痛苦,目前正在慢慢啃。 <更一> 最困難的不是大量數學公式,而是中譯本直接英翻中沒有經過潤飾,一定程度影響語意理解。如果英文能力允許,建議讀英文版。 <br> ## 9. 王者歸來系列書籍 ![](https://i.imgur.com/nquQ6fL.png) **評分:0.5 / 5.0** 非常不推薦,博客來這麼多人五星好評感覺是洗出來的,會說這本書很好的人,只能說你說讀得不夠多。 全彩列印,排版花俏,程式碼排版間距讓字擠在一起看得很痛苦,內容相對於以上書籍非常雜亂、無系統性。個人認為不適合用來閱讀,比較像是用於查找的工具書,但工具書又有更好的選擇。(P.S. 紙質是那種百貨公司周年慶的塑膠感紙,質感很差) ## 10. 生成深度學習 ![](https://i.imgur.com/xUcbZ3v.png) ## 11. 流暢的 Python ![](https://i.imgur.com/G5d6rNM.png) ## 12. 高效能 Python 程式設計 第二版 ![](https://i.imgur.com/BIEDwot.png) ## 13. 自然語言處理最佳實務:全面建構真正的 NLP 系統 ![](https://i.imgur.com/wLeJMfj.png) **評分:2.5 / 5.0** 內文介紹很多英文 NLP 實際執行時需要注意的細節,程式碼的含量偏低,就算有也只是一些虛擬碼或重點的程式碼,因此不能期待本書將所有技術都實作出來。 本書有一個缺點,作者會把可能會遇到的問題丟出來,但卻只給一些開放性回答或根本沒有回答,不確定是作者不寫還是目前實務上本來就沒有標準答案,舉例來說文中提到選擇 NLP 程式庫取決於語言處理量,但卻沒提哪種程式庫適合哪種類型的資料量。 <更一> 本書偏向運用現有的工具、模型、套件來執行 NLP 任務,不會從頭手刻一個完整的模型。 <更二> 涵蓋範圍很廣,但理論概念深度不如 "精通機器學習",程式碼解釋不如 "Keras 大神",食之無味棄之可惜。 --- 如果是完全沒基礎的人想要鑽研這方面的知識,建議的閱讀順序為: 1. 精通 Python:運用簡單的套件進行現代運算 2. Python 資料科學學習手冊 3. Deep Learning:用 Python 進行深度學習的基礎理論實作 4. Deep Learning 2:用 Python 進行自然語言處理的基礎理論實作 5. 深度學習必讀:Keras 大神帶你用 Python 實作 6. 精通機器學習:使用 Scikit-Learn, Keras 與 Tensorflow(第二版) 這些書一定會有一部分是互相重疊的,即便如此我仍建議各位將這些章節快速看過一遍當作複習。此外每本書也都有介紹到一些別人沒有講到的技術、撇步,讀完這些書對初學者一定獲益良多。 此外中譯本翻譯後多少都會影響原本作者想表達的意思,若語言能力允許,原文版仍是首選。