1. 常用的聚類方法的分類
劃分方法:K-MEANS(K均值)、K-MEDOIDS(K中心點)、CLARANS算法(基于選擇的算法)
層次分析方法:BIRCH算法(平衡迭代規(guī)約和聚類)、CURE算法(代表點聚類)、CHAMELEON算法(動態(tài)模型)
基于密度的算法:DBSCAN算法(基于高密度連續(xù)區(qū)域)、DENCLUE算法(密度分布函數(shù))、OPTICS算法(對象排序識別)
基于網(wǎng)格的方法:STING算法(統(tǒng)計信息網(wǎng)絡(luò))、CLIOUE算法(聚類高維空間)、WAVE-CLUSTER算法(小波變換)
基于模型的方法:統(tǒng)計學方法、神經(jīng)網(wǎng)絡(luò)方法
2. 常用的聚類分析算法
K-Means聚類也叫快速聚類法,在最小化誤差函數(shù)的基礎(chǔ)上將數(shù)據(jù)劃分為預(yù)定的類數(shù)K。原理簡單,便于處理大量數(shù)據(jù)。
K-Medoids聚類算法不采用簇中對象的平均值作為簇中心,而選用簇中離平均值最近的對象作為簇中心。
3. K-Means聚類算法
1)算法過程
①從N個樣本數(shù)據(jù)中隨機選取K個對象作為初始的聚類中心;
②分別計算每個樣本到各個聚類中心的距離,將對象分配到距離最近的聚類中;
③所有對象分配完成后,重新計算K個聚類的中心;
④與前一次計算的K個聚類中心比較,如果聚類中心發(fā)生變化,轉(zhuǎn)第②步,否則轉(zhuǎn)第⑤步。
⑤當質(zhì)心不發(fā)生變化時停止并輸出聚類結(jié)果。
2)數(shù)據(jù)類型與相似性的度量
連續(xù)屬性:首先對各屬性值進行零-均值規(guī)范(zscore),在進行距離計算。距離計算常用的有:
· 歐幾里得距離
· 曼哈頓距離
· 閔可夫斯基距離
文檔數(shù)據(jù):先將文檔數(shù)據(jù)整理成文檔-詞矩陣格式,再用余弦相似性度量。
3)目標函數(shù)
連續(xù)屬性的SSE?
?
文檔數(shù)據(jù)的SSE
3. 聚類分析算法評價
組內(nèi)相似性越大,組件差別越大,聚類效果越好。常用的評價方法有:
· purity評價法
· RI評價法
· F值評價法
4. MATLAB主要聚類分析算法函數(shù)
層次聚類樹:Z = linkage(x,method,metric)?
層次聚類或者高斯混合分布聚類模型:T = cluster(Z,’maxclust’,n)? 或者 T = cluster(Z,’cutoff’,c)
其中,Z是使用linkage函數(shù)構(gòu)建的層次聚類數(shù),是一個(m-1)×3維矩陣,其中m是觀察的樣本數(shù);當參數(shù)為’maxclust’時,n為聚類的類別;當參數(shù)為’cutoff’時,c表示剪枝的閾值。
k均值聚類模型:[IDX,C,sumd,D] = kmeans(x,k,param1,val1,param2,val2,...)
其中,IDX返回每個樣本數(shù)據(jù)的類別;C返回k個類別的中心向量;sumd返回每個類別樣本到中心向量的距離和;D返回每個樣本到中心的距離。
模糊聚類模型:[center,U,obj_fcn] = fcm(data,cluster_n)
其中,U返回最終模糊分區(qū)矩陣;obj_fcn為循環(huán)過程中目標函數(shù)的值。
自組織神經(jīng)網(wǎng)絡(luò)聚類模型:net = selforgmap(dimensions,coverSteps,initNeighbor,topologyFcn,distanceFcn)?