TensorFlow機器學習(原書第2版)
內容描述
本書是升級版,不僅包含機器學習的基本概念,
以及如何利用TensorFlow庫快速構建強大的機器學習模型,
還涵蓋了前沿的神經網絡技術,如深度語音分類器、面部識別和CIFAR-10自動編碼。
另外,本書新增瞭如何將代碼更新到TensorFlow 2.0,
以及在Docker容器中運行代碼所需要的技術。
目錄大綱
譯者序
序
前言
關於本書
致謝
第一部分機器學習基礎
第1章開啟機器學習之旅2
1.1 機器學習的基本原理3
1.1.1 參數5
1.1.2 學習和推理6
1.2 數據表示和特徵7
1.3 度量距離13
1.4 機器學習的類型15
1.4.1 監督學習15
1.4.2 無監督學習16
1.4.3 強化學習17
1.4.4 元學習17
1.5 TensorFlow19
1.6 後續各章概述21
小結22
第2章TensorFlow必備知識23
2.1 確保TensorFlow工作正常24
2.2 表示張量25
2.3 創建運算29
2.4 在會話中執行運算30
2.5 將代碼理解為圖32
2.6 在Jupyter中編寫代碼34
2.7 使用變量37
2.8 保存和加載變量38
2.9 使用TensorBoard可視化數據40
2.9.1 實現移動平均40
2.9.2 可視化移動平均42
2.10 把所有綜合到一起:TensorFlow系統架構和API44
小結45
第二部分核心學習算法
第3章線性回歸及其他48
3.1 形式化表示48
3.2 線性回歸52
3.3 多項式模型55
3.4 正則化58
3.5 線性回歸的應用62
小結63
第4章使用回歸進行呼叫量預測64
4.1 什麼是31166
4.2 為回歸清洗數據67
4.3 什麼是鍾形曲線?預測高斯分佈71
4.4 訓練呼叫回歸預測器72
4.5 可視化結果並繪製誤差74
4.6 正則化和訓練測試集拆分76
小結78
第5章分類問題基礎介紹79
5.1 形式化表示80
5.2 衡量性能82
5.2.1 準確率82
5.2.2 精度和召回率82
5.2.3 受試者操作特徵曲線84
5.3 使用線性回歸進行分類85
5.4 使用邏輯回歸89
5.4.1 解決1維邏輯回歸90
5.4.2 解決2維邏輯回歸93
5.5 多分類器96
5.5.1 一對所有96
5.5.2 一對一97
5.5.3 softmax回歸97
5.6 分類的應用101
小結101
第6章情感分類:大型影評數據集103
6.1 使用詞袋模型104
6.1.1 在影評中應用詞袋模型105
6.1.2 清洗所有的電影評論107
6.1.3 在詞袋模型上進行探索性數據分析108
6.2 使用邏輯回歸構建情感分類器109
6.2.1 模型訓練的創建110
6.2.2 訓練創建的模型111
6.3 使用情感分類器進行預測112
6.4 測量分類器的有效性115
6.5 創建softmax回歸情感分類器119
6.6 向Kaggle提交結果125
小結127
第7章自動聚類數據128
7.1 使用TensorFlow遍歷文件129
7.2 音頻特徵提取130
7.3 使用k-means聚類135
7.4 分割音頻138
7.5 使用自組織映射進行聚類140
7.6 應用聚類144
小結145
第8章從Android的加速度計數據推斷用戶活動146
8.1 Walking數據集中的用戶活動數據147
8.1.1 創建數據集149
8.1.2 計算急動度並提取特徵向量150
8.2 基於急動度大小聚類相似參與者153
8.3 單個參與者的不同類別活動155
小結157
第9章隱馬爾可夫模型158
9.1 一個不可解釋模型的例子159
9.2 馬爾可夫模型159
9.3 隱馬爾可夫模型簡介161
9.4 前向算法162
9.5 維特比解碼165
9.6 使用HMM166
9.6.1 對視頻建模166
9.6.2 對DNA建模166
9.6.3 對圖像建模167
9.7 HMM的應用167
小結167
第10章詞性標註和詞義消歧168
10.1 HMM示例回顧:雨天或晴天170
10.2 詞性標註173
10.2.1 重點:使用HMM訓練和預測詞性176
10.2.2 生成帶歧義的詞性標註數據集179
10.3 構建基於HMM的詞性消歧算法181
10.4 運行HMM並評估其輸出188
10.5 從布朗語料庫獲得更多的訓練數據190
10.6 為詞性標註定義評估指標196
小結198
第三部分神經網絡範式
第11章自編碼器200
11.1 神經網絡簡介201
11.2 自編碼器簡介203
11.3 批量訓練207
11.4 處理圖像207
11.5 自編碼器的應用211
小結212
第12章應用自編碼器:CIFAR-10圖像數據集213
12.1 什麼是CIFAR-10214
12.2 自編碼器作為分類器218
12.3 去噪自編碼器223
12.4 堆棧自編碼器226
小結229
第13章強化學習230
13.1 相關概念231
13.1.1 策略232
13.1.2 效用233
13.2 應用強化學習233
13.3 實現強化學習235
13.4 探索強化學習的其他應用242
小結243
第14章卷積神經網絡244
14.1 神經網絡的缺點245
14.2 卷積神經網絡簡介245
14.3 準備圖像246
14.3.1 生成過濾器249
14.3.2 使用過濾器進行卷積251
14.3.3 最大池化253
14.4 在TensorFlow中實現CNN254
14.4.1 測量性能257
14.4.2 訓練分類器258
14.5 提高性能的提示和技巧258
14.6 CNN的應用259
小結259
第15章構建現實世界中的CNN:VGG-Face和VGG-Face Lite260
15.1 為CIFAR-10構建一個現實世界的CNN架構262
15.1.1 加載和準備CIFAR-10圖像數據263
15.1.2 執行數據增強265
15.2 為CIFAR-10構建深層CNN架構267
15.3 訓練和應用一個更好的CIFAR-10 CNN271
15.4 在CIFAR-10測試和評估CNN273
15.4.1 CIFAR-10準確率結果和ROC曲線276
15.4.2 評估softmax對每個類的預測277
15.5 構建用於人臉識別的VGG-Face280
15.5.1 選擇一個VGG-Face的子集來訓練VGG-Face Lite282
15.5.2 TensorFlow的Dataset API和數據增強282
15.5.3 創建TensorFlow數據集285
15.5.4 使用TensorFlow數據集訓練287
15.5.5 VGG-Face Lite模型和訓練288
15.5.6 訓練和評估VGG-Face Lite290
15.5.7 使用VGG-Face Lite進行評估和預測292
小結295
第16章循環神經網絡296
16.1 RNN介紹297
16.2 實現循環神經網絡298
16.3 使用時間序列數據的預測模型300
16.4 應用RNN303
小結303
第17章LSTM和自動語音識別304
17.1 準備LibriSpeech語料庫305
17.1.1 下載、清洗和準備LibriSpeech OpenSLR數據305
17.1.2 轉換音頻307
17.1.3 生成每個音頻的轉錄308
17.1.4 聚合音頻和轉錄309
17.2 使用深度語音模型310
17.2.1 為深度語音模型準備輸入音頻數據311
17.2.2 準備文本轉錄為字符級數值數據315
17.2.3 TensorFlow中的深度語音模型316
17.2.4 TensorFlow中的連接主義時間分類319
17.3 訓練和評估深度語音模型321
小結323
第18章用於聊天機器人的seq2seq模型325
18.1 基於分類和RNN326
18.2 理解seq2seq架構327
18.3 符號的向量表示331
18.4 把它們綜合到一起333
18.5 收集對話數據340
小結341
第19章效用342
19.1 偏好模型344
19.2 圖像嵌入347
19.3 圖像排序350
小結355
接下來355
附錄安裝說明356