深度學習實戰手冊 -- R語言版

[印度]普拉卡什(Prakash) 阿丘圖尼·斯里·克裡希納·拉奧(Achyutuni Sri Krishna Rao)

  • 深度學習實戰手冊 -- R語言版-preview-1
  • 深度學習實戰手冊 -- R語言版-preview-2
深度學習實戰手冊 -- R語言版-preview-1

買這商品的人也買了...

商品描述

本書介紹使用 R 語言和深度學習庫 TensorFlow、H2O 和 MXNet 構建不同的深度學習模型的方法和原理。本書共 10 章,其中第 1、2 章介紹如何在 R 中配置不同的深度學習庫以及如何構建神經網絡;第 3 ~ 7 章介紹捲積神經網絡、自動編碼器、生成模型、循環神經網絡和強化學習的構建方法和原理;第 8、9 章介紹深度學習在文本挖掘以及信號處理中的應用;第 10 章介紹遷移學習以及如何利用 GPU 部署深度學習模型。

 

本書的結構簡單明瞭,每部分由準備環節、動手操作和工作原理組成,可強化讀者的學習;內容上覆蓋了深度學習領域常見的神經網絡類型,並介紹了使用場景。同時,書中包含大量實用的示例代碼,方便讀者應用到實際項目中。

 

本書適合有一定 R 語言編程基礎,並且希望使用 R 語言快速開展深度學習項目的軟件工程師或高校師生、科研人員閱讀。

作者簡介

作者Prakash 博士是一位數據科學家和作家,目前在ZS 諮詢公司擔任數據科學經理。他獲得了美國威斯康星大學麥迪遜分校的工業和系統工程博士學位,其第2 個工程博士學位是在英國華威大學獲得的;他之前還獲得了美國威斯康星大學麥迪遜分校的碩士學位、印度國家鑄造和鍛造技術研究所(NIFFT)的學士學位。Prakash 在IEEE-Trans、EJOR 和IJPR 等多個刊物上發表了多篇文章,涉及運籌學和管理、軟計算工具和高級算法等多個研究領域。Achyutuni Sri Krishna Rao 是數據科學家、土木工程師和作家,目前在ZS 諮詢公司擔任數據科學顧問。他獲得了新加坡國立大學企業商業分析和機器學習的碩士學位、印度Warangal 國家技術研究所的學士學位。Sri Krishna 在土木工程研究領域發表了多篇文章,並參與了Packt 出版的名為Algorithms and Data Structures Using R 一書的寫作。關於譯者王洋洋,計算機碩士,狂熱的數據愛好者,現為云網絡安全領域大數據工程師,熟悉多種編程語言、大數據技術、機器學習算法和設計模式等,對自然語言處理也頗感興趣,曾翻譯《R 圖形化數據分析》一書。
 

目錄大綱

 

第1章入門1

1.1介紹1

1.2安裝R及其IDE 2

1.2.1準備2

1.2.2怎麼做2

1.3安裝Jupyter Notebook應用3

1.3.1怎麼做3

1.3.2更多內容5

1.4從R機器學習基礎開始5

1.4.1怎麼做6

1.4.2工作原理9

1.5在R中安裝深度學習的工具包11

1.6在R中安裝MXNet 11

1.6.1做好準備11

1.6.2怎麼做12

1.7在R中安裝TensorFlow 13

1.7.1做好準備13

1.7.2怎麼做14

1.7.3工作原理15

1.8在R中安裝H2O 15

1.8.1做好準備15

1.8.2怎麼做16

1.8.3工作原理17

1.8.4更多內容20

1.9使用Docker一次安裝3個包20

1.9.1做好準備20

1.9.2怎麼做21

1.9.3更多內容22

 

第2章R深度學習23

2.1始於邏輯回歸23

2.1.1做好準備23

2.1.2怎麼做24

2.2介紹數據集25

2.2.1做好準備25

2.2.2怎麼做25

2.3使用H2O執行邏輯回歸26

2.3.1做好準備26

2.3.2怎麼做27

2.3.3工作原理28

2.4使用TensorFlow執行邏輯回歸30

2.4.1做好準備30

2.4.2怎麼做30

2.4.3工作原理32

2.5可視化TensorFlow圖33

2.5.1做好準備33

2.5.2怎麼做34

2.5.3工作原理36

2.6從多層感知器開始37

2.6.1做好準備37

2.6.2怎麼做38

2.6.3更多內容38

2.7使用H2O建立神經網絡39

2.7.1做好準備39

2.7.2怎麼做39

2.7. 3工作原理41

2.8使用H2O中的網格搜索調整超參數42

2.8.1做好準備42

2.8.2怎麼做42

2.8.3工作原理43

2.9使用MXNet建立神經網絡44

2.9.1做好準備44

2.9 .2怎麼做44

2.9.3工作原理46

2.10使用TensorFlow建立神經網絡46

2.10.1做好準備46

2.10.2怎麼做46

2.10.3工作原理49

2.10.4更多內容50

 

第3章卷積神經網絡52

3.1介紹52

3.2下載並配置圖像數據集53

3.2.1做好準備54

3.2.2怎麼做54

3.2.3工作原理57

3.3學習CNN分類器的架構58

3.3.1做好準備58

3.3.2怎麼做58

3.3.3工作原理59

3.4使用函數初始化權重和偏差60

3.4.1做好準備61

3.4.2怎麼做61

3.4.3工作原理61

3.5使用函數創建一個新的捲積層61

3.5.1做好準備61

3.5.2怎麼做62

3.5.3工作原理64

3.6使用函數創建一個扁平化的捲積層65

3.6.1做好準備65

3.6. 2怎麼做65

3.6.3工作原理65

3.7使用函數扁平化密集連接層66

3.7.1做好準備66

3.7.2怎麼做66

3.7.3工作原理67

3.8定義佔位符變量67

3.8.1做好準備67

3.8.2怎麼做67

3.8.3工作原理68

3.9創建第一個卷積層68

3.9.1做好準備69

3.9.2怎麼做69

3.9.3工作原理70

3.10創建第二個卷積層70

3.10 .1做好準備70

3.10.2怎麼做71

3.10.3工作原理71

3.11扁平化第二個卷積層72

3.11.1做好準備72

3.11.2怎麼做72

3.11.3工作原理72

3.12創建第一個完全連接的層73

3.12.1做好準備73

3.12.2怎麼做73

3.12.3工作原理73

3.13將dropout應用於第一個完全連接的層73

3.13.1做好準備74

3.13.2怎麼做74

3.13.3工作原理74

3.14創建第二個帶有dropout的完全連接層74

3.14.1做好準備74

3.14.2怎麼做75

3.14.3工作原理75

3.15應用Softmax激活以獲得預測的類75

3.15.1做好準備75

3.15.2怎麼做75

3.16定義用於優化的成本函數76

3.16.1做好準備76

3.16.2怎麼做76

3.16.3工作原理76

3.17執行梯度下降成本優化77

3.17.1做好準備77

3.17. 2怎麼做77

3.18在TensorFlow會話中執行圖77

3.18.1做好準備77

3.18.2怎麼做78

3.18.3工作原理78

3.19評估測試數據的性能79

3.19.1做好準備79

3.19.2怎麼做79

3.19.3工作原理81

 

第4章使用自動編碼器的數據表示83

4.1介紹83

4.2構建自動編碼器84

4.2.1做好準備85

4.2.2怎麼做85

4.3數據歸一化86

4.3.1做好準備86

4.3.2怎麼做88

4.4構建正則自動編碼器92

4.4.1做好準備92

4.4.2怎麼做92

4.4.3工作原理92

4.5微調自動編碼器的參數93

4.6構建棧式自動編碼器94

4.6.1做好準備94

4.6.2怎麼做95

4.7構建降噪自動編碼器96

4.7.1做好準備96

4.7.2怎麼做96

4.7.3工作原理101

4.8構建並比較隨機編碼器和解碼器102

4.8.1做好準備103

4.8.2怎麼做103

4.9從自動編碼器學習流形109

4.10評估稀疏分解113

4.10.1做好準備114

4.10.2怎麼做114

4.10 .3工作原理115

 

第5章深度學習中的生成模型116

5.1比較主成分分析和受限玻爾茲曼機116

5.1.1做好準備117

5.1.2怎麼做118

5.2為伯努利分佈輸入配置受限玻爾茲曼機121

5.2.1做好準備122

5.2.2怎麼做122

5.3訓練受限玻爾茲曼機122

5.3.1做好準備123

5.3.2怎麼做123

5.4 RBM的反向或重構階段124

5.4.1做好準備124

5.4.2怎麼做124

5.5了解重構的對比散度125

5.5.1做好準備125

5.5.2怎麼做125

5.5.3工作原理126

5.6初始化並啟動一個新的TensorFlow會話126

5.6.1做好準備126

5.6.2怎麼做127

5.6.3工作原理128

5.7評估RBM的輸出129

5.7.1做好準備130

5.7.2怎麼做130

5.7.3工作原理131

5.8為協同過濾構建一個受限玻爾茲曼機132

5.8.1做好準備132

5.8.2怎麼做132

5.9執行一個完整的RBM訓練135

5.9.1做好準備137

5.9.2怎麼做137

5.10構建深度信念網絡139

5.10.1做好準備140

5.10.2怎麼做141

5.10 .3工作原理144

5.11實現前饋反向傳播神經網絡145

5.11.1做好準備145

5.11.2怎麼做146

5.11.3工作原理150

5.12建立一個深度受限玻爾茲曼機150

5.12.1做好準備150

5.12.2怎麼做151

5.12.3工作原理156

 

第6章循環神經網絡157

6.1建立一個基本的循環神經網絡157

6.1.1做好準備157

6.1.2怎麼做158

6.1. 3工作原理160

6.2建立一個雙向RNN模型161

6.2.1做好準備162

6.2.2怎麼做162

6.3建立一個深度RNN模型165

6.4建立一個基於長短期記憶的序列模型166

6.4.1怎麼做167

6.4. 2工作原理167

 

第7章強化學習170

7.1介紹170

7.2建立馬爾可夫決策過程171

7.2.1做好準備171

7.2.2怎麼做172

7.3執行基於模型的學習177

7.4進行無模型學習180

7.4.1做好準備180

7.4.2怎麼做181

 

第8章深度學習在文本挖掘中的應用185

8.1對文本數據進行預處理並提取情感185

8.1.1怎麼做185

8.1.2工作原理191

8.2使用tf-idf分析文檔192

8.2.1怎麼做192

8.2.2工作原理194

8.3使用LSTM網絡執行情感預測194

8.3.1怎麼做194

8.3.2工作原理198

8.4使用text2vec示例的應用程序198

8.4. 1怎麼做198

8.4.2工作原理201

 

第9章深度學習在信號處理中的應用202

9.1介紹並預處理音樂MIDI文件202

9.1.1做好準備202

9.1.2怎麼做203

9.2建立RBM模型204

9.2 .1做好準備204

9.2.2怎麼做204

9.3生成新的音符206

 

第10章遷移學習208

10.1介紹208

10.2舉例說明預訓練模型的使用209

10.2.1做好準備210

10.2.2怎麼做210

10.3構建遷移學習模型213

10.3.1做好準備213

10.3.2怎麼做213

10.4構建圖像分類模型216

10.4.1做好準備216

10.4.2怎麼做216

10.5在GPU上訓練深度學習模型219

10.5.1做好準備219

10.5.2怎麼做220

10.6比較使用CPU和GPU的性能221

10.6.1做好準備221

10.6.2怎麼做222

10.6.3更多內容224

10.6.4另請參閱224