深度學習快速實踐 — 基於 TensorFlow 和 Keras 的深度神經網絡優化與訓練

Mike Bernico 王衛兵等譯

  • 出版商: 機械工業
  • 出版日期: 2020-04-01
  • 定價: $414
  • 售價: 7.9$327
  • 語言: 簡體中文
  • 頁數: 163
  • 裝訂: 平裝
  • ISBN: 7111646274
  • ISBN-13: 9787111646273
  • 相關分類: DeepLearningTensorFlow
  • 立即出貨 (庫存 < 3)

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

商品描述

《深度學習快速實踐--——基於TensorFlow和Keras的深度神經網絡優化與訓練》
內容包括神經網絡的基礎、深度神經網絡的優化和驗證、深度神經網絡開發和訓練環境的構建、
使用Tensor-Board進行網絡訓練的監控和模的超參數優化。
本書詳細介紹的深度學習問題,包括基本的回歸問題、二元分類問題和多元分類問題,
還包括較為複雜的捲積神經網絡對圖像的分類和使用預訓練CNN進行的遷移學習;
使用遞歸神經網絡進行時間序列預測、自然語言分類,
以及通過sequence-to-sequence模型進行機器翻譯;
深度強化學習的智能體構建,以及生成對抗網絡的圖像生成。

目錄大綱

譯者序
原書序
原書前言
章深度學習的構建模塊//1
1.1深度神經網絡的架構//1
1.1.1神經元//1
1.1.2深度學習中的代價函數和成本函數// 4
1.1.3前向傳播過程//5
1.1.4反向傳播函數//5
1.1.5隨機和小批量梯度下降//6
1.2深度學習的優化算法//6
1.2.1採用具有動量的梯度下降//6
1.2.2RMSProp算法//7
1.2.3Adam優化器//7
1.3深度學台架構//7
1.3.1什麼是TensorFlow?//7
1.3.2什麼是Keras?//8
1.3.3TensorFlow的熱門替代品//8
1.3.4TensorFlow和Keras對GPU的要求//8
1.3.5安裝NvidiaCUDAToolkit和cuDNN//9
1.3.6安裝Python//10
1.3.7安裝TensorFlow和Keras //11
1.4深度學習數據集的構建//12
1.4.1深度學習中的偏差和方差誤差//13
1.4.2train、val和test數據集//13
1.4.3深度神經網絡中的偏差和方差管理//14
1.4.4K-Fold交驗證//14
1.5小結//15

第2章用深度學習解決回歸問題//16
2.1回歸分析和深度神經網絡//16
2.1.1使用神經網絡進行回歸的好處//16
2.1.2使用神經網絡進行回歸時需要注意的問題//17
2.2使用深度神經網絡進行回歸//17
2.2.1如何規劃機器學習問題//17
2.2.2定義示例問題//17
2.2.3加載數據集//18
2.2.4定義成本函數//19
2.3在Keras中建立MLP//19
2.3.1輸入層的構形//20
2.3.2隱藏層的構形//20
2.3.3輸出層的構形//20
2.3.4神經網絡的架構//20
2.3.5訓練Keras模型//21
2.3.6評測模型的性能//22
2.4在Keras中建立深度神經網絡//22
2.4.1評測深度神經網絡的性能//24
2.4. 2模型超參數的調優//25
2.5保存並加載經過訓練的Keras模型//25
2.6小結//25

第3章用TensorBoard監控網絡訓練//27
3.1TensorBoard的概述//27
3.2設置TensorBoard// 27
3.2.1安裝TensorBoard//28
3.2.2TensorBoard如何與Keras/TensorFlow會話//28
3.2.3運行TensorBoard//28
3.3將Keras連接到TensorBoard//29
3.3.1Keras回調簡介//29
3.3.2創建TensorBoard回調函數//29
3.4使用TensorBoard //31
3.4.1網絡訓練的可視化//31
3.4.2網絡結構的可視化//32
3.4.3網絡破碎的可視化//32
3.5小結//33

第4章用深度學習解決二元分類問題/ /34
4.1二元分類和深度神經網絡//34
4.1.1深度神經網絡的優點//34
4.1.2深度神經網絡的缺點//35
4.2案例研究—癲癇發作識別//35
4.2.1定義數據集//35
4.2.2加載數據//35
4.2.3模型的輸入和輸出//36
4.2.4成本函數//36
4.2.5性能評估所採用的度量指標//37
4.3在Keras中構建二元分類器//37
4.3.1輸入層//38
4.3.2隱藏層//38
4.3.3輸出層//39
4.3.4網絡層的合併//39
4.3.5訓練模型//40
4.4使用Keras中的檢查點回調函數//40
4.5在自定義回調函數中測量ROCAUC//41
4.6精度、召回率和f1積分的測量//42
4.7小結//43

第5章用Keras解決多元分類問題//44
5.1多元分類和深度神經網絡/ /44
5.1.1優勢//44
5.1.2缺點//45
5.2案例研究—手寫數字的分類//45
5.2.1問題定義//45
5.2.2模型的輸入和輸出//45
5.2.3成本函數//46
5.2.4度量//46
5.3在Keras中構建多元分類器//47
5.3.1加載MNIST//47
5.3.2輸入層//47
5.3.3隱藏層//47
5.3.4輸出層//48
5.3.5網絡的總體結構//49
5.3.6訓練//49
5.3.7多類模型中scikit-learn度量指標的應用//50
5.4通過Dropout進行方差控制//51
5.5採用正則化進行方差控制//54
5.6小結//55

第6章超參數的優化//56
6.1網絡體系結構應該被視為超參數//56
6.1.1站在巨人的肩膀上//56
6.1.2添加至過度擬合,然後進行正則化//57
6.1.3實用建議//57
6.2應該優化哪些超參數?//57
6.3超參數優化策略//58
6.3.1常用的策略//58
6.3.2通過scikit-learn使用隨機搜索//59
6.3.3Hyperband//60
6.4小結//62

第7章從頭開始訓練CNN// 63
7.1卷積的引入//63
7.1.1卷積層的工作原理//64
7.1.2卷積層的好處//65
7.1.3匯集層//66
7.1.4批量正則化//67
7.2在Keras中訓練卷積神經網絡//67
7.2.1輸入//67
7.2.2輸出//67
7.2.3成本函數和度量指標//67
7.2.4卷積層//68
7.2.5全相連層//68
7.2.6Keras中的多GPU模型//69
7.2.7訓練//69
7.3使用數據擴增//70
7.3.1Keras中的圖像數據擴增器(ImageDataGenerator類)//71
7.3.2具有數據擴增的訓練//72
7.4小結//72

第8章使用預訓練CNN進行
遷移學習//73
8.1遷移學習概述//73
8.2何時使用遷移學習//74
8.2.1有限的數據/ /74
8.2.2公共問題域//74
8.3源/目標量和相似度的影響//75
8.3.1更多的數據總是有益的//75
8.3.2源/目標域的相似度//75
8.4在Keras中進行遷移學習//75
8.4.1目標域概述//76
8.4.2源域概述//76
8.4.3源網絡體系結構//76
8.4.4網絡體系結構的遷移//77
8.4.5數據準備//77
8.4.6數據輸入//78
8.4.7訓練(特徵提取) //78
8.4.8訓練(調優)//80
8.5小結//81

第9章從頭開始訓練RNN//82
9.1遞歸神經網絡概述//82
9.1.1如何讓神經元進行遞歸?//83
9.1.2長短時間記憶網絡//84
9.1.3在時間上的反向傳播//86
9.2重溫時間序列問題//86
9.2.1存量和流量//87
9.2.2ARIMA和ARIMAX預測//87
9.3使用LSTM網絡進行時間序列預測//88
9.3.1數據準備//89
9.3.2網絡輸出//92
9.3.3網絡體系結構//93
9.3.4stateful與statelessLSTM網絡//93
9.3. 5訓練//93
9.3.6測量性能//94
9.4小結//96

10章從頭開始訓練具有單詞嵌入的LSTM網絡//97
10.1自然語言處理簡介//97
10.1.1語義分析//98
10.1.2文檔分類//98
10.2文本的矢量化//99
10.2.1NLP術語//99
10.2.2BagofWord模型//99
10.2.3詞乾化、詞形歸併和停止詞//100
10.2.4計數和TF-IDF矢量化//100
10.3單詞嵌入//101
10.3.1一個簡單的例子//102
10.3.2通過預測進行的單詞嵌入學習//102
10.3.3通過計數進行的單詞嵌入學習//104
10.3.4從單詞到文檔//104
10.4Keras嵌入層//105
10.5用於自然語言處理的1DCNN//105
10.6文檔分類的案例研究//106
10.6.1使用Keras嵌入層和LSTM網絡進行情感分析//106
10.6.2使用和不使用GloVe的文檔分類//110
10.7小結//117

11章訓練sequence-tosequence模型//118
11.1 sequence-to-sequence模型//118
11.1.1sequence-to-sequence模型的應用//118
11.1.2sequence-to-sequence模型的體系結構//119
11.1.3字符與單詞//120
11.1.4Teacherforcing//120
11.1.5Attention//121
11.1.6翻譯的度量//121
11.2機器翻譯//121
11.2.1了解數據集//122
11.2.2加載數據//122
11.2.3onehot編碼// 124
11.2.4訓練網絡體系結構//125
11.2.5網絡體系結構(用於推理)//126
11.2.6體系結構的合併//127
11.2.7訓練//128
11.2.8推理//129
11.3小結//133

12章使用深度強化學習//134
12.1強化學習概述//134
12.1.1Markov決策過程//135
12.1.2Q-learning//136
12.1.3無限的狀態空間//136
12.1.4DeepQ網絡//137
12.1.5守成與探索//138
12.1.6DeepMind//138
12.2Keras的強化學台架構//139
12.2.1安裝Keras-RL//139
12.2.2安裝OpenAIgym//139
12.2.3使用OpenAIgym//139
12.3在Keras中構建一個強化學習智能體//140
12.3.1CartPole//140
12.3.2月球著陸器//143
12.4小結//145

13章生成對抗網絡//146
13.1GAN的概述//146
13.2深度卷積GAN的體系結構//147
13.2.1對抗訓練體系結構//147
13.2.2生成器的體系結構//148
13.2.3鑑別器的體系結構//149
13.2.4堆訓練//149
13.3GAN如何失效//151
13.3.1穩定性//151
13.3.2模式塌縮//151
13.4GAN的安全選擇//151
13.5使用KerasGAN進行的MNIST圖像生成//152
13.5.1加載數據集//152
13.5.2構建生成器//153
13.5.3構建鑑別器//153
13.5.4堆疊模型的構建//154
13.5.5訓練循環//155
13.5.6模型評估//157
13.6使用KerasGAN進行CIFAR-10圖像的生成//160
13.6.1加載CIFAR-10//160
13.6 .2構建生成器//160
13.6.3構建鑑別器//161
13.6.4訓練循環//161
13.6.5模型評估//161
13.7小結//162