目 錄
Data Mining:Practical Machine Learning Tools and Techniques,Third Edition
齣版者的話
譯者序
前言
緻謝
第一部分 數據挖掘簡介
第1章 緒論2
1.1 數據挖掘和機器學習2
1.1.1 描述結構模式3
1.1.2 機器學習5
1.1.3 數據挖掘6
1.2 簡單的例子:天氣問題和其他問題6
1.2.1 天氣問題7
1.2.2 隱形眼鏡:一個理想化的問題8
1.2.3 鳶尾花:一個經典的數值型數據集10
1.2.4 CPU性能:介紹數值預測11
1.2.5 勞資協商:一個更真實的例子11
1.2.6 大豆分類:一個經典的機器學習的成功例子13
1.3 應用領域14
1.3.1 Web挖掘15
1.3.2 包含評判的決策15
1.3.3 圖像篩選16
1.3.4 負載預測17
1.3.5 診斷17
1.3.6 市場和銷售18
1.3.7 其他應用19
1.4 機器學習和統計學20
1.5 將泛化看做搜索21
1.5.1 枚舉概念空間22
1.5.2 偏差22
1.6 數據挖掘和道德24
1.6.1 再識彆25
1.6.2 使用個人信息25
1.6.3 其他問題26
1.7 補充讀物27
第2章 輸入:概念、實例和屬性29
2.1 概念29
2.2 樣本31
2.2.1 關係32
2.2.2 其他實例類型34
2.3 屬性35
2.4 輸入準備37
2.4.1 數據收集37
2.4.2 ARFF格式38
2.4.3 稀疏數據40
2.4.4 屬性類型40
2.4.5 缺失值41
2.4.6 不正確的值42
2.4.7 瞭解數據43
2.5 補充讀物43
第3章 輸齣:知識錶達44
3.1 錶44
3.2 綫性模型44
3.3 樹45
3.4 規則48
3.4.1 分類規則49
3.4.2 關聯規則52
3.4.3 包含例外的規則52
3.4.4 錶達能力更強的規則54
3.5 基於實例的錶達56
3.6 聚類58
3.7 補充讀物60
第4章 算法:基本方法61
4.1 推斷基本規則61
4.1.1 缺失值和數值屬性62
4.1.2 討論64
4.2 統計建模64
4.2.1 缺失值和數值屬性67
4.2.2 用於文檔分類的樸素貝葉斯68
4.2.3 討論70
4.3 分治法:建立決策樹70
4.3.1 計算信息量73
4.3.2 高度分支屬性74
4.3.3 討論75
4.4 覆蓋算法:建立規則76
4.4.1 規則與樹77
4.4.2 一個簡單的覆蓋算法77
4.4.3 規則與決策列錶80
4.5 挖掘關聯規則81
4.5.1 項集81
4.5.2 關聯規則83
4.5.3 有效地生成規則85
4.5.4 討論87
4.6 綫性模型87
4.6.1 數值預測:綫性迴歸87
4.6.2 綫性分類:Logistic迴歸88
4.6.3 使用感知機的綫性分類90
4.6.4 使用Winnow的綫性分類91
4.7 基於實例的學習92
4.7.1 距離函數93
4.7.2 有效尋找最近鄰93
4.7.3 討論97
4.8 聚類97
4.8.1 基於距離的迭代聚類98
4.8.2 快速距離計算99
4.8.3 討論100
4.9 多實例學習100
4.9.1 聚集輸入100
4.9.2 聚集輸齣100
4.9.3 討論101
4.10 補充讀物101
4.11 Weka實現103
第5章 可信度:評估學習結果104
5.1 訓練和測試104
5.2 預測性能106
5.3 交叉驗證108
5.4 其他評估方法109
5.4.1 留一交叉驗證109
5.4.2 自助法109
5.5 數據挖掘方法比較110
5.6 預測概率113
5.6.1 二次損失函數114
5.6.2 信息損失函數115
5.6.3 討論115
5.7 計算成本116
5.7.1 成本敏感分類117
5.7.2 成本敏感學習118
5.7.3 提升圖119
5.7.4 ROC麯綫122
5.7.5 召迴率-精確率麯綫124
5.7.6 討論124
5.7.7 成本麯綫125
5.8 評估數值預測127
5.9 最小描述長度原理129
5.10 在聚類方法中應用MDL原理131
5.11 補充讀物132
第二部分 高級數據挖掘
第6章 實現:真正的機器學習方案134
6.1 決策樹135
6.1.1 數值屬性135
6.1.2 缺失值136
6.1.3 剪枝137
6.1.4 估計誤差率138
6.1.5 決策樹歸納的復雜度140
6.1.6 從決策樹到規則140
6.1.7 C4.5:選擇和選項141
6.1.8 成本-復雜度剪枝141
6.1.9 討論142
6.2 分類規則142
6.2.1 選擇測試的標準143
6.2.2 缺失值和數值屬性143
6.2.3 生成好的規則144
6.2.4 使用全局優化146
6.2.5 從局部決策樹中獲得規則146
6.2.6 包含例外的規則149
6.2.7 討論151
6.3 關聯規則152
6.3.1 建立頻繁模式樹152
6.3.2 尋找大項集157
6.3.3 討論157
6.4 擴展綫性模型158
6.4.1 最大間隔超平麵159
6.4.2 非綫性類邊界160
6.4.3 支持嚮量迴歸161
6.4.4 核嶺迴歸163
6.4.5 核感知機164
6.4.6 多層感知機165
6.4.7 徑嚮基函數網絡171
6.4.8 隨機梯度下降172
6.4.9 討論173
6.5 基於實例的學習174
6.5.1 減少樣本集的數量174
6.5.2 對噪聲樣本集剪枝174
6.5.3 屬性加權175
6.5.4 泛化樣本集176
6.5.5 用於泛化樣本集的距離函數176
6.5.6 泛化的距離函數177
6.5.7 討論178
6.6 局部綫性模型用於數值預測178
6.6.1 模型樹179
6.6.2 構建樹179
6.6.3 對樹剪枝180
6.6.4 名目屬性180
6.6.5 缺失值181
6.6.6 模型樹歸納的僞代碼181
6.6.7 從模型樹到規則184
6.6.8 局部加權綫性迴歸184
6.6.9 討論185
6.7 貝葉斯網絡186
6.7.1 預測186
6.7.2 學習貝葉斯網絡189
6.7.3 算法細節190
6.7.4 用於快速學習的數據結構192
6.7.5 討論194
6.8 聚類194
6.8.1 選擇聚類的個數195
6.8.2 層次聚類195
6.8.3 層次聚類的例子196
6.8.4 增量聚類199
6.8.5 分類效用203
6.8.6 基於概率的聚類204
6.8.7 EM算法205
6.8.8 擴展混閤模型206
6.8.9 貝葉斯聚類207
6.8.10 討論209
6.9 半監督學習210
6.9.1 用於分類的聚類210
6.9.2 協同訓練212
6.9.3 EM和協同訓練212
6.9.4 討論213
6.10 多實例學習213
6.10.1 轉換為單實例學習213
6.10.2 升級學習算法215
6.10.3 專用多實例方法215
6.10.4 討論216
6.11 Weka實現216
第7章 數據轉換218
7.1 屬性選擇219
7.1.1 獨立於方案的選擇220
7.1.2 搜索屬性空間222
7.1.3 具體方案相關的選擇223
7.2 離散化數值屬性225
7.2.1 無監督離散化226
7.2.2 基於熵的離散化226
7.2.3 其他離散化方法229
7.2.4 基於熵的離散化與基於誤差的離散化229
7.2.5 離散屬性轉換成數值屬性230
7.3 投影230
7.3.1 主成分分析231
7.3.2 隨機投影233
7.3.3 偏最小二乘迴歸233
7.3.4 從文本到屬性嚮量235
7.3.5 時間序列236
7.4 抽樣236
7.5 數據清洗237
7.5.1 改進決策樹237
7.5.2 穩健迴歸238
7.5.3 檢測異常239
7.5.4 一分類學習239
7.6 多分類問題轉換成二分類問題242
7.6.1 簡單方法242
7.6.2 誤差校正輸齣編碼243
7.6.3 集成嵌套二分法244
7.7 校準類概率246
7.8 補充讀物247
7.9 Weka實現249
第8章 集成學習250
8.1 組閤多種模型250
8.2 裝袋251
8.2.1 偏差-方差分解251
8.2.2 考慮成本的裝袋253
8.3 隨機化253
8.3.1 隨機化與裝袋254
8.3.2 鏇轉森林254
8.4 提升255
8.4.1 AdaBoost算法255
8.4.2 提升算法的威力257
8.5 纍加迴歸258
8.5.1 數值預測258
8.5.2 纍加Logistic迴歸259
8.6 可解釋的集成器260
8.6.1 選擇樹260
8.6.2 Logistic模型樹262
8.7 堆棧262
8.8 補充讀物264
8.9 Weka實現265
第9章 繼續:擴展和應用266
9.1 應用數據挖掘266
9.2 從大型的數據集裏學習268
9.3 數據流學習270
9.4 融閤領域知識272
9.5 文本挖掘273
9.6 Web挖掘276
9.7 對抗情形278
9.8 無處不在的數據挖掘280
9.9 補充讀物281
第三部分 Weka數據挖掘平颱
第10章 Weka簡介284
10.1 Weka中包含瞭什麼284
10.2 如何使用Weka285
10.3 Weka的其他應用286
10.4 如何得到Weka286
第11章 Explorer界麵287
11.1 開始287
11.1.1 準備數據287
11.1.2 將數據載入Explorer288
11.1.3 建立決策樹289
11.1.4 查看結果290
11.1.5 重做一遍292
11.1.6 運用模型292
11.1.7 運行錯誤的處理294
11.2 探索Explorer294
11.2.1 載入及過濾文件294
11.2.2 訓練和測試學習方案299
11.2.3 自己動手:用戶分類器301
11.2.4 使用元學習器304
11.2.5 聚類和關聯規則305
11.2.6 屬性選擇306
11.2.7 可視化306
11.3 過濾算法307
11.3.1 無監督屬性過濾器307
11.3.2 無監督實例過濾器312
11.3.3 有監督過濾器314
11.4 學習算法316
11.4.1 貝葉斯分類器317
11.4.2 樹320
11.4.3 規則322
11.4.4 函數325
11.4.5 神經網絡331
11.4.6 懶惰分類器334
11.4.7 多實例分類器335
11.4.8 雜項分類器336
11.5 元學習算法336
11.5.1 裝袋和隨機化337
11.5.2 提升338
11.5.3 組閤分類器338
11.5.4 成本敏感學習339
11.5.5 優化性能339
11.5.6 針對不同任務重新調整分類器340
11.6 聚類算法340
11.7 關聯規則學習器345
11.8 屬性選擇346
11.8.1 屬性子集評估器347
11.8.2 單一屬性評估器347
11.8.3 搜索方法348
第12章 Knowledge Flow界麵351
12.1 開始351
12.2 Knowledge Flow組件353
12.3 配置及連接組件354
12.4 增量學習356
第13章 Experimenter界麵358
13.1 開始358
13.1.1 運行一個實驗358
13.1.2 分析結果359
13.2 簡單設置362
13.3 高級設置363
13.4 分析麵闆365
13.5 將運行負荷分布到多個機器上366
第14章 命令行界麵368
14.1 開始368
14.2 Weka的結構368
14.2.1 類、實例和包368
14.2.2 weka.core包370
14.2.3 weka.classifiers包371
14.2.4 其他包372
14.2.5 Javadoc索引373
14.3 命令行選項373
14.3.1 通用選項374
14.3.2 與具體方案相關的選項375
第15章 嵌入式機器學習376
15.1 一個簡單的數據挖掘應用376
15.1.1 MessageClassifier()380
15.1.2 updateData()380
15.1.3 classifyMessage()381
第16章 編寫新的學習方案382
16.1 一個分類器範例382
16.1.1 buildClassifier()389
16.1.2 makeTree()389
16.1.3 computeInfoGain()390
16.1.4 classifyInstance()390
16.1.5 toSource()391
16.1.6 main()394
16.2 與實現分類器有關的慣例395
第17章 Weka Explorer的輔導練習397
17.1 Explorer界麵簡介397
17.1.1 導入數據集397
17.1.2 數據集編輯器397
17.1.3 應用過濾器398
17.1.4 可視化麵闆399
17.1.5 分類器麵闆399
17.2 最近鄰學習和決策樹402
17.2.1 玻璃數據集402
17.2.2 屬性選擇403
17.2.3 類噪聲以及最近鄰學習403
17.2.4 改變訓練數據的數量404
17.2.5 交互式建立決策樹405
17.3 分類邊界406
17.3.1 可視化1R406
17.3.2 可視化最近鄰學習407
17.3.3 可視化樸素貝葉斯407
17.3.4 可視化決策樹和規則集407
17.3.5 弄亂數據408
17.4 預處理以及參數調整408
17.4.1 離散化408
17.4.2 離散化的更多方麵408
17.4.3 自動屬性選擇409
17.4.4 自動屬性選擇的更多方麵410
17.4.5 自動參數調整410
17.5 文檔分類411
17.5.1 包含字符串屬性的數據411
17.5.2 實際文檔文類412
17.5.3 探索StringToWordVector過濾器413
17.6 挖掘關聯規則413
17.6.1 關聯規則挖掘413
17.6.2 挖掘一個真實的數據集415
17.6.3 購物籃分析415
參考文獻416
索引431
· · · · · · (
收起)