終于有人把數據挖掘講明白了
隨著大型數據庫的建立和海量數據的不斷涌現,人們迫切需要強有力的數據分析工具。但現實情況往往是“數據十分豐富,而信息相當貧乏”。
快速增長的海量數據被收集、存放在大型數據庫中,沒有強有力的工具,以人類現有的能力很難理解它們。因此,有人說大數據是數據“墳墓”。當采用數據挖掘工具進行數據分析時,可以發現隱藏在大數據之中重要的數據內容、模式,能對商務決策、知識庫、科學和醫學研究等做出巨大貢獻。為解決數據和信息之間的鴻溝,我們應系統地學習數據挖掘知識,開發數據挖掘工具,將數據“墳墓”變成知識“金礦”。
1數據挖掘過程
數據挖掘(data mining)又譯為資料探勘、數據采礦,是指從大量的、不完全的、有噪聲的、模糊的、隨機的數據中提取隱含在其中的、人們事先不知道的但又潛在有用的信息和知識的過程。
數據挖掘的具體過程描述如下:
1)數據:進行數據挖掘首先要有數據,可以根據任務的目的選擇數據集,并篩選自己需要的數據,或者根據實際情況構造自己需要的數據。
2)預處理:確定數據集后,就要對數據進行預處理,使數據能夠為我們所用。數據預處理可以提高數據質量,包括準確性、完整性和一致性。進行數據預處理的方法有數據清理、數據集成、數據規約和數據變換等。
3)變換:進行數據預處理后,對數據進行變換,將數據轉換成一個分析模型,這個分析模型是針對數據挖掘算法建立的。建立一個真正適合數據挖掘算法的分析模型是數據挖掘成功的關鍵。
4)數據挖掘:對經過轉換的數據進行挖掘,除了選擇合適的挖掘算法外,其余一切工作都能自動地完成。
5)解釋/評估:解釋并評估結果,最終得到知識。其使用的分析方法一般視數據挖掘操作而定,通常會用到可視化技術。
數據挖掘的具體過程如圖1所示。
圖1 數據挖掘過程
2數據挖掘的內容
2.1 關聯規則挖掘
從大規模數據中挖掘對象之間的隱含關系稱為關聯分析(Associate Analysis)或者關聯規則挖掘(Associate Rule Mining),它可以揭示數據中隱藏的關聯模式,幫助人們進行市場運作、決策支持等。
考察一些涉及許多物品的事務。事務1中出現了物品甲,事務2中出現了物品乙,事務3中同時出現了物品甲和乙。那么,物品甲和乙在事務中的出現是否有規律可循呢?在數據庫的知識發現中,關聯規則就是描述這種在一個事務中物品同時出現的規律的知識模式。更確切地說,關聯規則通過量化的數字描述物品甲的出現對物品乙的出現有多大的影響。
一般采用可信度、支持度、期望可信度、作用度四個參數來描述一個關聯規則的屬性。
在關聯規則的四個屬性中,支持度和可信度能夠比較直接地形容關聯規則的性質。如果不考慮關聯規則的支持度和可信度,那么在事務數據庫中可以發現無窮多的關聯規則。事實上,人們一般只對滿足一定的支持度和可信度的關聯規則感興趣。因此,為了發現有意義的關聯規則,需要給定兩個閾值:最小支持度和最小可信度,前者規定了關聯規則必須滿足的最小支持度;后者規定了關聯規則必須滿足的最小可信度。
經典故事案例:關聯規則挖掘經典的案例即為購物籃中的啤酒和尿布的故事。“啤酒與尿布”的故事產生于20世紀90年代的美國沃爾瑪超市中,在美國有嬰兒的家庭中,一般由母親在家中照看嬰兒,年輕的父親前去超市購買尿布。父親在購買尿布的同時,往往會順便為自己購買啤酒,這樣就會出現啤酒與尿布這兩件看上去不相干的商品經常會出現在同一個購物籃的現象。
比如對于如下購物籃數據:
顧客1:{牛奶、果醬、面包}
顧客2:{牛奶、雞蛋、面包、糖}
顧客3:{面包、黃油、牛奶}
我們可以推測牛奶→面包為一組關聯規則,即顧客購買了牛奶,可以推測該顧客下一步很有可能會購買面包。
2.2 分類
分類算法是數據挖掘中的關鍵技術,它通過對數據訓練集的分析研究,發現分類規則,從而具備預測新數據類型的能力。分類也是監督式機器學習方法,根據訓練集學習模型,進一步利用模型對新數據的類別標簽進行預測。分類算法主要包括兩個階段:①構建模型階段,通過分析學習已知的訓練數據集,訓練并構建一個準確率可以接受的模型,該模型用于描述特定的數據類集;②使用階段,使用訓練后的模型對未知數據對象進行分類。具體過程如下所示。
- 第一步:類別標簽學習建模(參見圖2)。
- 第二步:類別標簽分類測試(參見圖3)。
分類標簽預測與數值預測的區別如下:數值預測根據訓練集學習模型,進一步利用模型對新數據的數值進行預測,區別于分類標簽預測,數值預測的輸出為連續的數值。
圖2 分類學習建模
圖3 分類測試
數值預測學習的流程如下。
第一步:數值預測學習建模(參見圖4)。
圖4 數值預測學習建模
第二步:數值預測測試(參見圖5)。
圖5 數值預測測試
下面來看一個分類標簽預測案例和一個數值預測案例。
(1)分類標簽預測案例:員工離職預測
根據給定的影響員工離職的因素和員工是否離職的記錄,建立一個模型預測有可能離職的員工,具體數據如表1所示。其中,Attrition表示類別標簽,也就是需要預測的離散數據。
表1 員工離職數據
(2)數值預測案例:房價預測
作為一個典型的數值預測案例,房價預測一直備受關注。簡言之,房價預測就是綜合房屋銷售價格以及房屋的基本信息建立模型,從而預測其他房屋的銷售價格。
我們以Kaggle平臺房價預測的部分數據集(見表2)為例進行說明。如表2所示,房屋的基本信息主要包括建筑等級、區域分類、建筑面積、主路、小巷、房屋外形、平整度、配套設施、房屋位置、地面坡度和銷售價格,等等。其中,“銷售價格”便是需要預測的連續數值。
表2 Kaggle房價預測數據集示例
2.3 聚類
聚類為非監督式機器學習方法,不需要提供具有標簽的訓練集,而是直接以某種聚類準則將數據劃分到不同類別中。聚類分析的結果通常受聚類準則的影響,圖6所示的聚類準則如果設為“花色相同”和“符號相同”,則得到兩種不同的聚類結果。
圖6 聚類準則影響結果示意
2.4 回歸
回歸分析(regression analysis)是一個統計預測模型,用于描述和評估應變量與一個或多個自變量之間的關系,包括一元線性回歸、多元線性回歸、非線性回歸、邏輯回歸等。具體來說,可以利用回歸模型來實現數值預測的任務,比如前面提到的房價預測任務。
當自變量為非隨機變量、因變量為隨機變量時,分析它們的關系稱為回歸分析;根據回歸分析可以建立變量間的數學表達式,稱為回歸方程。回歸方程反映自變量在固定條件下因變量的平均狀態變化情況。相關分析是以某一指標來度量回歸方程所描述的各個變量間關系的密切程度。
回歸分析方法常用于解釋市場占有率、銷售額、品牌偏好及市場營銷效果。把兩個或兩個以上定距或定比例的數量關系用函數形式表示出來,就是回歸分析要解決的問題。
本文摘編于《數據挖掘:原理與應用》,經出版方授權發布。(書號:9787111696308)轉載請保留文章來源。