- 深度學習的數(shù)學:使用Python語言
- (美)羅納德·T.紐塞爾
- 1557字
- 2024-04-22 11:54:54
前言
如今,數(shù)學的地位舉足輕重,而深度學習也在日漸扮演重要角色。從無人駕駛汽車敢于給出的安全允諾,到比頂尖骨科醫(yī)生還厲害的骨科診斷醫(yī)療系統(tǒng),再到越發(fā)強大甚至引起擔憂的語音助手,深度學習已經(jīng)無處不在。
本書涵蓋要理解深度學習所必須掌握的數(shù)學知識。當然,你確實可以利用現(xiàn)成的組件,在完成好相應設(shè)置并準備好Python代碼以后,就對數(shù)據(jù)進行處理并完成模型訓練任務(wù),而無須理解自己在做什么,更不用理解背后的數(shù)學理論。而且,由于深度學習的強大,你往往能成功地訓練一個模型。但是,你并不理解自己為什么能成功,也不該就此而滿足。想搞明白原因,就需要學習數(shù)學。雖然用不著大量的數(shù)學知識,但一定的數(shù)學功底還是必需的。具體來說,你需要理解與概率論、統(tǒng)計學、線性代數(shù)和微分相關(guān)的一些理論知識,而這些知識剛好就是本書所要討論的內(nèi)容。
本書面向誰
本書不是一本深度學習的入門教材,它不會教你深度學習的基礎(chǔ)知識,而是此類書籍的有效補充[你可以參考我的另一本書:Practical Deep Learning: A Python-Based Introduction(No Starch Press, 2021)]。雖然本書假設(shè)你對深度學習的核心概念已經(jīng)比較熟悉,但我還是會在講解的過程中做必要的解釋說明。
此外,本書假設(shè)你具備一定的數(shù)學基礎(chǔ),包括高中數(shù)學知識,尤其是代數(shù)知識。本書還假設(shè)你對Python、R或其他類似編程語言較為熟悉。本書使用Python 3進行講解,書中會用到它的一些主流組件,如NumPy、SciPy以及scikit-learn。
對于其他方面,本書就不作要求了,畢竟本書的目的就是給你提供成功使用深度學習所必備的知識。
關(guān)于本書
這雖然是一本關(guān)于數(shù)學的書,但其中不會有大量公式證明和練習題,我們主要通過代碼來闡述各種概念。深度學習是一門應用學科,所以你需要在實踐中理解其內(nèi)涵。我們將用代碼填補數(shù)學理論和應用實踐之間的空白。
本書內(nèi)容安排有序,首先介紹基礎(chǔ)理論,然后引出更高級的數(shù)學內(nèi)容,最后用實際的深度學習算法讓你將之前掌握的內(nèi)容融會貫通。建議你按照書中的內(nèi)容順序閱讀,如果遇到已經(jīng)非常熟悉的內(nèi)容,你可以直接跳過。
第1章:搭建舞臺
該章對工作環(huán)境以及深度學習中的常用組件進行配置。
第2章:概率論
概率論影響深度學習的方方面面,它是理解神經(jīng)網(wǎng)絡(luò)訓練過程的關(guān)鍵。作為本書概率論的前半部分,該章介紹該領(lǐng)域的基礎(chǔ)知識點。
第3章:概率論進階
單靠一章難以覆蓋重要的概率論的全部內(nèi)容,該章繼續(xù)探索概率論中與深度學習相關(guān)的知識點,包括概率分布和貝葉斯定理。
第4章:統(tǒng)計學
統(tǒng)計學對理解數(shù)據(jù)和評估模型非常重要,而且概率論也離不開統(tǒng)計學,要理解深度學習,就不得不理解統(tǒng)計學。
第5章:線性代數(shù)
線性代數(shù)是一門關(guān)于向量和矩陣的學科,而深度學習就以線性代數(shù)為核心。實現(xiàn)神經(jīng)網(wǎng)絡(luò)本身就是在運用向量和矩陣進行運算,所以理解相關(guān)概念和運算方法非常關(guān)鍵。
第6章:線性代數(shù)進階
該章繼續(xù)討論線性代數(shù)知識,內(nèi)容聚焦于矩陣的相關(guān)核心內(nèi)容。
第7章:微分
或許訓練神經(jīng)網(wǎng)絡(luò)的最核心理論基礎(chǔ)就是梯度。要想理解和使用梯度,就必須掌握如何對函數(shù)求導。該章介紹求導和梯度的理論基礎(chǔ)。
第8章:矩陣微分
在深度學習中,求導往往是針對向量和矩陣進行的。該章把導數(shù)的概念擴展到這些對象上。
第9章:神經(jīng)網(wǎng)絡(luò)中的數(shù)據(jù)流
要想理解神經(jīng)網(wǎng)絡(luò)如何對向量和矩陣進行運算,就必須理解數(shù)據(jù)在神經(jīng)網(wǎng)絡(luò)中是如何流轉(zhuǎn)的。該章討論這些內(nèi)容。
第10章:反向傳播
成功訓練神經(jīng)網(wǎng)絡(luò)離不開兩個關(guān)鍵算法:反向傳播和梯度下降。該章通過介紹反向傳播,幫助你對前面所學知識加以應用。
第11章:梯度下降
梯度下降使用反向傳播過程中計算得出的梯度來訓練神經(jīng)網(wǎng)絡(luò)。該章從簡單的一維函數(shù)開始探討梯度下降,一步步講到全連接網(wǎng)絡(luò)的情況。除此之外,該章還會介紹并對比梯度下降的各種變體。
附錄:學無止境
本書雖然略過了概率論、統(tǒng)計學、線性代數(shù)和微分中的很多知識點,但附錄部分會給你提供進一步學習相關(guān)領(lǐng)域的資源。
本書的配套代碼可以從GitHub網(wǎng)站的rkneusel9/MathForDeepLearning庫中下載。現(xiàn)在就讓我們開始學習吧!
- Web前端開發(fā)技術(shù):HTML、CSS、JavaScript(第3版)
- C/C++算法從菜鳥到達人
- INSTANT MinGW Starter
- PostgreSQL 11從入門到精通(視頻教學版)
- CKA/CKAD應試教程:從Docker到Kubernetes完全攻略
- Functional Kotlin
- Getting Started with Gulp
- 從零開始學C語言
- Java系統(tǒng)化項目開發(fā)教程
- Visual C#.NET Web應用程序設(shè)計
- Raspberry Pi Robotic Blueprints
- 3ds Max印象 電視欄目包裝動畫與特效制作
- R Data Science Essentials
- ArcPy and ArcGIS(Second Edition)
- 深度學習的數(shù)學:使用Python語言