聚類分析
什麽是聚類分析?聚類算法有哪幾種?請選擇一種詳細描述其計算原理和步驟。
聚類分析(clusteranalysis)是一組將研究對象分為相對同質的群組(clusters)的統計分析技術。 聚類分析也叫分類分析(classification analysis)或數值分類(numerical taxonomy)。聚類與分類的不同在於,聚類所要求劃分的類是未知的。
聚類分析計算方法主要有: 層次的方法(hierarchical method)、劃分方法(partitioning method)、基於密度的方法(density-based method)、基於網格的方法(grid-based method)、基於模型的方法(model-based method)等。其中,前兩種算法是利用統計學定義的距離進行度量。
k-means 算法的工作過程說明如下:首先從n個數據對象任意選擇 k 個對象作為初始聚類中心;而對於所剩下其它對象,則根據它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然後再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復這一過程直到標準測度函數開始收斂為止。一般都采用均方差作為標準測度函數. k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開。
其流程如下:
(1)從 n個數據對象任意選擇 k 個對象作為初始聚類中心;
(2)根據每個聚類對象的均值(中心對象),計算每個對象與這些中心對象的距離;並根據最小距離重新對相應對象進行劃分;
(3)重新計算每個(有變化)聚類的均值(中心對象);
(4)循環(2)、(3)直到每個聚類不再發生變化為止(標準測量函數收斂)。
優 點:本算法確定的K 個劃分到達平方誤差最小。當聚類是密集的,且類與類之間區別明顯時,效果較好。對於處理大數據集,這個算法是相對可伸縮和高效的,計算的復雜度為 O(NKt),其中N是數據對象的數目,t是叠代的次數。一般來說,K<<N,t<<N 。
缺點:1. K 是事先給定的,但非常難以選定;2. 初始聚類中心的選擇對聚類結果有較大的影響。
聚類分析