
張覺非 陳震
本書帶領讀者用原生Python語言和Numpy線性代數庫實現一個基於計算圖的深度學習框架MatrixSlow(類似簡易版的PyTorch、TensorFlow或Caffe)。全書分爲三個部分。第一部分是原理篇,實現了MatrixSlow框架的核心基礎設施,並基於此講解了機器學習與深度學習的概念和原理,比如模型、計算圖、訓練、梯度下降法及其各種變體。第二部分是模型篇,介紹了多種具有代表性的模型,包括邏輯迴歸、多層全連接神經網絡、因子分解機、Wide & Deep、DeepFM、循環神經網絡以及卷積神經網絡,這部分除了着重介紹這些模型的原理、結構以及它們之間的聯繫外,還用MatrixSlow框架搭建並訓練它們以解決實際問題。第三部分是工程篇,討論了一些與深度學習框架相關的工程問題,內容涉及訓練與評估,模型的保存、導入和服務部署,分佈式訓練,等等。
本書帶領讀者用Python語言從零開始實現一個基於計算圖的機器學習/深度學習框架。通過這樣一個“造輪子”的過程,讓讀者全面掌握機器學習和深度學習概念、原理和工程實踐。雖然本書實現的深度學習框架功能和性能跟tensorflow和pytorch這些主流的工業級框架相比簡單低效,但麻雀雖小,五臟俱全,非常適合學習和研究。
作爲20年的書,至今看仍頗爲受益,非常適合作爲pytorch,Keras等計算框架的前置書籍,對計算圖感興趣可以沿着雅可比行列式的優化繼續往後鑽研
用numpy寫了一遍深度學習框架,有趣。不知道有沒有類似的介紹強化學習框架的入門書
對深度學習框架內部感興趣的同學,可以看下這本書。
適合初學者瞭解下神經網絡訓練pipeline