1. 程式人生 > >資料探勘基本知識

資料探勘基本知識

背景

資料探勘解決的商業問題
  • 客戶流失分析
  • 交叉銷售
  • 欺詐檢測
  • 風險管理
  • 客戶細分
  • 廣告定位
  • 銷售預測

資料探勘的任務

分類

基於一個可預測屬性把事例分成多個類別。有目標的資料探勘演算法稱為有監督的演算法。典型的分類演算法有決策樹演算法、神經網路演算法和貝葉斯演算法。 例子:是否上大學事例重要屬性:IQ、性別、父母收入、父母教育程度通過這些屬性與上大學構建模型,通過這個模型就能預測下一個事例是否能上大學。現在所謂的大資料就是事例比較多,可能每天都是上億的資料流量,還有關聯屬性多,可能多達上100個屬性,通過海量資料分析得出比較可靠分類資料。 分類任務建立模型時,需要知道在資料集中輸入事例的類別屬性的值,這就需要海量資料來支撐。

聚類

基於一組屬性對事例進行分組。有點像sql 中group by 統計函式。聚類是一種無監督的資料探勘任務,沒有一個屬性用於指導模型的構建過程。 例子:客戶資料集保護年齡和輸入兩個屬性,基於兩個屬性,聚類演算法把資料分為3類。1.低收入的年輕客戶,2.高收入的中年客戶,3.較低的年老客戶。

關聯

主要目標:找出頻繁項集和管理規則。 例子:購物籃分析,分析支援度2%的購物車中的項,頻繁項集可能:(產品=“百事可樂”,產品=“炸土豆條”,產品=“果汁”)。 關聯規則:帶概率的A,B=>C,如果一個客戶買百事可樂和炸土豆條,很有可能會買果汁。

迴歸

迴歸任務類似於分類任務,最大區別是在迴歸任務中可預測屬性是連續的。線性迴歸和邏輯迴歸是最常用的迴歸分析方法。還有迴歸樹和神經網路。 迴歸任務解決:例如,基於債券的面值、發行方式和發行數量,可以預測它的贖回率,或者基於溫度、大氣壓力和溼度、可以預測風速。 說的太玄乎,實際生活中還沒找到好的例子。

預測

使用時間序列資料集,連續的觀測值通過趨勢分析、週期性分析和噪聲過濾。

序列分析

用於發現離散序列中的模式。序列和關聯資料有點相似,都包含一個項集或一組狀態。區別在於:序列模型分析的是狀態的轉移,關聯模型認為在客戶購物車中的每個商品都是平等的和相互獨立的。 通過序列模型可知,先買揚聲器再買電腦和先買電腦再買揚聲器是2個不同的序列。主要用於兩種應用:Web日誌分析和DNA分析。

偏差分析

為找出一些特殊的事例,這些事例的行為與其他事例有明顯的不同。也稱孤立點檢測,用來檢測與前面觀察的行為有重大改變的行為。 最常見的應用:信用卡欺詐行為檢測,網路入侵檢測,劣質產品分析。
以前在做人員分析專案時都用到這些方法,當時沒有細想和總結更沒有所謂的演算法,更多的時候跟著客戶的業務模型亦步亦趨。 例如:同時上下機、特殊規律上網或地點、關聯身份、關鍵詞提取,一旦模型定下後後續的業務只是在這些模型下不斷增加不同維度的資料。

演算法

貝葉斯演算法

似然估計計算,概率,有點複雜。 參考:http://www.cnblogs.com/skyme/p/3564391.html

決策樹演算法

資訊熵,迴歸,分類,關聯 參考:http://blog.csdn.net/baimafujinji/article/details/51724371

時序演算法

自動迴歸樹,快速傅立葉變換,標準差 參考:http://www.cnblogs.com/tonglin0325/p/6218478.html

聚類演算法

硬聚類,軟聚類,K-means演算法和期望最大化演算法,離散聚類,可伸縮聚類,聚類預測 參考:http://www.dataguru.cn/article-3408-1.html

序列聚類演算法

馬爾可夫鏈,狀態轉換矩陣 參考:http://wiki.mbalib.com/wiki/%E9%A9%AC%E5%B0%94%E5%8F%AF%E5%A4%AB%E9%93%BE%E6%A8%A1%E5%9E%8B

關聯規則演算法

priori演算法,項集,支援度,概率,置信度,重要性 參考:http://blog.csdn.net/androidlushangderen/article/details/43059211

神經網路演算法

太他媽複雜 參考:http://www.cnblogs.com/buptzym/p/5437973.html

以上演算法太複雜,需要很好的數學功底,但是原理性的東西或者解決問題的應用場景可以瞭解下,可以給我們的生活帶來不一樣的樂趣。