每月好書:? 深入淺出深度學習:原理剖析與Python實踐
和老規矩一樣,本月月考的獎品就是《深入淺出深度學習》兩本。不知道什麼是月考的同學,請補習下面文章:
每月送書活動來襲,免費哦!
規則就說到這裡,下面是書籍介紹。
-----------割------------
深入淺出深度學習:原理剖析與Python實踐
(通俗易懂講解深度學習核心要素,快速煉成AI工程師!楊強教授、鄧侃博士力薦!入門+工具+思維+實踐=深度學習速成寶典!)
黃安埠 著 ISBN 978-7-121-31270-0
2017年6月出版 定價:79.00元
344頁 16開
編輯推薦
本書最大的特色在於取捨明確,一切無助於迅速理解深度學習精髓的內容全被摒棄了,並著重闡述了技術上的重點和難點;表達上深入淺出:即便是從未接觸過AI知識的人,也能從作者簡明清晰的表述中,一窺深度學習的殿堂。
對任何一位想成為AI/深度學習領域工程師的讀者來說,《深入淺出深度學習:原理剖析與Python實踐》能幫你迅速打開AI的大門,並成長為一名合格的AI工程師。
內容提要
《深入淺出深度學習:原理剖析與Python實踐》介紹了深度學習相關的原理與應用,全書共分為三大部分,第一部分主要回顧了深度學習的發展歷史,以及Theano的使用;第二部分詳細講解了與深度學習相關的基礎知識,包括線性代數、概率論、概率圖模型、機器學習和最優化演算法;在第三部分中,針對若干核心的深度學習模型,如自編碼器、受限玻爾茲曼機、遞歸神經網路和卷積神經網路等進行詳細的原理分析與講解,並針對不同的模型給出相應的具體應用。
《深入淺出深度學習:原理剖析與Python實踐》適合有一定高等數學、機器學習和Python編程基礎的在校學生、高校研究者或在企業中從事深度學習的工程師使用,書中對模型的原理與難點進行了深入分析,在每一章的最後都提供了詳細的參考文獻,讀者可以對相關的細節進行更深入的研究。最後,理論與實踐相結合,《深入淺出深度學習:原理剖析與Python實踐》針對常用的模型分別給出了相應的應用,讀者也可以在Github中下載和查看《深入淺出深度學習:原理剖析與Python實踐》的代碼(https://github.com/innovation-cat/DeepLearningBook)。
目錄
第1 部分 概要
11 緒論
21.1 人工智慧、機器學習與深度學習的關係 3
1.1.1 人工智慧——機器推理 4
1.1.2 機器學習——數據驅動的科學 5
1.1.3 深度學習——大腦的模擬 8
1.2 深度學習的發展歷程 8
1.3 深度學習技術概述 10
1.3.1 從低層到高層的特徵抽象 11
1.3.2 讓網路變得更深 13
1.3.3 自動特徵提取 14
1.4 深度學習框架 15
2 Theano 基礎
192.1 符號變數 20
2.2 符號計算的抽象——符號計算圖模型 23
2.3 函數 26
2.3.1 函數的定義 26
2.3.2 Logistic回歸 27
2.3.3 函數的複製 29
2.4 條件表達式 31
2.5 循環 32
2.6 共享變數 39
2.7 配置 39
2.7.1 通過THEANO_FLAGS配置 40
2.7.2 通過. theanorc文件配置 41
2.8 常用的Debug技巧 42
2.9 小結 43
第2 部分 數學與機器學習基礎篇
453 線性代數基礎
463.1 標量、向量、矩陣和張量 46
3.2 矩陣初等變換 47
3.3 線性相關與向量空間 48
3.4 範數 49
3.4.1 向量範數 49
3.4.2 矩陣範數 53
3.5 特殊的矩陣與向量 56
3.6 特徵值分解 57
3.7 奇異值分解 58
3.8 跡運算 60
3.9 樣例:主成分分析 61
4 概率統計基礎
644.1 樣本空間與隨機變數 65
4.2 概率分布與分布函數 65
4.3 一維隨機變數 66
4.3.1 離散型隨機變數和分布律 66
4.3.2 連續型隨機變數和概率密度函數 67
4.4 多維隨機變數 68
4.4.1 離散型二維隨機變數和聯合分布律 69
4.4.2 連續型二維隨機變數和聯合密度函數 69
4.5 邊緣分布 70
4.6 條件分布與鏈式法則 71
4.6.1 條件概率 71
4.6.2 鏈式法則 73
4.7 多維隨機變數的獨立性分析 73
4.7.1 邊緣獨立 74
4.7.2 條件獨立 74
4.8 數學期望、方差、協方差 75
4.8.1 數學期望 75
4.8.2 方差 76
4.8.3 協方差 76
4.8.4 協方差矩陣 78
4.9 資訊理論基礎 81
4.9.1 信息熵 81
4.9.2 條件熵 83
4.9.3 互信息 84
4.9.4 相對熵與交叉熵 84
5 概率圖模型
875.1 生成模型與判別模型 89
5.2 圖論基礎 90
5.2.1 圖的結構 90
5.2.2 子圖 91
5.2.3 路徑、跡、環與拓撲排序 92
5.3 貝葉斯網路 95
5.3.1 因子分解 96
5.3.2 局部馬爾科夫獨立性斷言 99
5.3.3 I-Map與因子分解 100
5.3.4 有效跡 103
5.3.5 D-分離與全局馬爾科夫獨立性 108
5.4 馬爾科夫網路 108
5.4.1 勢函數因子與參數化表示 109
5.4.2 馬爾科夫獨立性 111
5.5 變數消除 114
5.6 信念傳播 116
5.6.1 聚類圖 116
5.6.2 團樹 120
5.6.3 由變數消除構建團樹 123
5.7 MCMC採樣原理 126
5.7.1 隨機採樣 127
5.7.2 隨機過程與馬爾科夫鏈 128
5.7.3 MCMC採樣 132
5.7.4 Gibbs採樣 134
5.8 參數學習 137
5.8.1 最大似然估計 137
5.8.2 期望最大化演算法 138
5.9 小結 140
6 機器學習基礎
1426.1 線性模型 143
6.1.1 線性回歸 143
6.1.2 Logistic回歸 148
6.1.3 廣義的線性模型 150
6.2 支持向量機 151
6.2.1 最優間隔分類器 152
6.2.2 對偶問題 155
6.2.3 核函數 156
6.3 樸素貝葉斯 160
6.4 樹模型 162
6.4.1 特徵選擇 163
6.4.2 剪枝策略 165
6.5 聚類 166
6.5.1 距離度量 167
6.5.2 層次聚類 168
6.5.3 K-means聚類 171
6.5.4 譜聚類 172
7 數值計算與最優化
1777.1 無約束極小值的最優化條件 177
7.2 梯度下降 179
7.2.1 傳統更新策略 181
7.2.2 動量更新策略 183
7.2.3 改進的動量更新策略 184
7.2.4 自適應梯度策略 187
7.3 共軛梯度 188
7.4 牛頓法 192
7.5 擬牛頓法 194
7.5.1 擬牛頓條件 194
7.5.2 DFP演算法 195
7.5.3 BFGS演算法 196
7.5.4 L-BFGS演算法 197
7.6 約束最優化條件 200
第3 部分 理論與應用篇
2058 前饋神經網路
2068.1 生物神經元結構 207
8.2 人工神經元結構 208
8.3 單層感知機 209
8.4 多層感知機 212
8.5 激活函數 217
8.5.1 激活函數的作用 217
8.5.2 常用的激活函數 219
9 反向傳播與梯度消失
2259.1 經驗風險最小化 227
9.2 梯度計算 228
9.2.1 輸出層梯度 228
9.2.2 隱藏層梯度 230
9.2.3 參數梯度 234
9.3 反向傳播 235
9.4 深度學習訓練的難點 237
9.4.1 欠擬合——梯度消失 237
9.4.2 過擬合 240
10 自編碼器及其相關模型
24310.1 自編碼器 243
10.2 降噪自編碼器 245
10.3 棧式自編碼器 247
10.4 稀疏編碼器 250
10.5 應用:cifar10圖像分類 254
11 玻爾茲曼機及其相關模型
258
11.1 玻爾茲曼機 258
11.2 能量模型 261
11.2.1 能量函數 261
11.2.2 從能量函數到勢函數 262
11.2.3 從勢函數到概率分布 263
11.3 推斷 264
11.3.1 邊緣分布 265
11.3.2 條件分布 267
11.4 學習 270
11.4.1 最大似然估計 271
11.4.2 對比散度 274
11.5 應用:個性化推薦 276
11.5.1 個性化推薦概述 276
11.5.2 個性化推薦架構與演算法 279
11.5.3 RBM與協同過濾 285
12 遞歸神經網路
29112.1 Elman遞歸神經網路 292
12.2 時間反向傳播 295
12.3 長短時記憶網路 299
12.4 結構遞歸神經網路 302
12.5 應用:語言模型 308
12.5.1 N元統計模型 308
12.5.2 基於LSTM 構建語言模型 312
13 卷積神經網路
31813.1 卷積運算 319
13.2 網路結構 320
13.3 卷積層 324
13.4 池化層 329
13.5 應用:文本分類 333
精彩節摘
推薦序1
介紹深度學習的書籍不少,但是《深入淺出深度學習:原理剖析與Python實踐》與其他同類書相比,視角明顯不同。如果要給本書寫個宣傳語,或許可以是「深度學習工程師速成培訓教材」。本書對讀者的知識結構有兩點要求:一是學過高等數學,二是熟悉 Python 編程。換而言之,各個專業的理工科學生,尤其是學過 Python 編程的,都是此書的目標讀者。
本書內容全面,但是取捨明確,有重點地深入,尤其對於技術的重點難點解釋得很詳細,深入淺出。
本書最大的特色就在於內容取捨的尺度非常明確——著重於原理的解釋和動手實踐的路徑,但是並不拘泥於細枝末節。
胸中有經緯,就不會迷失在細節的汪洋大海。本書剛好側重於對經緯的梳理。此處的經緯,一類是數學基礎知識,另一類是深度學習技術。與深度學習相關的數學知識包括線性代數、概率統計等。因為概率圖與深度學習結合較多,本書把「概率圖」作為單獨的一章重點講述。深度學習技術包括機器學習的傳統技術、用於訓練神經網路的梯度下降等演算法。本書重點講述了神經網路的基本演算法以及幾種常用的深度網路架構。
工程師,重在實踐。工欲善其事必先利其器,實踐深度學習,離不開深度學習工具。本書介紹了 Theano 工具集的基本用法。其實深度學習工具,一通百通,各種工具的區別,類似於北京口音與東北口音的區別。
認真讀完此書,讀者應該擁有三項能力:一是讀得懂深度學習的論文;二是讀得懂深度學習的代碼;三是能夠自行開發簡單的深度學習應用。
總結一下,在深度學習技術異常火爆,深度學習工程師奇缺的當下,如何快速培養深度學習方向的工程師,是一個迫切的問題。此書是難得的好教材。
鄧侃博士
推薦序2
在過去的這十年,深度學習已經席捲了整個科技界和工業界,2016年谷歌阿爾法狗打敗圍棋世界冠軍李世石,更是使其成為備受矚目的技術焦點。記得2010年7月我參與了Facebook人臉識別(Face Detection)工作,那時候深度學習還沒有普及,這個系統是當時世界上最大的實時人臉識別系統,每天都有幾千萬張臉被找出來。隨著硬體的成熟和數據的指數級增加,深度學習在很多問題上成為人工智慧最火和最有效的方法。
這幾年,我身邊越來越多的計算機從業者,甚至在校大學生向我諮詢,有效了解和學習這個當前人工智慧最熱門的領域的方法。沒錯,一方面深度學習很熱門,人人都對此充滿了好奇和嚮往,但是同時,它對於初學者往往挑戰也不小,因為需要一定的數學基礎,同時各種專業術語,如果不用深入淺出的方式講,很容易讓人產生畏難情緒。
所以我推薦黃安埠的這本《深入淺出深度學習:原理剖析與Python實踐》給所有對深度學習有興趣的朋友們,本書涵蓋了深度學習的理論以及各種常見的深度學習模型,你們會在這本書中找到關於深度學習最實用的知識和信息。對於初學者來說,這是一本非常通俗易懂的入門教材。
同時我也推薦該書給深度學習領域的開發者和數據科學家,因為作者也分享和總結了許多深度學習的最佳實踐法,並輔以相當多的實際應用案例加以詮釋,是一本值得借鑒參考的好書。
陳爾東
前Twitter總監,前Facebook經理和早期工程師
作者簡介
黃安埠,2012年畢業於清華大學,獲碩士學位,在校期間活躍於TopCoder等編程競賽社區。現為騰訊基礎研究高級工程師,研究領域包括個性化推薦、自然語言處理和大規模的相似度優化計算,特別是對於深度學習在推薦系統的應用有深入的研究,並申請了國內十餘項相關專利。
本書的配套代碼,讀者也可以在作者的Github主頁中下載查看:
https://github.com/innovation-cat/DeepLearningBook)
媒體評論
楊強,香港科技大學計算機系主任,中國人工智慧協會副理事長——
在這個人工智慧紅紅火火的年代,寫出一本能讓初學者和「老司機」同樣感到非常有用的機器學習書是一件很有意義卻又不容易的事。黃安埠的《深入淺出深度學習:原理剖析與Python實踐》就做到了這一點。 本書從最基本的人工智慧假設出發,回顧了人工智慧的發展簡史,很自然地把讀者帶入現代常用的演算法、思想和實踐中。從數學基礎,到編程例證,再到各個流行的開源軟體包,本書起到了入門與工具的作用。同時,書的後半部也幫助讀者深入了解深度學習的思維和實踐。
我一直在尋找一本既可以用於教學也能給學生動手做系統的工具書,現在很高興地向大家推薦:本書就可以達到這個目的。
鄧侃 博士,北京大數醫達科技有限公司CTO——
本書內容全面,但是取捨明確,有重點地深入,尤其對於技術的重點難點解釋得很詳細,深入淺出:著重於原理的解釋和動手實踐的路徑,但是並不拘泥於細枝末節。
認真讀完此書,讀者應該擁有三項能力:一是讀得懂深度學習的論文;二是讀得懂深度學習的代碼;三是能夠自行開發簡單的深度學習應用。
在深度學習技術異常火爆,深度學習工程師奇缺的當下,如何快速培養深度學習方向的工程師,是一個迫切的問題。此書是難得的好教材。
陳爾東,前Twitter總監,前Facebook經理和早期工程師——
本書涵蓋了深度學習的理論以及各種常見的深度學習模型,讀者會在這本書中找到關於深度學習最實用的知識和信息。
對於初學者來說,這是一本非常通俗易懂的入門教材;對深度學習領域的開發者和數據科學家而言,因為作者在書中分享和總結了許多深度學習的最佳實踐方法,並輔以相當多的實際應用案例加以詮釋,這也是一本值得借鑒參考的好書。
前言
What magical trick makes us intelligent? The trick is that there is no trick. The power of intelligence stems from our vast diversity, not from any single, perfect principle.
—— Marvin Minsky
智能(Intelligence)這個詞的出現最早可以追溯到古希臘時期,當時人們已經開始夢想能創造出一種像人類一樣,具有獨立思考和推理能力的機器,但由於受到當時生產力水平的制約,古人對「智能」的研究更多的是停留在理論探索階段。到了近代,尤其是具有劃時代意義的達特茅斯會議的召開,標誌著人工智慧開始從理論探索進入到理論與應用相結合的實踐階段。從世紀年代開始,人工智慧的發展大致經歷了三個階段,分別從最初的邏輯推理,到統計機器學習,再到近年來逐漸佔據主流地位的深度學習。
雖然深度學習是一門以神經網路為核心的學科,但人們普遍認為深度學習始於2006年,當時Hinton等人提出基於深度置信網路(DBN)逐層預訓練的方法來訓練深層模型,並首次提出了深度學習的概念。此後,深度學習開始進入人們的視野,但那時候深度學習更多的是少數頂尖科學家研究的領域,並沒有得到大規模的應用和推廣。直到2012年,Hinton和他的兩個學生Alex?Krizhevsky、Illya Sutskever,將卷積神經網路應用到ImageNet競賽中,並取得了分類錯誤率15%的成績,這個成績比第二名低了近個11百分點,這一歷史性的突破,使得人們開始意識到深度學習所擁有的巨大潛力,在這之後,深度學習開始在工業界,尤其是計算機視覺、語音識別和自然語言處理等領域,大規模應用,並且取得了比以往更好的效果。到了2016年,隨著AlphaGo的橫空出世,它的驚人表現將深度學習的熱度推向了頂峰,因此2016年也被很多學者認為是人工智慧元年,事實上,當前人工智慧已經影響到人們生活的各個方面,如語音助手、語音搜索、無人駕駛汽車、人臉識別等,為人們的生活帶來了極大的方便,人工智慧也必將在今後相當長的一段時間內,繼續推動著人類的技術發展。
在本書編寫的過程中,市面上有關深度學習方面的中文書籍較少,因此作者希望能從理論和應用相結合的角度,對深度學習的相關知識進行較為全面的梳理,本書既可以作為初級讀者的入門書籍,也適合中級讀者用來加深對理論知識的理解。本書覆蓋了線性代數、概率論、數值計算與最優化等基礎知識,以及深度學習的兩大核心:概率圖模型和深度神經網路。具體來說,本書由以下三大部分構成:
第1部分是概要,共分為兩章。第1章主要闡述了深度學習、人工智慧相關的背景,深度學習的原理,以及當前流行的深度學習框架對比;第2章介紹了深度學習框架Theano的使用,著重對Theano的基礎知識和編程範式進行了講解。
第2部分是與深度學習相關的數學和機器學習方面的基礎知識,共分為5章。第3章介紹線性代數基礎知識;第4章介紹了概率論和數理統計相關的知識;第5章介紹概率圖模型,包括貝葉斯網路和馬爾科夫網路的原理;第6章簡要回顧機器學習的基礎知識,並介紹機器學習模型與深度學習模型之間的聯繫;第7章,深入分析幾種常用的機器學習最優化方法,包括具有一階收斂速度的梯度下降法和共軛梯度法,以及具有二階收斂速度的牛頓法和擬牛頓法。
第3部分介紹了各種常見的深度學習模型,包括一系列的深度學習模型理論及其應用,本部分共分為6章。第8章介紹全連接前饋神經網路,包括網路結構和激活函數的相關知識;第9章將深入分析反向傳播演算法,以及梯度消失問題。梯度消失也是深度神經網路訓練的一大難點,我們將介紹當前有效解決深度網路訓練中過擬合和欠擬合的常見技巧,包括Batch Normalization、殘差網路、Dropout等;第10章介紹本書的第一種無監督網路模型:自編碼器及其變種模型;第11章介紹一種深度概率圖模型——受限玻爾茲曼機,與自編碼器一樣,受限玻爾茲曼機也是一種常見的無監督網路模型,最後介紹如何將受限玻爾茲曼機應用於個性化推薦領域中;第12章,將介紹一種應用非常廣泛的網路結構——遞歸神經網路,深入分析遞歸網路的結構及其變形網路,如LSTM、GRU等,並以語言模型為例,介紹遞歸神經網路在自然語言處理中的應用;第13章介紹另一種常見的模型結構:卷積神經網路,包括卷積網路的卷積層和池化層結構設計,以及其在文本分類中的應用。
關於本書的源代碼,讀者也可以從Github上(https://github.com/innovation- cat/DeepLearningBook)下載查看。深度學習近年來處於高速發展的階段,很多更先進的理論和演算法正被不斷提出,因此本書無法覆蓋所有的模型與演算法,加之作者水平和精力所限,書中難免有錯漏之處,承蒙各位讀者不吝告知,如對本書有任何疑問或建議,讀者可以通過郵箱huanganbu@gmail.com給我反饋。
在本書的撰寫過程中,得到了很多行業專家和好友的支持,在此,特別感謝香港科技大學計算機系主任楊強教授、原百度網頁搜索高級總監鄧侃博士、原Twitter工程總監陳爾東先生,感謝他們在百忙之中抽時間審閱我的書稿,提出了很多寶貴的意見,並為我寫下推薦序。
在本書的撰寫過程中,還得到了電子工業出版社劉皎編輯和汪達文編輯的極大幫助,在此表示衷心的感謝;感謝我在騰訊公司的上級李深遠先生對我工作的支持,也感謝其他各位關心我工作的朋友和同事。
最後,非常感謝我的家人對我工作的理解和支持,他們在我寫作的過程中給予了很大的照顧和鼓勵,也是促使我能完成本書寫作的最大動力。
黃安埠
年月於深圳


※Python到底是不是數據分析最好的語言?聽聽這位大神怎麼說...
※SlopOne推薦演算法(附Python源碼)
※蝸牛般的 Python 深拷貝:為了 1% 情形,犧牲 99% 情形下的性能
※學習Python編程的19個資源
※用Python支持 7 億月活用戶的應用?Instagram 是這樣實現的
TAG:Python |
※【每月好書】深度學習框架PyTorch入門與實踐
※「每月好書」深度學習框架PyTorch入門與實踐
※深度學習之CapsuleNets理論與Python實踐!
※用Python 進行深度學習
※巧用Python實現深度學習
※Tomaso Poggio深度學習理論:深度網路「過擬合缺失」的本質
※【乾貨】深度學習實驗流程及 PyTorch 提供的解決方案
※深度學習實驗流程及PyTorch提供的解決方案
※深度學習實驗流程及 PyTorch 提供的解決方案
※我是如何在 Python 內使用深度學習實現 iPhone X的FaceID 的
※詳解深度學習中的 Normalization,不只是 BN
※深度強化學習-Policy Gradient基本實現
※如何用 OpenCV、Python 和深度學習實現面部識別?
※誰說輕薄本是Mac的天下?華為MateBook X Pro深度體驗
※如何巧用Python實現深度學習?
※Yoshua Bengio談邁向硬體友好的深度學習
※史上最強!iPhone XS Max 深度遊戲評測!
※深度學習——Bhiksha Raj 主講
※深度學習之解剖Hello World
※深度學習訓練決策,Waymo披露ChauffeurNet進展