预购商品
书目分类
特别推荐
本書將使用RStudio和非常棒的mlr套裝程式開啟你的機器學習之旅。這本實用指南簡化了理論,避免了不必要的複雜統計和數學知識,所有核心的機器學習技術都通過圖形和易於掌握的示例進行清晰的解釋。每一章的內容都十分引人入勝,你將掌握如何把新的演算法付諸實踐,以解決各種預測分析問題,包括泰坦尼克沉船事件中不同乘客的倖存概率、垃圾郵件過濾、毒酒事件調查等。
第Ⅰ部分 簡介 第1章 機器學習介紹 2 1.1 機器學習的概念 3 1.1.1 人工智慧和機器學習 4 1.1.2 模型和演算法的區別 5 1.2 機器學習演算法的分類 7 1.2.1 監督、無監督和半監督機器學習演算法的區別 7 1.2.2 分類、回歸、降維和聚類演算法 9 1.2.3 深度學習簡介 11 1.3 關於機器學習道德影響的思考 12 1.4 使用R語言進行機器學習的原因 13 1.5 使用哪些資料集 13 1.6 從本書可以學到什麼 13 1.7 本章小結 14 第2章 使用tidyverse整理、操作和繪製資料 15 2.1 tidyverse和整潔資料的概念 15 2.2 載入tidyverse 17 2.3 tibble套裝程式及其功能介紹 17 2.3.1 創建tibble 18 2.3.2 將現有資料框轉換為tibble 18 2.3.3 數據框和tibble的區別 19 2.4 dplyr套裝程式及其功能介紹 21 2.4.1 使用dplyr操作CO2資料集 21 2.4.2 連結dplyr函數 25 2.5 ggplot2套裝程式及其功能介紹 26 2.6 tidyr套裝程式及其功能介紹 29 2.7 purrr套裝程式及其功能介紹 32 2.7.1 使用map()函數替換 for迴圈 33 2.7.2 返回原子向量而非列表 34 2.7.3 在map()系列函數中使用匿名函數 35 2.7.4 使用walk()產生函數的副作用 35 2.7.5 同時遍歷多個列表 37 2.8 本章小結 38 2.9 練習題答案 38 第Ⅱ部分 分類演算法 第3章 基於相似性的k近鄰分類 42 3.1 k近鄰演算法的概念 42 3.1.1 如何學習k近鄰演算法 42 3.1.2 如果票數相等,會出現什麼情況 44 3.2 建立個kNN模型 45 3.2.1 載入和研究糖尿病資料集 45 3.2.2 運用mlr訓練個kNN模型 47 3.2.3 mlr想要實現的目標:定義任務 47 3.2.4 告訴mlr使用哪種演算法:定義學習器 48 3.2.5 綜合使用任務和學習器:訓練模型 49 3.3 平衡模型誤差的兩個來源:偏差-方差權衡 51 3.4 運用交叉驗證判斷是否過擬合或欠擬合 52 3.5 交叉驗證kNN模型 53 3.5.1 留出法交叉驗證 53 3.5.2 k-折法交叉驗證 55 3.5.3 留一法交叉驗證 57 3.6 演算法將要學習的內容以及它們必須知道的內容:參數和超參數 59 3.7 調節k值以改進模型 60 3.7.1 在交叉驗證中調整超參數 61 3.7.2 使用模型進行預測 63 3.8 kNN演算法的優缺點 64 3.9 本章小結 64 3.10 練習題答案 65 第4章 對數幾率回歸分類 67 4.1 什麼是對數幾率回歸 67 4.1.1 對數幾率回歸是如何學習模型的 68 4.1.2 當有兩個以上的類別時,該怎麼辦 73 4.2 建立個對數幾率回歸模型 74 4.2.1 載入和研究titanic資料集 75 4.2.2 充分利用資料:特徵工程與特徵選擇 75 4.2.3 數據視覺化 77 4.2.4 訓練模型 80 4.2.5 處理缺失資料 80 4.2.6 訓練模型(使用缺失值插補方法) 81 4.3 交叉驗證對數幾率回歸模型 81 4.3.1 包含缺失值插補的交叉驗證 81 4.3.2 準確率是重要的性能度量指標嗎 82 4.4 理解模型:幾率比 83 4.4.1 將模型參數轉換為幾率比 83 4.4.2 當一個單位的增長沒有意義時如何理解 84 4.5 使用模型進行預測 84 4.6 對數幾率回歸演算法的優缺點 84 4.7 本章小結 85 4.8 練習題答案 85 第5章 基於判別分析的分離方法 88 5.1 什麼是判別分析 88 5.1.1 判別分析是如何學習的 90 5.1.2 如果有兩個以上的類別,應如何處理 92 5.1.3 學習曲線而不是直線:QDA 93 5.1.4 LDA和QDA如何進行預測 93 5.2 構建線性和二次判別模型 95 5.2.1 載入和研究葡萄酒資料集 95 5.2.2 繪製資料圖 96 5.2.3 訓練模型 97 5.3 LDA和QDA演算法的優缺點 100 5.4 本章小結 101 5.5 練習題答案 101 第6章 樸素貝葉斯和支援向量機分類演算法 103 6.1 什麼是樸素貝葉斯演算法 104 6.1.1 使用樸素貝葉斯進行分類 105 6.1.2 計算分類和連續預測變數的類條件概率 106 6.2 建立個樸素貝葉斯模型 107 6.2.1 載入和研究HouseVotes84資料集 107 6.2.2 繪製資料圖 108 6.2.3 訓練模型 109 6.3 樸素貝葉斯演算法的優缺點 110 6.4 什麼是支援向量機(SVM)演算法 110 6.4.1 線性可分SVM 111 6.4.2 如果類別不是完全可分的,怎麼辦 112 6.4.3 非線性可分的SVM 113 6.4.4 SVM演算法的超參數 115 6.4.5 當存在多個類別時,怎麼辦 116 6.5 構建個SVM模型 117 6.5.1 載入和研究垃圾郵件資料集 118 6.5.2 調節超參數 119 6.5.3 訓練模型 122 6.6 交叉驗證SVM模型 123 6.7 SVM演算法的優缺點 124 6.8 本章小結 124 6.9 練習題答案 125 第7章 決策樹分類演算法 127 7.1 什麼是遞迴分區演算法 127 7.1.1 使用基尼增益劃分樹 129 7.1.2 如何處理連續和多級分類預測變數 130 7.1.3 rpart演算法的超參數 132 7.2 構建個決策樹模型 133 7.3 載入和研究zoo資料集 134 7.4 訓練決策樹模型 134 7.5 交叉驗證決策樹模型 139 7.6 決策樹演算法的優缺點 140 7.7 本章小結 140 第8章 使用隨機森林演算法和boosting技術改進決策樹 142 8.1 集成學習技術:bagging、boosting和stacking 142 8.1.1 利用採樣資料訓練模型:bagging 143 8.1.2 從前序模型的錯誤中進行學習:boosting 144 8.1.3 通過其他模型的預測進行學習:stacking 147 8.2 建立個隨機森林模型 148 8.3 建立個XGBoost模型 150 8.4 隨機森林和XGBoost演算法的優缺點 155 8.5 在演算法之間進行基準測試 155 8.6 本章小結 156 第Ⅲ部分 回歸演算法 第9章 線性回歸 158 9.1 什麼是線性回歸 158 9.1.1 如何處理多個預測變數 160 9.1.2 如何處理分類預測變數 162 9.2 建立個線性回歸模型 163 9.2.1 載入和研究臭氧資料集 164 9.2.2 插補缺失值 166 9.2.3 自動化特徵選擇 168 9.2.4 在交叉驗證中包含插補和特徵選擇 174 9.2.5 理解模型 175 9.3 線性回歸的優缺點 178 9.4 本章小結 178 9.5 練習題答案 179 第10章 廣義加性模型的非線性回歸 180 10.1 使用多項式項使線性回歸非線性 180 10.2 更大的靈活性:樣條曲線和廣義加性模型 182 10.2.1 GAM如何學習平滑功能 183 10.2.2 GAM如何處理分類變數 184 10.3 建立個GAM 184 10.4 GAM的優缺點 188 10.5 本章小結 188 10.6 練習題答案 189 第11章 利用嶺回歸、LASSO回歸和彈性網路控制過擬合 190 11.1 正則化的概念 190 11.2 嶺回歸的概念 191 11.3 L2范數的定義及其在嶺回歸中的應用 193 11.4 L1范數的定義及其在LASSO中的應用 195 11.5 彈性網路的定義 197 11.6 建立嶺回歸、LASSO和彈性網路模型 198 11.6.1 載入和研究Iowa資料集 199 11.6.2 訓練嶺回歸模型 200 11.6.3 訓練LASSO模型 205 11.6.4 訓練彈性網路模型 208 11.7 對嶺回歸、LASSO、彈性網路和OLS進行基準測試並對比 210 11.8 嶺回歸、LASSO和彈性網路的優缺點 211 11.9 本章小結 212 11.10 練習題答案 212 第12章 使用kNN、隨機森林和XGBoost進行回歸 215 12.1 使用kNN演算法預測連續變數 215 12.2 使用基於決策樹的演算法預測連續變數 217 12.3 建立個kNN回歸模型 219 12.3.1 載入和研究燃料資料集 220 12.3.2 調節超參數k 224 12.4 建立個隨機森林回歸模型 226 12.5 建立個XGBoost回歸模型 227 12.6 對kNN、隨機森林和XGBoost模型的構建過程進行基準測試 229 12.7 kNN、隨機森林和XGBoost演算法的優缺點 230 12.8 本章小結 230 12.9 練習題答案 231 第Ⅳ部分 降維演算法 第13章 化方差的主成分分析法 234 13.1 降維的目的 234 13.1.1 視覺化高維數據 235 13.1.2 維數災難的後果 235 13.1.3 共線性的後果 235 13.1.4 使用降維減輕維數災難和共線性的影響 236 13.2 主成分分析的概念 236 13.3 構建個PCA模型 240 13.3.1 載入和研究鈔票資料集 240 13.3.2 執行PA 242 13.3.3 繪製PCA結果 243 13.3.4 計算新資料的成分得分 246 13.4 PCA的優缺點 247 13.5 本章小結 247 13.6 練習題答案 247 第14章 化t-SNE和UMAP的相似性 249 14.1 t-SNE的含義 249 14.2 建立個t-SNE模型 253 14.2.1 執行t-SNE 253 14.2.2 繪製t-SNE結果 255 14.3 UMAP的含義 256 14.4 建立個UMAP模型 258 14.4.1 執行UMAP 258 14.4.2 繪製UMAP結果 260 14.4.3 計算新資料的UMAP嵌入 261 14.5 t-SNE和UMAP的優缺點 261 14.6 本章小結 261 14.7 練習題答案 262 第15章 自組織映射和局部線性嵌入 263 15.1 先決條件:節點網格和流形 263 15.2 自組織映射的概念 264 15.2.1 創建節點網格 265 15.2.2 隨機分配權重,並將樣本放在節點上 266 15.2.3 更新節點權重以更好地匹配節點內部樣本 267 15.3 建立個SOM 268 15.3.1 載入和研究跳蚤資料集 269 15.3.2 訓練SOM 270 15.3.3 繪製SOM結果 272 15.3.4 將新資料映射到SOM 275 15.4 局部線性嵌入的概念 277 15.5 建立個LLE 278 15.5.1 載入和研究S曲線資料集 278 15.5.2 訓練LLE 280 15.5.3 繪製LLE結果 281 15.6 建立跳蚤資料集的LLE 282 15.7 SOM和LLE的優缺點 283 15.8 本章小結 284 15.9 練習題答案 284 第Ⅴ部分 聚類演算法 第16章 使用k-均值演算法尋找中心聚類 288 16.1 k-均值演算法的定義 288 16.1.1 Lloyd 演算法 289 16.1.2 MacQueen演算法 290 16.1.3 Hartigan-演算法 291 16.2 建立個k-均值演算法 模型 292 16.2.1 載入和研究GvHD資料集 292 16.2.2 定義任務和學習器 294 16.2.3 選擇聚類的數量 295 16.2.4 調節k值和選擇k-均值演算法 298 16.2.5 訓練終的、調節後的k-均值演算法模型 301 16.2.6 使用模型預測新資料的聚類 303 16.3 k-均值演算法的優缺點 304 16.4 本章小結 304 16.5 練習題答案 304 第17章 層次聚類 306 17.1 什麼是層次聚類 306 17.1.1 聚合層次聚類 309 17.1.2 分裂層次聚類 310 17.2 建立個聚合層次聚類模型 311 17.2.1 選擇聚類數量 312 17.2.2 切割樹狀圖以選擇平坦的聚類集合 317 17.3 聚類穩定嗎 318 17.4 層次聚類的優缺點 320 17.5 本章小結 320 17.6 練習題答案 320 第18章 基於密度的聚類:DBSCAN和OPTICS 323 18.1 基於密度的聚類的定義 323 18.1.1 DBSCAN演算法是如何學習的 324 18.1.2 OPTICS演算法是如何學習的 326 18.2 建立DBSCAN模型 331 18.2.1 載入和研究banknote資料集 331 18.2.2 調節ε和minPts超參數 332 18.3 建立OPTICS模型 343 18.4 基於密度的聚類的優缺點 345 18.5 本章小結 346 18.6 練習題答案 346 第19章 基於混合建模的分佈聚類 348 19.1 混合模型聚類的概念 348 19.1.1 使用EM演算法計算概率 349 19.1.2 EM演算法的期望和化步驟 350 19.1.3 如何處理多個變數 351 19.2 建立個用於聚類的高斯混合模型 353 19.3 混合模型聚類的優缺點 356 19.4 本章小結 357 19.5 練習題答案 357 第20章 終筆記和進一步閱讀 359 20.1 簡要回顧機器學習概念 359 20.1.1 監督機器學習、無監督機器學習和半監督機器學習 360 20.1.2 用於平衡模型性能的偏差-方差平衡 362 20.1.3 使用模型驗證判斷過擬合/欠擬合 362 20.1.4 在超參數調節下化模型性能 364 20.1.5 使用缺失值插補處理缺失資料 365 20.1.6 特徵工程和特徵選擇 365 20.1.7 通過集成學習技術提高模型性能 366 20.1.8 使用正則化防止過擬合 366 20.2 學完本書後,還可以學習哪些內容 367 20.2.1 深度學習 367 20.2.2 強化學習 367 20.2.3 通用R資料科學和tidyverse 367 20.2.4 mlr教程以及創建新的學習器/性能度量 367 20.2.5 廣義加性模型 367 20.2.6 集成方法 368 20.2.7 支持向量機 368 20.2.8 異常檢測 368 20.2.9 時間序列預測 368 20.2.10 聚類 368 20.2.11 廣義線性模型 368 20.2.12 半監督機器學習 369 20.2.13 建模光譜數據 369 20.3 結語 369 附錄 複習統計學概念 370
Hefin I. Rhys是一位元有著8年教授R語言、統計學和機器學習經驗的生命科學家和細胞學家。他將自己的統計學/機器學習知識貢獻給多項學術研究,並熱衷於講授統計學、機器學習和資料視覺化方面的課程。
客服公告
热门活动
订阅电子报