天天看點

《深度學習導論及案例分析》一導讀

《深度學習導論及案例分析》一導讀

“深度學習”一詞大家已經不陌生了,随着在不同領域取得了超越其他方法的成功,深度學習在學術界和工業界掀起了一次神經網絡發展史上的新浪潮。運用深度學習解決實際問題,不僅是學術界高素質人才所需的技能,而且是工業界商業巨頭進行競争的核心武器。為适應這一發展的需要,作者以長期的相關研究和教學工作為基礎,經過2~3年的調研和努力,終于編寫完本書。這是一本關于深度學習的入門教材和導論性參考書,閱聽人對象包括計算機、自動化、信号處理、機電工程、應用數學等相關專業的研究所學生、教師和科研工作者,本書有助于他們在具備神經網絡的基礎知識後進一步了解深度學習的理論和方法。

自2006年誕生以來,深度學習很快成長壯大,并有一些相關的英文書籍陸續出版。雖然國内也開始出現譯著,但對深度學習的内容概括得并不全面,遠不能夠滿足市場需求。本書的内容幾乎涵蓋了深度學習的所有重要方面,結構上分為基礎理論和案例分析兩個部分。在基礎理論部分,本書不僅介紹了深度學習的起源和發展、特點和優勢,而且描述了深度學習的9種重要模型,包括受限玻耳茲曼機、自編碼器、深層信念網絡、深層玻耳茲曼機、和積網絡、卷積神經網絡、深層堆疊網絡、循環神經網絡和長短時記憶網絡。此外,還讨論了這些模型的學習算法、變種模型和混合模型,以及它們在圖像視訊處理、音頻處理和自然語言處理等領域中的廣泛應用,并總結了有關的開發工具、問題和挑戰。在案例分析部分,本書主要挑選了一些深度學習的程式案例進行細緻的說明和分析,指導讀者學習有關的程式代碼和開發工具,以便在解決實際問題時加以靈活利用。其中,每個程式案例都包括子產品簡介、運作過程、代碼分析和使用技巧這4個部分,層次結構清晰,以利于讀者選擇和學習,并在應用中拓展思路。本書的一個不足之處是:案例分析部分沒有涉及“和積網絡”和“深層堆疊網絡”,這是因為和積網絡的運作需要大規模叢集的硬體條件,另外也很難找到便于構造深層堆疊網絡案例的程式代碼。

本書的一大特色是從初學者的角度出發,在知識結構的布局上注重深入淺出,對深度學習的模型涵蓋得較全面,文獻引用非常豐富,既适合讀者入門學習,又有助于他們深入鑽研。同時,本書也試圖糾正許多讀者對深度學習的一些錯誤了解,比如認為多層感覺器不是深度學習模型,認為自編碼器能夠直接用來識别手寫字元,認為受限玻耳茲曼機也是嚴格意義上的深度學習模型,等等。

本書的另一個特色是通過程式案例介紹深度學習模型。這對缺乏相關背景知識的讀者可能非常有幫助,使他們在知其然不知其是以然的情況下運作深度學習程式并獲得計算結果,進而在積累實踐經驗和感性認識的過程中逐漸了解深度學習的有關内容。本書的案例涉及三種常見的程式設計語言:matlab、python和c++。其中,很多深度學習程式是用matlab編寫的,可以直接運作。如果使用python語言編寫深度學習程式,則可以調用theano開源庫;若使用c++語言,則可以調用caffe開源庫。不同的語言分析案例有助于讀者全面了解深度學習模型和算法的實作途徑,并根據自己的熟練程度靈活選擇。

本書是集體智慧的結晶。北京工業大學計算機學院的劉波、胡海鶴和劉兆英等老師,以及張亞紅、曾少鋒、沈成恺、楊紅麗和丁勇等同學,在文獻和軟體資料的收集整理方面提供了很大幫助。此外,華章公司的溫莉芳副總經理對本書的出版給予了大力支援,張夢玲編輯對本書内容的編排提出了許多寶貴意見。在這裡向他們表示衷心的感謝。

最後,還要感謝父母、夫妻和兒女在本書寫作期間給予的了解,感謝他們的真情鼓勵、默默付出以及對非規律生活的寬容。同時,作者在此也因減少了對他們的關愛而深表愧疚和歉意。

限于作者水準,本書在内容取材和結構編排上可能存在不妥之處,希望使用本書的教師、學生、專家以及其他讀者提出寶貴的批評和建議。

<a href="https://yq.aliyun.com/articles/89320">第一部分基礎理論</a>

<a href="https://yq.aliyun.com/articles/89324">第1章概述</a>

<a href="https://yq.aliyun.com/articles/89324">1.1深度學習的起源和發展</a>

<a href="https://yq.aliyun.com/articles/89339">1.2深層網絡的特點和優勢</a>

<a href="https://yq.aliyun.com/articles/89342">1.3深度學習的模型和算法</a>

<a href="https://yq.aliyun.com/articles/89346">第2章預備知識</a>

<a href="https://yq.aliyun.com/articles/89346">2.1矩陣運算</a>

<a href="https://yq.aliyun.com/articles/89348">2.2機率論的基本概念</a>

2.2.1機率的定義和性質

2.2.2随機變量和機率密度函數

2.2.3期望和方差

<a href="https://yq.aliyun.com/articles/89349">2.3資訊論的基本概念</a>

<a href="https://yq.aliyun.com/articles/89479">2.4機率圖模型的基本概念</a>

<a href="https://yq.aliyun.com/articles/89493">2.5機率有向圖模型</a>

<a href="https://yq.aliyun.com/articles/89500">2.6機率無向圖模型</a>

<a href="https://yq.aliyun.com/articles/89505">2.7部分有向無圈圖模型</a>

<a href="https://yq.aliyun.com/articles/89512">2.8條件随機場</a>

<a href="https://yq.aliyun.com/articles/89519">2.9馬爾可夫鍊</a>

<a href="https://yq.aliyun.com/articles/89525">2.10機率圖模型的學習</a>

<a href="https://yq.aliyun.com/articles/89530">2.11機率圖模型的推理</a>

<a href="https://yq.aliyun.com/articles/89535">2.12馬爾可夫鍊蒙特卡羅方法</a>

<a href="https://yq.aliyun.com/articles/89541">2.13玻耳茲曼機的學習</a>

<a href="https://yq.aliyun.com/articles/89551">2.14通用反向傳播算法</a>

<a href="https://yq.aliyun.com/articles/89552">2.15通用逼近定理</a>

<a href="https://yq.aliyun.com/articles/89558">第3章受限玻耳茲曼機</a>

<a href="https://yq.aliyun.com/articles/89558">3.1受限玻耳茲曼機的标準模型</a>

<a href="https://yq.aliyun.com/articles/89560">3.2受限玻耳茲曼機的學習算法</a>

<a href="https://yq.aliyun.com/articles/89565">3.3受限玻耳茲曼機的變種模型</a>

第4章自編碼器

4.1自編碼器的标準模型

4.2自編碼器的學習算法

4.3自編碼器的變種模型

第5章深層信念網絡

5.1深層信念網絡的标準模型

5.2深層信念網絡的生成學習算法

5.3深層信念網絡的判别學習算法

5.4深層信念網絡的變種模型

第6章深層玻耳茲曼機

6.1深層玻耳茲曼機的标準模型

6.2深層玻耳茲曼機的生成學習算法

6.3深層玻耳茲曼機的判别學習算法

6.4深層玻耳茲曼機的變種模型

第7章和積網絡

7.1和積網絡的标準模型

7.2和積網絡的學習算法

7.3和積網絡的變種模型

第8章卷積神經網絡

8.1卷積神經網絡的标準模型

8.2卷積神經網絡的學習算法

8.3卷積神經網絡的變種模型

第9章深層堆疊網絡

9.1深層堆疊網絡的标準模型

9.2深層堆疊網絡的學習算法

9.3深層堆疊網絡的變種模型

第10章循環神經網絡

10.1循環神經網絡的标準模型

10.2循環神經網絡的學習算法

10.3循環神經網絡的變種模型

第11章長短時記憶網絡

11.1長短時記憶網絡的标準模型

11.2長短時記憶網絡的學習算法

11.3長短時記憶網絡的變種模型

第12章深度學習的混合模型、廣泛應用和開發工具

12.1深度學習的混合模型

12.2深度學習的廣泛應用

12.2.1圖像和視訊處理

12.2.2語音和音頻處理

12.2.3自然語言處理

12.2.4其他應用

12.3深度學習的開發工具

第13章深度學習的總結、批評和展望

第二部分案例分析

第14章實驗背景

14.1運作環境

14.2實驗資料

14.3代碼工具

第15章自編碼器降維案例

15.1自編碼器降維程式的子產品簡介

15.2自編碼器降維程式的運作過程

15.3自編碼器降維程式的代碼分析

15.3.1關鍵子產品或函數的主要功能

15.3.2主要代碼分析及注釋

15.4自編碼器降維程式的使用技巧

第16章深層感覺器識别案例

16.1深層感覺器識别程式的子產品簡介

16.2深層感覺器識别程式的運作過程

16.3深層感覺器識别程式的代碼分析

16.3.1關鍵子產品或函數的主要功能

16.3.2主要代碼分析及注釋

16.4深層感覺器識别程式的使用技巧

第17章深層信念網絡生成案例

17.1深層信念網絡生成程式的子產品簡介

17.2深層信念網絡生成程式的運作過程

17.3深層信念網絡生成程式的代碼分析

17.3.1關鍵子產品或函數的主要功能

17.3.2主要代碼分析及注釋

17.4深層信念網絡生成程式的使用技巧

第18章深層信念網絡分類案例

18.1深層信念網絡分類程式的子產品簡介

18.2深層信念網絡分類程式的運作過程

18.3深層信念網絡分類程式的代碼分析

18.3.1關鍵子產品或函數的主要功能

18.3.2主要代碼分析及注釋

18.4深層信念網絡分類程式的使用技巧

第19章深層玻耳茲曼機識别案例

19.1深層玻耳茲曼機識别程式的子產品簡介

19.2深層玻耳茲曼機識别程式的運作過程

19.3深層玻耳茲曼機識别程式的代碼分析

19.3.1關鍵子產品或函數的主要功能

19.3.2主要代碼分析及注釋

19.4深層玻耳茲曼機識别程式的使用技巧

第20章卷積神經網絡識别案例

20.1deeplearntoolbox程式的子產品簡介

20.2deeplearntoolbox程式的運作過程

20.3deeplearntoolbox程式的代碼分析

20.3.1關鍵函數的主要功能

20.3.2主要代碼分析及注釋

20.4deeplearntoolbox程式的使用技巧

20.5caffe程式的子產品簡介

20.6caffe程式的運作過程

20.7caffe程式的代碼分析

20.7.1關鍵函數的主要功能

20.7.2主要代碼分析及注釋

20.8caffe程式的使用技巧

第21章循環神經網絡填充案例

21.1槽值填充的含義

21.2循環神經網絡填充程式的子產品簡介

21.3循環神經網絡填充程式的運作過程

21.4循環神經網絡填充程式的代碼分析

21.4.1關鍵函數的主要功能

21.4.2主要代碼分析及注釋

21.5循環神經網絡填充程式的使用技巧

第22章長短時記憶網絡分類案例

22.1長短時記憶網絡分類程式的子產品簡介

22.2長短時記憶網絡分類程式的運作過程

22.3長短時記憶網絡分類程式的代碼分析

22.3.1關鍵子產品或函數的主要功能

22.3.2主要代碼分析及注釋

22.4長短時記憶網絡分類程式的使用技巧

附錄1 caffe在windows上的安裝過程

附錄2 theano的安裝過程

參考文獻

繼續閱讀