前言 ix
第 1 章 引言 1
1.1 為何選擇機器學習 1
1.1.1 機器學習能夠解決的問題 2
1.1.2 熟悉任務和數據 4
1.2 為何選擇Python 4
1.3 scikit-learn 4
1.4 必要的庫和工具 5
1.4.1 Jupyter Notebook 6
1.4.2 NumPy 6
1.4.3 SciPy 6
1.4.4 matplotlib 7
1.4.5 pandas 8
1.4.6 mglearn 9
1.5 Python 2 與Python 3 的對比 9
1.6 本書用到的版本 10
1.7 第 一個應用:鳶尾花分類 11
1.7.1 初識數據 12
1.7.2 衡量模型是否成功:訓練數據與測試數據 14
1.7.3 要事第 一:觀察數據 15
1.7.4 構建第 一個模型:k 近鄰算法 16
1.7.5 做出預測 17
1.7.6 評估模型 18
1.8 小結與展望 19
第 2 章 監(jiān)督學習 21
2.1 分類與回歸 21
2.2 泛化、過擬合與欠擬合 22
2.3 監(jiān)督學習算法 24
2.3.1 一些樣本數據集 25
2.3.2 k 近鄰 28
2.3.3 線性模型 35
2.3.4 樸素貝葉斯分類器 53
2.3.5 決策樹 54
2.3.6 決策樹集成 64
2.3.7 核支持向量機 71
2.3.8 神經網絡(深度學習) 80
2.4 分類器的不確定度估計 91
2.4.1 決策函數 91
2.4.2 預測概率 94
2.4.3 多分類問題的不確定度 96
2.5 小結與展望 98
第3 章 無監(jiān)督學習與預處理 100
3.1 無監(jiān)督學習的類型 100
3.2 無監(jiān)督學習的挑戰(zhàn) 101
3.3 預處理與縮放 101
3.3.1 不同類型的預處理 102
3.3.2 應用數據變換 102
3.3.3 對訓練數據和測試數據進行相同的縮放 104
3.3.4 預處理對監(jiān)督學習的作用 106
3.4 降維、特征提取與流形學習 107
3.4.1 主成分分析 107
3.4.2 非負矩陣分解 120
3.4.3 用t-SNE 進行流形學習 126
3.5 聚類 130
3.5.1 k 均值聚類 130
3.5.2 凝聚聚類 140
3.5.3 DBSCAN 143
3.5.4 聚類算法的對比與評估 147
3.5.5 聚類方法小結 159
3.6 小結與展望 159
第4 章 數據表示與特征工程 161
4.1 分類變量 161
4.1.1 One-Hot 編碼(虛擬變量) 162
4.1.2 數字可以編碼分類變量 166
4.2 分箱、離散化、線性模型與樹 168
4.3 交互特征與多項式特征 171
4.4 單變量非線性變換 178
4.5 自動化特征選擇 181
4.5.1 單變量統(tǒng)計 181
4.5.2 基于模型的特征選擇 183
4.5.3 迭代特征選擇 184
4.6 利用專家知識 185
4.7 小結與展望 192
第5 章 模型評估與改進 193
5.1 交叉驗證 194
5.1.1 scikit-learn 中的交叉驗證 194
5.1.2 交叉驗證的優(yōu)點 195
5.1.3 分層k 折交叉驗證和其他策略 196
5.2 網格搜索 200
5.2.1 簡單網格搜索 201
5.2.2 參數過擬合的風險與驗證集 202
5.2.3 帶交叉驗證的網格搜索 203
5.3 評估指標與評分 213
5.3.1 牢記目標 213
5.3.2 二分類指標 214
5.3.3 多分類指標 230
5.3.4 回歸指標 232
5.3.5 在模型選擇中使用評估指標 232
5.4 小結與展望 234
第6 章 算法鏈與管道 236
6.1 用預處理進行參數選擇 237
6.2 構建管道 238
6.3 在網格搜索中使用管道 239
6.4 通用的管道接口 242
6.4.1 用make_pipeline 方便地創(chuàng)建管道 243
6.4.2 訪問步驟屬性 244
6.4.3 訪問網格搜索管道中的屬性 244
6.5 網格搜索預處理步驟與模型參數 246
6.6 網格搜索選擇使用哪個模型 248
6.7 小結與展望 249
第7 章 處理文本數據 250
7.1 用字符串表示的數據類型 250
7.2 示例應用:電影評論的情感分析 252
7.3 將文本數據表示為詞袋 254
7.3.1 將詞袋應用于玩具數據集 255
7.3.2 將詞袋應用于電影評論 256
7.4 停用詞 259
7.5 用tf-idf 縮放數據 260
7.6 研究模型系數 263
7.7 多個單詞的詞袋(n 元分詞) 263
7.8 分詞、詞干提取與詞形還原 267
7.9 主題建模與文檔聚類 270
7.10 小結與展望 277
第8 章 全書總結 278
8.1 處理機器學習問題 278
8.2 從原型到生產 279
8.3 測試生產系統(tǒng) 280
8.4 構建你自己的估計器 280
8.5 下一步怎么走 281
8.5.1 理論 281
8.5.2 其他機器學習框架和包 281
8.5.3 排序、推薦系統(tǒng)與其他學習類型 282
8.5.4 概率建模、推斷與概率編程 282
8.5.5 神經網絡 283
8.5.6 推廣到更大的數據集 283
8.5.7 磨練你的技術 284
8.6 總結 284
關于作者 285
關于封面 285