國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
31
第三節、資料採礦與演算法介紹
1、資料採礦
前一章節所介紹的 OLAP 主要是透過以定義好的靜態資料進行 動態多維度的檢視,與 OLAP 不同的是,資料採礦著重在運用演算法,
在資料中找出隱藏的規則,並利用這樣的規則來預測未來。
隨著資料庫技術的迅速發展與成熟,以及資料庫管理系統的廣泛 應用,企業累積的資料越來越多,對公司而言資料是一大資產,如何 從資料中得到有價值的資訊便成為一大課題。目前的資料庫系統可以 高效率地實現資料新增、查詢、修改、統計等功能,但無法發現資料 間存在的關係和規則,亦無法根據現有的資料預測未來的發展趨勢。
資料採礦(Data Mining)便是從大量的、不完全的、有雜訊的、
模糊的、隨機的實際應用資料中,找出隱含在其中的、人們事先不知 道的、但又是潛在有用的資訊和知識的過程(Jiawei Han, 2000)。
1.1、資料採礦的步驟,參考下圖 15:
資料清理(消除噪音或不一致資料)
資料整合(多種資料來源可以組合在一起)
資料選擇(從資料庫中擷取與分析任務相關的資料)
資料變換(資料變換或統一成適合的形式;如,資料彙總)
資料採礦(使用智慧方法擷取資料模式)
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
32
模式評估(根據某種衡量方法,識別提供的知識是否真正有 效)
知識表示(提供視覺化結果,向用戶提供資料採礦後的知 識)。
資料清理
資料整合
資料庫
資料倉儲
資料變換 資料選擇
資料探勘
模式評估
知識表示
圖 15、資料採礦步驟
1.2、資料採礦的種類:
依活動內容的不同,資料採礦可分為:分類(Classification)、推 估(Estimation)、預測(Prediction)、同質分組或關聯規則(Affinity Grouping or Association Rule)、群集化(Clustering)、描述及視覺化
(Description and Visualization)(Michael J. A. Berry, Gordon S. Linoff,
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
33
2001)。
另外,以採礦方法分類,資料採礦可分為監督式資料採礦
(Supervised Data Mining)與非監督式資料採礦(Unsupervised Data Mining)兩種。
監督式資料採礦
屬於由上而下(top - down)的方法,通常是在已知要預測的目 標下進行,以演算法找出資料所屬類別的規則,並以此規則預測新資 料所屬類別。分類、推估、預測三類資料採礦屬之。
非監督式資料採礦
屬於由下而上(bottom - up)的方法,演算法在資料間發現規則,
並讓使用者決定是否採用採礦後的規則。同質分組或關聯規則、群集 化、描述及視覺化三類資料採礦屬之。
2、演算法介紹
2.1、K-means 分群演算法
K-Means 演算法是 J. B. MacQueen 於 1967 年所提出。是把 N 個 物件分為 K 個聚集,使類別內具有較高的相似度,而類別間的相似 度最低,其中相似度根據一個聚集中物件的平均數(被看作聚集的重 心)來計算。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
34
K-Means 演算法的處理流程如下。首先,隨機地選擇 K 個物件,
每個物件初始地代表了一個聚集中心,對剩餘的每個物件,根據其與 各個聚集中心的距離,將它賦給最近的聚集。然後重新計算每個聚集 的平均數。
這個過程不斷重複,直到目標函式收斂。目標函式的定義如下:
此處 E 是資料集中所有物件平方誤差的總和。
k 表共分為 k 群。
ci為第 i 群資料集合。
p 指包含於 ci中的所有資料點。
mi是資料群 ci的平均數。
這個目標函式以達到 E 最小為目標,表示各群內資料盡可能的相 似,群間資料盡可能的獨立。對處理大資料集,該演算法是相對可伸 縮的和高效率的。
其進行的步驟如下:
使用者給定分群數 k
系統隨機指派群中心
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
35
系統產生初始分群結果
系統產生新的群中心
系統修正分群邊界
重複第三和第四步驟直到資料不再變動
但 K-Means 在應用上有一定的限制,其一,使用者必須事先給 定分群群數(即 k 值);其二,K-Means 收斂的依據是各群的平均數,
因此若資料存在少量的極端值將會對平均數產生極大的影響,使分群 結果產生誤差。
2.2、EM 分群演算法
EM(全名為 Expectation Maximization,期望值最大)演算法是 以 K-Means 為基礎加以改善及擴充的方法。EM 不強調將個別資料分 配給一個特定的群集,而是根據資料與群集之間隸屬關係發生的機率 來分派,換句話說,在聚集之間沒有嚴格的界線。其目標函式是以加 權後的衡量值來計算。
每個聚集都可以用機率分配來做數學描述,整個資料集可視為這 些分配的混合,如圖 16 中有兩個群集,分別遵循高斯分配 g(m1,σ1) 和 g(m2, σ2),並具有各自的平均數與標準差。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
36
圖 16、每個群集可視為一機率分配
資料來源:資料探勘 - 概念與方法(Data Mining: Concepts and Techniques, 2/e), Jiawei Han, Micheline Kamber, CS, 2008.
EM 首先對整個資料集的混合模型進行初始的估計,反覆根據資 料集產生的混合密度對每個資料點重新計算目標函式值,每個資料點 都賦予一個機率以假設它是特定群集的成員,具有該群集屬性的可能 性。演算法邏輯步驟描述如下:
E-step 期望值(Expectation)步驟:用以下機率將每個物件 Xi 指派到聚集 Ck。
) ) ( )
其中 p(xi
| C
k)服從常態分配(即高斯),此一步驟是針對每個 群集計算資料點 xi的隸屬機率。‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
37
M-step 最大化(Maximization)步驟:尋找一個讓條件最大化 的機率模型,利用前面得到的機率估計重新估計模型參數。
𝑚 k 1 n
xiP(xi Ck) P(xj i Cj)
n
i 1
EM 演算法比較簡單且容易實現。在實務中,它收斂很快,但是 可能達不到全域最佳。
2.3、單一鏈結分群演算法
單一鏈結演算法(Single linkage clustering)又稱最短距離法,屬 於階層法(Hierarchical method)中的聚合(agglomerative)分群法,
繼承其分群之後不做重新分群、分群之後的結果可以用樹狀圖呈現等 特性,分別計算兩個群集中距離最近的兩個項目的距離,分群結果示 意如圖 17。
其品質受限於:一旦群集間互相聚合就不能再回頭修正,也就是 說,如果某個聚合決策在後來證明不是好的選擇,該方法無法退回並 更正。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
38
圖 17、單一鏈結分群結果示意圖 演算法邏輯步驟:
將所有資料視為單獨群集。
依據距離衡量函式所衡量出的距離大小聚合兩個最接近的群 集。
繼續聚合相近的群集直到得到目標群集數。
距離衡量函式的方法會因資料型態有所不同,有以下幾種:
若資料型態為可數連續或離散型資料,其相似度距離可以:相關 係數(Correlation coefficient)、歐幾里得距離、曼哈頓距離、Minkowski 距離來衡量計算,以相關係數、歐幾里得距離兩種計算方法最常使 用。
相關係數:
( )( )
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
39
其中 x1~xn表 x 群集中的資料點,y1~yn表 y 群集中的資料點。
歐幾里得距離:
( ) ( )
其中 i 和 j 表示一對觀測到的資料點,xkj表第 k 個變數的 i 值,
k=1~n 個變數。
若資料型態為不可數名目行資料,其相似度距離則以匹配衡量法 計算。計算範例如下:
下表 4 有 A~D 五組織,分別針對 F1~F8 八種特徵進行調查,若 具備該特徵以 Y 紀錄,反之以 N 紀錄。
表 4、單一鏈結名目資料之計算範例資料
Essential Features? (Yes or No)
F1 F2 F3 F4 F5 F6 F7 F8 Organization A Y Y N N Y Y Y Y Organization B N Y N N N Y Y Y Organization C Y N Y Y Y N N N Organization D Y N N N Y Y Y Y
完成資料收集後,對兩兩組織進行比較,計算匹配值。以 A、B 兩組織為例,F1~F8 特徵中 F1 與 F5 兩筆記錄不同,其餘 F2、F3、
F4、F6、F7、F8 等 6 筆記錄相同,故 A、B 兩組織匹配值為 6/8。以
‧
J.Ross Quinlan 於 1993 年提出,是決策樹的一種,所產生的決策 樹為多元樹。C4.5 的目標是找出哪一種規則最能夠減低分類結果的 亂度 (Entropy,熵值)。計算資訊增益率(Gain Ratio)來決定決策 樹建立過程中以哪個分類屬性作為較上層的分類節點。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
41
體的熵值。訊增益率越大代表該節點分割後的子集合中類別越單純,
類別代表性及解釋性高,所得的分類結果越好。
2.5、CART 分類演算法
CART 全名為 Classification and Regression Tree,分類與迴歸樹,
於 1984 年由 L. Brieman 提出。與 C4.5 相異處在於 CART 為二元樹,
並以吉尼指標(Gini index)做為建樹的準則。
吉尼指標
其中 D 代表決策樹某節點,pj表節點 D 中第 j 個類別的機率。
Gini 值越小代表該節點分割後的子集合中類別越單純,所得的分類結 果越好。
2.6、簡單貝氏分類演算法
貝氏分類方法是以貝氏定理為基礎所作的延伸應用,計算類別的 條件機率,在統計學裡有廣泛地應用。特別適用於當輸入的屬性維度 多時,並以屬性間互相獨立為前提假設,儘管這項假設過於理想與簡 單,但它往往能解決複雜的現實世界中的分類預測問題。
運作原理是透過訓練樣本學習與記憶分類所使用屬性間的關係,
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
42
再用學習得到的規則對未歸類的資料進行分類預測,因此具有只需要 少量的訓練資料就能準確的估計資料屬性歸類的優點。
計算各屬性的條件機率 貝氏定理:
) ) ( )
) ( ) 屬性獨立:
) )
分類預測模型
) 𝑚 ( ) )
3、資料採礦於商業應用
早期關於資料採礦的研究多著重於技術面,如針對不同型態資料 的處理、演算法的效率性及有用性、以及隱私權與資料安全性方面的 議題。隨著資料採礦技術的成熟,越來越多關於商業應用的討論議 題。
一項 META Group 顧問公司調查顯示,自 1996 年以來,越來越
‧
類同定位(Affinity positioning) 有效的定位產品 交叉銷售(Cross-selling) 為顧客找到更多產品
銀行 顧客關係管理
(Customer relationship management)
確認顧客價值,並發展
資料來源:“資料探勘- Introduction to Business Data Mining”,郭志隆、張芳菱(譯), 麥格羅‧希爾(民 97)
可知資料採礦已廣泛的應用於各行業領域,幫助了解顧客區隔、
找出目標客群、定位產品,甚至延伸於顧客關係管理,了解顧客流動 並確保顧客忠誠。
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
44