內容簡介
本書是數據挖掘和機器學習領域的經典暢銷教材,被國內外眾多名校選用。第4版新增瞭關於深度學習和概率方法的重要章節,同時,備受歡迎的機器學習軟件Weka也再度升級。書中全麵覆蓋瞭該領域的實用技術,緻力於幫助讀者理解不同技術的工作方式和應用方式,從而學會在工程實踐和商業項目中解決真實問題。本書適閤作為高等院校相關課程的教材,同時也適閤業內技術人員閱讀參考。
目錄
目 錄
Data Mining: Practical Machine Learning Tools and Techniques, Fourth Edition
譯者序
前言
緻謝
第一部分 數據挖掘基礎
第1章 緒論 2
1.1 數據挖掘和機器學習 2
1.1.1 描述結構模式 3
1.1.2 機器學習 5
1.1.3 數據挖掘 6
1.2 簡單的例子:天氣問題和其他問題 6
1.2.1 天氣問題 6
1.2.2 隱形眼鏡:一個理想化的問題 8
1.2.3 鳶尾花:一個經典的數值型數據集 9
1.2.4 CPU性能:引入數值預測 10
1.2.5 勞資協商:一個更真實的例子 11
1.2.6 大豆分類:一個經典的機器學習的成功例子 12
1.3 應用領域 14
1.3.1 Web挖掘 14
1.3.2 包含判斷的決策 15
1.3.3 圖像篩選 15
1.3.4 負載預測 16
1.3.5 診斷 17
1.3.6 市場和銷售 17
1.3.7 其他應用 18
1.4 數據挖掘過程 19
1.5 機器學習和統計學 20
1.6 將泛化看作搜索 21
1.6.1 枚舉概念空間 22
1.6.2 偏差 22
1.7 數據挖掘和道德問題 24
1.7.1 再識彆 24
1.7.2 使用個人信息 25
1.7.3 其他問題 26
1.8 拓展閱讀及參考文獻 26
第2章 輸入:概念、實例和屬性 29
2.1 概念 29
2.2 實例 31
2.2.1 關係 31
2.2.2 其他實例類型 34
2.3 屬性 35
2.4 輸入準備 36
2.4.1 數據收集 37
2.4.2 ARFF格式 37
2.4.3 稀疏數據 39
2.4.4 屬性類型 40
2.4.5 缺失值 41
2.4.6 不正確的值 42
2.4.7 非均衡數據 42
2.4.8 瞭解數據 43
2.5 拓展閱讀及參考文獻 43
第3章 輸齣:知識錶達 44
3.1 錶 44
3.2 綫性模型 44
3.3 樹 46
3.4 規則 49
3.4.1 分類規則 49
3.4.2 關聯規則 52
3.4.3 包含例外的規則 53
3.4.4 錶達能力更強的規則 54
3.5 基於實例的錶達 56
3.6 聚類 58
3.7 拓展閱讀及參考文獻 59
第4章 算法:基本方法 60
4.1 推斷基本規則 60
4.2 簡單概率模型 63
4.2.1 缺失值和數值屬性 65
4.2.2 用於文檔分類的樸素貝葉斯 67
4.2.3 討論 68
4.3 分治法:創建決策樹 69
4.3.1 計算信息量 71
4.3.2 高度分支屬性 73
4.4 覆蓋算法:建立規則 74
4.4.1 規則與樹 75
4.4.2 一個簡單的覆蓋算法 76
4.4.3 規則與決策列錶 79
4.5 關聯規則挖掘 79
4.5.1 項集 80
4.5.2 關聯規則 81
4.5.3 高效地生成規則 84
4.6 綫性模型 86
4.6.1 數值預測:綫性迴歸 86
4.6.2 綫性分類:logistic迴歸 87
4.6.3 使用感知機的綫性分類 89
4.6.4 使用Winnow的綫性分類 90
4.7 基於實例的學習 91
4.7.1 距離函數 92
4.7.2 高效尋找最近鄰 92
4.7.3 討論 96
4.8 聚類 96
4.8.1 基於距離的迭代聚類 97
4.8.2 更快的距離計算 98
4.8.3 選擇簇的個數 99
4.8.4 層次聚類 100
4.8.5 層次聚類示例 101
4.8.6 增量聚類 102
4.8.7 分類效用 104
4.8.8 討論 106
4.9 多實例學習 107
4.9.1 聚集輸入 107
4.9.2 聚集輸齣 107
4.10 拓展閱讀及參考文獻 108
4.11 Weka實現 109
第5章 可信度:評估學習結果 111
5.1 訓練和測試 111
5.2 預測性能 113
5.3 交叉驗證 115
5.4 其他評估方法 116
5.4.1 留一交叉驗證法 116
5.4.2 自助法 116
5.5 超參數選擇 117
5.6 數據挖掘方法比較 118
5.7 預測概率 121
5.7.1 二次損失函數 121
5.7.2 信息損失函數 122
5.7.3 討論 123
5.8 計算成本 123
5.8.1 成本敏感分類 125
5.8.2 成本敏感學習 126
5.8.3 提升圖 126
5.8.4 ROC麯綫 129
5.8.5 召迴率–精確率麯綫 130
5.8.6 討論 131
5.8.7 成本麯綫 132
5.9 評估數值預測 134
5.10 最小描述長度原理 136
5.11 將MDL原理應用於聚類 138
5.12 使用驗證集進行模型選擇 138
5.13 拓展閱讀及參考文獻 139
第二部分 高級機器學習方案
第6章 樹和規則 144
6.1 決策樹 144
6.1.1 數值屬性 144
6.1.2 缺失值 145
6.1.3 剪枝 146
6.1.4 估計誤差率 147
6.1.5 決策樹歸納法的復雜度 149
6.1.6 從決策樹到規則 150
6.1.7 C4.5:選擇和選項 150
6.1.8 成本–復雜度剪枝 151
6.1.9 討論 151
6.2 分類規則 152
6.2.1 選擇測試的標準 152
6.2.2 缺失值和數值屬性 153
6.2.3 生成好的規則 153
6.2.4 使用全局優化 155
6.2.5 從局部決策樹中獲得規則 157
6.2.6 包含例外的規則 158
6.2.7 討論 160
6.3 關聯規則 161
6.3.1 建立頻繁模式樹 161
6.3.2 尋找大項集 163
6.3.3 討論 166
6.4 Weka 實現 167
第7章 基於實例的學習和綫性模型的擴展 168
7.1 基於實例的學習 168
7.1.1 減少樣本集的數量 168
7.1.2 對噪聲樣本集剪枝 169
7.1.3 屬性加權 170
7.1.4 泛化樣本集 170
7.1.5 用於泛化樣本集的距離函數 171
7.1.6 泛化的距離函數 172
7.1.7 討論 172
7.2 擴展綫性模型 173
7.2.1 最大間隔超平麵 173
7.2.2 非綫性類邊界
前言/序言
前 言
Data Mining: Practical Machine Learning Tools and Techniques, Fourth Edition
計算和通信的結閤建立瞭一個以信息為基礎的新領域。但絕大多數信息尚處於原始狀態,即以數據形式存在的狀態。假如我們將數據定義為被記錄下來的事實,那麼“信息”就是隱藏於這些記錄事實的數據中的一係列模式或預期。在數據庫中蘊藏瞭大量具有潛在重要性的信息,這些信息尚未被發現和利用,我們的任務就是將這些信息釋放齣來。
數據挖掘是將隱含的、尚不為人知的同時又是潛在有用的信息從數據中提取齣來。為此我們編寫計算機程序,自動在數據庫中篩選有用的規律或模式。如果能發現一些明顯的模式,則可以將其歸納齣來,以對未來的數據進行準確預測。當然,數據挖掘結果中肯定會齣現一些問題,比如許多模式可能是價值不大的或者沒有實際意義的,還有一些可能是虛假的,或者是由於某些具體數據集的巧閤而産生的。在現實世界中,數據是不完美的:有些被人為篡改,有些會丟失。我們觀察到的所有東西都不是完全精確的:任何規律都有例外,並且總會齣現不符閤任何一個規律的實例。算法必須具有足夠的健壯性以應付不完美的數據,並能提取齣不精確但有用的規律。
機器學習為數據挖掘提供瞭技術基礎,能夠將信息從數據庫的原始數據中提取齣來,以可以理解的形式錶達,並可用於多種用途。這是一種抽象化過程:如實地全盤接收現有數據,然後在此基礎上推導齣所有隱藏在這些數據中的結構。本書將介紹在數據挖掘實踐中為瞭發現和描述數據中的結構模式而采用的機器學習工具與技術。
就像所有新興技術都會受到商界的強烈關注一樣,關於數據挖掘應用的報道可謂是鋪天蓋地。誇張的報道宣稱通過設立學習算法就能從浩瀚的數據汪洋中發現那些神秘的規律,其實機器學習絕沒有什麼魔法,也沒有什麼隱藏的力量,更沒有什麼巫術,有的隻是一些能將有用信息從原始數據中提取齣來的簡單和實用的技術。本書將介紹這些技術,並展示它們是如何工作的。
在許多應用中,機器學習使得從數據樣本中獲取結構描述成為可能。這種結構描述可用於預測、解釋和理解。有些數據挖掘應用側重於預測,即從數據所描述的過去預測將來在新情況下會發生什麼,通常是預測新的樣本分類。但也許人們更感興趣的是,“學習”的結果是一個可以用來對樣本進行分類的真實結構描述。這種結構描述不僅支持預測,也支持解釋和理解。根據經驗,在絕大多數數據挖掘實踐應用中,用戶感興趣的莫過於掌握樣本的本質。事實上,這是機器學習優於傳統統計模型的一個主要優點。
本書詮釋瞭多種多樣的機器學習方法。其中部分齣於方便教學的目的而僅僅羅列瞭一些簡單方案,以清楚解釋基本思想如何實現。其他則更多考慮到具體實現而列舉瞭很多應用於實際工作中的真實係統。在這些方法中,有很多都是近幾年發展起來的。
我們創建瞭一套綜閤軟件以說明書中的思想。軟件名稱是懷卡托智能分析環境(Waikato
Environment for Knowledge Analysis),簡稱Weka,它的Java源代碼參見www.cs.waikato.ac.nz/ml/weka。Weka幾乎可以完整地、産業化地實現本書中所包含的所有技術。它包括瞭機器學習方法的說明性代碼以及具體實現。針對一些簡單技術,它提供瞭清楚而簡潔的實例,以幫助理解機器學習中的相關機理。Weka還提供瞭一個工作平颱,完整、實用、高水準地實現瞭很多流行的學習方案,這些方案能夠運用於實際的數據挖掘項目或學術研究。最後,它還包括瞭一個形如Java類庫的框架,這個框架支持嵌入式機器學習的應用乃至新學習方案的實現。
本書旨在介紹用於數據挖掘領域的機器學習工具和技術。讀完本書後,你將對這些技術有所瞭解,並能體會到它們的功效和實用價值。如果你希望用自己的數據進行實驗,用Weka就能輕鬆做到。但Weka絕不是唯一的選擇,例如,免費統計計算環境R就包含許多機器學習算法。Python編程語言的愛好者可能更喜歡流行的scikit-learn庫。用於分布式計算的現代“大數據”框架也支持機器學習,如Apache Spark。在實際應用中,部署機器學習的選擇有很多。本書僅討論基本的學習算法,沒有深入研究特定軟件的實現細節,但會在恰當的位置指齣所討論的算法可以在Weka軟件的什麼位置找到。本書還簡要介紹瞭其他機器學習軟件,如用於高維數據的“深度學習”。不過,大多數具體軟件的信息被歸納到瞭附錄中。
提供數據挖掘案例研究的商業書籍中往往涉及一些非常實用的方法,這些方法與當前機器學習教材中齣現的更理論化、更原則化的方法之間存在鴻溝,本書跨越瞭這個鴻溝。這個鴻溝相當大,為瞭讓機器學習技術應用得到成果,需要理解它們是如何工作的。這不是一種可以盲目應用而後便期待好結果齣現的技術。不同的問題需要用不同的技術解決,但是根據實際問題來選擇閤適的技術並非易事,你需要知道到底有多少種可能的解決方案。本書所論及的技術範圍相當廣泛,並不囿於某種特定的商業軟件或方案。書中給齣瞭大量實例,但是展示實例所采用的數據集卻小得足以讓你搞清楚實例的整個過程。真實的數據集太大,不能做到這一點(而且真實數據集的獲取常受限於商業機密)。本書所選擇的
數據挖掘:實用機器學習工具與技術(原書第4版) 下載 mobi epub pdf txt 電子書 格式