發表於2024-12-23
1.中國工程院院士陳誌傑傾情作序,業內專傢黃文濤、陳曉禾聯袂力薦。
2.以深度學習算法入門為主要內容,以NumPy、SciPy等科學計算庫,深度學習主流算法,深度學習前沿研究,深度學習服務雲平颱構建四大主綫進行介紹。
3.詳細講解瞭算法背後的數學原理,給齣瞭基於TensorFlow和Theano的算法實現技術。
4.以MNIST手寫數字識彆為例,應用所介紹的技術,這是一本兼顧理論與實踐的深度學習自學參考書。
本書以深度學習算法入門為主要內容,通過係統介紹Python、NumPy、SciPy等科學計算庫,深度學習主流算法,深度學習前沿研究,深度學習服務雲平颱構建四大主綫,嚮讀者係統地介紹瞭深度學習的主要內容和研究進展。本書介紹瞭Python、NumPy、SciPy的使用技巧,麵嚮榖歌推齣的開源深度學習框架TensorFlow,嚮讀者展示瞭利用TensorFlow和Theano框架實現綫性迴歸、邏輯迴歸、多層感知器、捲積神經網絡、遞歸神經網絡、長短時記憶網絡、去噪自動編碼機、堆疊自動編碼機、受限玻爾茲曼機、深度信念網絡等,並將這些技術用於MNIST手寫數字識彆任務。本書不僅講述瞭深度學習算法本身,而且重點講述瞭如何將這些深度學習算法包裝成Web服務。本書旨在幫助廣大工程技術人員快速掌握深度學習相關理論和實踐,並將這些知識應用到實際工作中。
閆濤,網名“*老程序員”。中科院蘇州生物醫學工程技術研究所副研究員(兼),科技部重點專項:帕金森癥早期預防、“十三五”齣生缺陷預防係統研究課題組成員,專注於深度學習在醫學影像學診斷、醫學圖像分割、醫學圖像診斷性標注等應用方嚮的技術開發。CSDN博客重度使用者,博客地址http://blog.csdn.net/yt7589。北京動維康科技有限公司聯閤創始人、首席技術官,主持開發瞭移動醫療係統隨診醫生。專注於移動互聯網軟件開發20年,精通主流開發技術,尤其擅長處理大容量、高並發係統的設計與實現。開源軟件倡導者,本書部分代碼的GitHub網址為https://github.com/yt7589/dlp/tree/master/book。
當前關於深度學習的書籍有很多。一方麵,有一部分書籍介紹流行算法和網絡架構的實現,基於開源深度學習框架(如TensorFlow),結閤常用數據集(如MNIST、ImageNet),實現圖像識彆等典型應用,讀者可以很容易地做齣一個演示係統,但是對於算法實現原理和調參思路卻很難有深刻的理解,很難將書中所說應用到實踐中去。另一方麵,有一部分書籍側重於算法原理的講解,對數學公式推導和定理證明非常重視,但是對具體算法實現介紹得很少,使讀者對理論似懂非懂,對算法的具體實現感到無從下手。本書以普通本科生都能看懂的數學原理,深入淺齣地講解瞭常用算法,同時基於常用的深度學習框架Theano和TensorFlow對這些算法的實現方法進行瞭詳細的講解,使讀者不僅可以掌握算法的數學原理,還可以掌握基於Theano及TensorFlow的實現技術,從數學原理上掌握調參方法的思路和原理,為讀者將書中所學知識應用到自己的項目實踐打下瞭堅實的基礎,是一本很好的深度學習自學參考書。
—— 黃文濤
中國電子科技集團創新院人工智能研究室首席科學傢
西安電子科技大學人工智能學院客座教授
約翰霍普金斯大學醫學院研究員、博士後
當前深度學習在各行各業的應用越來越廣,因此越來越多的崗位要求深度學習方麵的應用知識。深度學習在醫學研究領域同樣得到深入的應用,中科院蘇州生物醫學工程技術研究所迫切需要精通深度學習理論及應用的專業人士加入我們的團隊,但是在實踐過程中,我們發現很多人在如何應用機器學習解決實際問題方麵,存在要麼對算法數學原理理解不深入,要麼對程序實現技術缺乏經驗的現象。這本書從基本數學原理齣發,詳細講述瞭當前流行算法多層感知器(MLP)、捲積神經網絡(CNN)、遞歸神經網絡(RNN)、長短時記憶網絡(LSTM)、受限玻爾茲曼機(RBM)、深度信念網絡(DBN)背後的數學原理,同時詳細講解瞭基於Theano和TensorFlow的實現技術。閆濤不僅對深度學習算法實現技術進行瞭詳細描述,為瞭能夠組成一個基於深度學習算法的完整應用係統,在書中最後一部分,應用服務器開發技術,以MNIST手寫數字識彆為例,嚮讀者演示瞭一個完整的深度學習應用係統的實現技術,這一點在同類書籍中還是非常少見的。本書對於初學者來說是一本很好的入門讀物,對於廣大的機器學習從業者來說也是一本很好的參考書。對於想要將深度學習算法應用到自己實際項目中去的讀者,這本書更是提供瞭一套完整的實現技術,讀者可以基於書中的內容,在短時間內搭建起屬於自己的深度學習應用係統。
—— 陳曉禾
中科院蘇州生物醫學工程技術研究所百人計劃專傢
中科院蘇州生物醫學工程技術研究所電子室主任
目 錄
第一部分 深度學習算法概述
第1章 深度學習算法簡介 2
1.1 神經網絡發展簡史 2
1.1.1 神經網絡第一次興起 3
1.1.2 神經網絡沉寂期(20世紀80年代―21世紀) 4
1.1.3 神經網絡技術積纍期(20世紀90年代―2006年) 5
1.1.4 深度學習算法崛起(2006年至今) 8
1.2 深度學習現狀 10
1.2.1 傳統神經網絡睏境 10
1.2.2 深度多層感知器 12
1.2.3 深度捲積神經網絡 14
1.2.4 深度遞歸神經網絡 15
1.3 深度學習研究前瞻 16
1.3.1 自動編碼機 17
1.3.2 深度信念網絡 18
1.3.3 生成式網絡最新進展 19
1.4 深度學習框架比較 20
1.4.1 TensorFlow 20
1.4.2 Theano 21
1.4.3 Torch 22
1.4.4 DeepLearning4J 23
1.4.5 Caffe 23
1.4.6 MXNet 24
1.4.7 CNTK 27
1.4.8 深度學習框架造型指導原則 27
1.5 深度學習入門路徑 28
1.5.1 運行MNIST 28
1.5.2 深度學習框架的選擇 29
1.5.3 小型試驗網絡 33
1.5.4 訓練生産網絡 33
1.5.5 搭建生産環境 34
1.5.6 持續改進 35
第二部分 深度學習算法基礎
第2章 搭建深度學習開發環境 38
2.1 安裝Python開發環境 38
2.1.1 安裝最新版本Python 38
2.1.2 Python虛擬環境配置 39
2.1.3 安裝科學計算庫 40
2.1.4 安裝最新版本Theano 40
2.1.5 圖形繪製 40
2.2 NumPy簡易教程 43
2.2.1 Python基礎 43
2.2.2 多維數組的使用 51
2.2.3 嚮量運算 58
2.2.4 矩陣運算 60
2.2.5 綫性代數 62
2.3 TensorFlow簡易教程 68
2.3.1 張量定義 69
2.3.2 變量和placeholder 69
2.3.3 神經元激活函數 71
2.3.4 綫性代數運算 72
2.3.5 操作數據集 74
2.4 Theano簡易教程 77
2.4.1 安裝Theano 77
2.4.2 Theano入門 78
2.4.3 Theano矩陣相加 79
2.4.4 變量和共享變量 80
2.4.5 隨機數的使用 84
2.4.6 Theano求導 84
2.5 綫性迴歸 86
2.5.1 問題描述 86
2.5.2 綫性模型 88
2.5.3 綫性迴歸學習算法 89
2.5.4 解析法 90
2.5.5 Theano實現 93
第3章 邏輯迴歸 100
3.1 邏輯迴歸數學基礎 100
3.1.1 邏輯迴歸算法的直觀解釋 100
3.1.2 邏輯迴歸算法數學推導 101
3.1.3 牛頓法解邏輯迴歸問題 103
3.1.4 通用學習模型 106
3.2 邏輯迴歸算法簡單應用 113
3.3 MNIST手寫數字識彆庫簡介 124
3.4 邏輯迴歸MNIST手寫數字識彆 126
第4章 感知器模型和MLP 139
4.1 感知器模型 139
4.1.1 神經元模型 139
4.1.2 神經網絡架構 143
4.2 數值計算形式 144
4.2.1 前嚮傳播 144
4.2.2 誤差反嚮傳播 145
4.2.3 算法推導 147
4.3 嚮量化錶示形式 152
4.4 應用要點 153
4.4.1 輸入信號模型 154
4.4.2 權值初始化 155
4.4.3 早期停止 155
4.4.4 輸入信號調整 156
4.5 TensorFlow實現MLP 156
第5章 捲積神經網絡 174
5.1 捲積神經網絡原理 174
5.1.1 捲積神經網絡的直觀理解 174
5.1.2 捲積神經網絡構成 177
5.1.3 捲積神經網絡設計 191
5.1.4 遷移學習和網絡微調 193
5.2 捲積神經網絡的TensorFlow實現 195
5.2.1 模型搭建 197
5.2.2 訓練方法 203
5.2.3 運行方法 208
第6章 遞歸神經網絡 212
6.1 遞歸神經網絡原理 212
6.1.1 遞歸神經網絡錶示方法 213
6.1.2 數學原理 214
6.1.3 簡單遞歸神經網絡應用示例 219
6.2 圖像標記 226
6.2.1 建立開發環境 226
6.2.2 圖像標記數據集處理 227
6.2.3 單步前嚮傳播 229
6.2.4 單步反嚮傳播 231
6.2.5 完整前嚮傳播 234
6.2.6 完整反嚮傳播 236
6.2.7 單詞嵌入前嚮傳播 239
6.2.8 單詞嵌入反嚮傳播 241
6.2.9 輸齣層前嚮/反嚮傳播 243
6.2.10 輸齣層代價函數計算 245
6.2.11 圖像標注網絡整體架構 248
6.2.12 代價函數計算 249
6.2.13 生成圖像標記 255
6.2.14 網絡訓練過程 258
6.2.15 網絡持久化 265
第7章 長短時記憶網絡 269
7.1 長短時記憶網絡原理 269
7.1.1 網絡架構 269
7.1.2 數學公式 272
7.2 MNIST手寫數字識彆 274
第三部分 深度學習算法進階
第8章 自動編碼機 286
8.1 自動編碼機概述 286
8.1.1 自動編碼機原理 287
8.1.2 去噪自動編碼機 287
8.1.3 稀疏自動編碼機 288
8.2 去噪自動編碼機TensorFlow實現 291
8.3 去噪自動編碼機的Theano實現 298
第9章 堆疊自動編碼機 307
9.1 堆疊去噪自動編碼機 308
9.2 TensorFlow實現 322
9.3 Theano實現 341
第10章 受限玻爾茲曼機 344
10.1 受限玻爾茲曼機原理 344
10.1.1 網絡架構 344
10.1.2 能量模型 346
10.1.3 CD-K算法 351
10.2 受限玻爾茲曼機TensorFlow實現 353
10.3 受限玻爾茲曼機Theano實現 362
第11章 深度信念網絡 381
11.1 深度信念網絡原理 381
11.2 深度信念網絡TensorFlow實現 382
11.3 深度信念網絡Theano實現 403
第四部分 機器學習基礎
第12章 生成式學習 420
12.1 高斯判彆分析 422
12.1.1 多變量高斯分布 422
12.1.2 高斯判決分析公式 423
12.2 樸素貝葉斯 436
12.2.1 樸素貝葉斯分類器 436
12.2.2 拉普拉斯平滑 439
12.2.3 多項式事件模型 441
第13章 支撐嚮量機 444
13.1 支撐嚮量機概述 444
13.1.1 函數間隔和幾何間隔 445
13.1.2 最優距離分類器 448
13.2 拉格朗日對偶 448
13.3 最優分類器算法 450
13.4 核方法 453
13.5 非綫性可分問題 455
13.6 SMO算法 457
13.6.1 坐標上升算法 458
13.6.2 SMO算法詳解 458
第五部分 深度學習平颱API
第14章 Python Web編程 462
14.1 Python Web開發環境搭建 462
14.1.1 CherryPy框架 463
14.1.2 CherryPy安裝 463
14.1.3 測試CherryPy安裝是否成功 464
14.2 最簡Web服務器 465
14.2.1 程序啓動 465
14.2.2 顯示HTML文件 466
14.2.3 靜態內容處理 468
14.3 用戶認證係統 471
14.4 AJAX請求詳解 473
14.4.1 添加數據 474
14.4.2 修改數據 476
14.4.3 刪除數據 478
14.4.4 REST服務實現 479
14.5 數據持久化技術 487
14.5.1 環境搭建 487
14.5.2 數據庫添加操作 488
14.5.3 數據庫修改操作 489
14.5.4 數據庫刪除操作 490
14.5.5 數據庫查詢操作 491
14.5.6 數據庫事務操作 492
14.5.7 數據庫連接池 494
14.6 任務隊列 499
14.7 媒體文件上傳 502
14.8 Redis操作 504
14.8.1 Redis安裝配置 504
14.8.2 Redis使用例程 505
第15章 深度學習雲平颱 506
15.1 神經網絡持久化 506
15.1.1 數據庫錶設計 506
15.1.2 整體目錄結構 511
15.1.3 訓練過程及模型文件保存 512
15.2 神經網絡運行模式 528
15.3 AJAX請求調用神經網絡 531
15.3.1 顯示靜態網頁 531
15.3.2 上傳圖片文件 540
15.3.3 AJAX接口 543
15.4 請求閤法性驗證 545
15.4.1 用戶注冊和登錄 546
15.4.2 客戶端生成請求 553
15.4.3 服務器端驗證請求 555
15.5 異步結果處理 557
15.5.1 網頁異步提交 557
15.5.2 應用隊列管理模塊 559
15.5.3 任務隊列 560
15.5.4 結果隊列 561
15.5.5 異步請求處理流程 562
15.6 神經網絡持續改進 563
15.6.1 應用遺傳算法 563
15.6.2 重新訓練 564
15.6.3 生成式對抗網絡 565
後 記 567
參考文獻 568
前 言
2016年上半年,隨著AlphaGo戰勝圍棋世界冠軍李世石,深度學習技術迅速進入大眾的視野,成為熱門技術。無論是科技領域還是創業投資領域,深度學習技術都受到瞭前所未有的關注,麵嚮深度學習技術的初創公司不斷刷新融資數額的紀錄。
隨著深度學習技術的流行,市場上對於深度學習人纔的需求量激增。但是,由於深度學習技術涉及高等數學、綫性代數、數理統計和機器學習相關知識,故學習麯綫比較陡峭。目前國內外著名大學深度學習相關專業碩博士、國傢重點實驗室學生,都被BAT等一綫互聯網公司搶光瞭,人纔大戰有愈演愈烈之勢。普通公司和初創公司,在這場人纔大戰中處於劣勢,麵臨著越來越嚴重的人纔荒。
隨著深度學習技術的深入應用,企業對深度學習技術人纔的渴求是正常的,但是當前市場上對深度學習技術人纔的需求是非理性的。一方麵,大傢瘋搶的深度學習人纔都是著名院校的碩博士和重點實驗室的研究員,但是這部分人所受的訓練和精通的領域是做算法研究,而企業的目的是實際應用,二者在很大程度上是不匹配的,最後可能是企業下瞭血本卻沒有産生效益;另一方麵,對於很多深度學習應用來說,對項目本身業務的理解,比對深度學習算法的理解要重要得多,而由於業務專傢不懂深度學習技術,緻使很多好的應用領域沒有閤適的人纔來做。
編寫本書的目的就是解決上述問題,希望讀者可以通過對本書的學習,迅速掌握深度學習的理論框架和知識體係,具備在自己的專業領域內應用深度學習技術的能力,同時還具備跟蹤深度學習領域最新進展的能力,能夠獨立復現頂級期刊文章中介紹的新方法和新理論。
本書內容及知識體係
第一部分為深度學習算法概述,包括第1章。
第1章簡單介紹神經網絡和深度學習發展史、現狀和發展趨勢,介紹並比較瞭深度學習開源框架,還介紹瞭開源框架的選擇標準。
第二部分為深度學習算法基礎,主要講述深度學習算法中比較成熟的算法,包括第2章到第7章。
第2章介紹Python開發環境的搭建、NumPy的使用、Theano的安裝和使用,並用本章介紹的知識實現一個簡單的綫性迴歸算法的程序。
第3章講述邏輯迴歸算法的數學推導過程,並且講述瞭通用學習模型的相關知識,還利用邏輯迴歸算法對MNIST手寫數字識彆數據集進行訓練和識彆。
第4章講述多層感知器模型算法推導過程,以及數值計算與嚮量錶示方式,並利用多層感知器模型對MNIST手寫數字識彆數據集進行訓練和識彆。
第5章講述捲積神經網絡的數學原理,詳細講解捲積神經網絡的層間稀疏連接、權值共享和最大池化等技術,並利用捲積神經網絡模型對MNIST手寫數字識彆數據集進行訓練和識彆。
第6章講述遞歸神經網絡的數學原理,以字符RNN網絡為例,嚮讀者演示瞭簡單的計算機寫作係統。而且,以微軟圖像標注數據集為例,以測試驅動開發的形式,嚮讀者介紹利用遞歸神經網絡做圖像標注的典型應用。
第7章講述長短時記憶網絡的網絡架構和數學原理,並以大型影評數據集為例,采用長短時記憶網絡進行情感計算。
第三部分為深度學習算法進階,主要講述深度學習算法中比較前沿的算法,包括第8章到第11章。
第8章講述自動編碼機的數學原理,重點介紹實際中應用較多的去噪自動編碼機和稀疏自動編碼機,並以去噪自動編碼機為例,對MNIST手寫數字識彆數據集進行特徵提取。
深度學習算法實踐(基於Theano和TensorFlow) 下載 mobi epub pdf txt 電子書 格式
深度學習算法實踐(基於Theano和TensorFlow) 下載 mobi pdf epub txt 電子書 格式 2024
深度學習算法實踐(基於Theano和TensorFlow) 下載 mobi epub pdf 電子書深度學習算法實踐(基於Theano和TensorFlow) mobi epub pdf txt 電子書 格式下載 2024