各種聚類演算法的對比
聚類的目標是使同一類物件的相似度儘可能地大;不同類物件之間的相似度儘可能地小。目前聚類的方法很多,根據基本思想的不同,大致可以將聚類演算法分為五大類:層次聚類演算法、分割聚類演算法、基於約束的聚類演算法、機器學習中的聚類演算法和用於高維度的聚類演算法。摘自 資料探勘中的聚類分析研究綜述 這篇論文。
1、層次聚類演算法
1.1聚合聚類
1.1.1相似度依據距離不同:Single-Link:最近距離、Complete-Link:最遠距離、Average-Link:平均距離
1.1.2最具代表性演算法
1)CURE演算法
特點:固定數目有代表性的點共同代表類
優點:識別形狀複雜,大小不一的聚類,過濾孤立點
2)ROCK演算法
特點:對CURE演算法的改進
優點:同上,並適用於類別屬性的資料
3)CHAMELEON演算法
特點:利用了動態建模技術
1.2分解聚類
1.3優缺點
優點:適用於任意形狀和任意屬性的資料集;靈活控制不同層次的聚類粒度,強聚類能力
缺點:大大延長了演算法的執行時間,不能回溯處理
2、分割聚類演算法
2.1基於密度的聚類
2.1.1特點
將密度足夠大的相鄰區域連線,能有效處理異常資料,主要用於對空間資料的聚類
2.1.2典型演算法
1)DBSCAN:不斷生長足夠高密度的區域
2)DENCLUE:根據資料點在屬性空間中的密度進行聚類,密度和網格與處理的結合
3)OPTICS、DBCLASD、CURD:均針對資料在空間中呈現的不同密度分不對DBSCAN作了改進
2.2基於網格的聚類
2.2.1特點
利用屬性空間的多維網格資料結構,將空間劃分為有限數目的單元以構成網格結構;
1)優點:處理時間與資料物件的數目無關,與資料的輸入順序無關,可以處理任意型別的資料
2)缺點:處理時間與每維空間所劃分的單元數相關,一定程度上降低了聚類的質量和準確性
2.2.2典型演算法
1)STING:基於網格多解析度,將空間劃分為方形單元,對應不同解析度
2)STING+:改進STING,用於處理動態進化的空間資料
3)CLIQUE:結合網格和密度聚類的思想,能處理大規模高維度資料
4)WaveCluster:以訊號處理思想為基礎
2.3基於圖論的聚類
2.3.1特點
轉換為組合優化問題,並利用圖論和相關啟發式演算法來解決,構造資料集的最小生成數,再逐步刪除最長邊
1)優點:不需要進行相似度的計算
2.3.2兩個主要的應用形式
1)基於超圖的劃分
2)基於光譜的圖劃分
2.4基於平方誤差的迭代重分配聚類
2.4.1思想
逐步對聚類結果進行優化、不斷將目標資料集向各個聚類中心進行重新分配以獲最優解
2.4.2具體演算法
1)概率聚類演算法
期望最大化、能夠處理異構資料、能夠處理具有複雜結構的記錄、能夠連續處理成批的資料、具有線上處理能力、產生的聚類結果易於解釋
2)最近鄰聚類演算法——共享最近鄰演算法SNN
特點:結合基於密度方法和ROCK思想,保留K最近鄰簡化相似矩陣和個數
不足:時間複雜度提高到了O(N^2)
3)K-Medioids演算法
特點:用類中的某個點來代表該聚類
優點:能處理任意型別的屬性;對異常資料不敏感
4)K-Means演算法
1》特點:聚類中心用各類別中所有資料的平均值表示
2》原始K-Means演算法的缺陷:結果好壞依賴於對初始聚類中心的選擇、容易陷入區域性最優解、對K值的選擇沒有準則可依循、對異常資料較為敏感、只能處理數值屬性的資料、聚類結構可能不平衡
3》K-Means的變體
Bradley和Fayyad等:降低對中心的依賴,能適用於大規模資料集
Dhillon等:調整迭代過程中重新計算中心方法,提高效能
Zhang等:權值軟分配調整迭代優化過程
Sarafis:將遺傳演算法應用於目標函式構建中
Berkh in等:應用擴充套件到了分散式聚類
還有:採用圖論的劃分思想,平衡聚類結果,將原始演算法中的目標函式對應於一個各向同性的高斯混合模型
5)優缺點
優點:應用最為廣泛;收斂速度快;能擴充套件以用於大規模的資料集
缺點:傾向於識別凸形分佈、大小相近、密度相近的聚類;中心選擇和噪聲聚類對結果影響大
3、基於約束的聚類演算法
3.1約束
對個體物件的約束、對聚類引數的約束;均來自相關領域的經驗知識
3.2重要應用
對存在障礙資料的二維空間按資料進行聚類,如COD(Clustering with Obstructed Distance):用兩點之間的障礙距離取代了一般的歐式距離
3.3不足
通常只能處理特定應用領域中的特定需求
4、用於高維資料的聚類演算法
4.1困難來源因素
1)無關屬性的出現使資料失去了聚類的趨勢
2)區分界限變得模糊
4.2解決方法
1)對原始資料降維
2)子空間聚類
CACTUS:對原始空間在二維平面上的投影
CLIQUE:結合基於密度和網格的聚類思想,借鑑Apriori演算法
3)聯合聚類技術
特點:對資料點和屬性同時進行聚類
文字:基於雙向劃分圖及其最小分割的代數學方法
4.3不足:不可避免地帶來了原始資料資訊的損失和聚類準確性的降低
5、機器學習中的聚類演算法
5.1兩個方法
1)人工神經網路方法
自組織對映:向量化方法,遞增逐一處理;對映至二維平面,實現視覺化
基於投影自適應諧振理論的人工神經網路聚類
2)基於進化理論的方法
缺陷:依賴於一些經驗引數的選取,並具有較高的計算複雜度
模擬退火:微擾因子;遺傳演算法(選擇、交叉、變異)
5.2優缺點
優點:利用相應的啟發式演算法獲得較高質量的聚類結果
缺點:計算複雜度較高,結果依賴於對某些經驗引數的選擇
下面附上個人對聚類演算法的選擇及比較的理解: