3 回答

TA貢獻1794條經驗 獲得超8個贊
您可以最大化貝葉斯信息準則(BIC):
BIC(C | X) = L(X | C) - (p / 2) * log n
其中L(X | C)
在所述數據集的對數似然X
根據模型C
,p
是在模型參數的數量C
,并且n
是在數據集中的點的數量。參見Dan Pelleg和Andrew Moore在ICML 2000中的“X-means:擴展K -means并有效估計簇的數量”。
另一種方法是從較大的值開始k
并繼續移除質心(減少k),直到它不再減少描述長度。參見Horst Bischof,Ales Leonardis和Alexander Selb在Pattern Analysis and Applications vol。中的“MDL原理用于魯棒矢量量化”。2,p。1999年9月59日至72日。
最后,您可以從一個群集開始,然后繼續分割群集,直到分配給每個群集的點具有高斯分布。在“學習k -me 中的k ”(NIPS 2003)中,Greg Hamerly和Charles Elkan展示了一些證據表明這比BIC更好,并且BIC并沒有足夠強烈地懲罰模型的復雜性。

TA貢獻1853條經驗 獲得超6個贊
基本上,您希望在兩個變量之間找到平衡:聚類數(k)和聚類的平均方差。您希望最小化前者,同時最小化后者。當然,隨著簇數的增加,平均方差減?。ㄖ钡?em>k = n和方差= 0 的平凡情況)。
與數據分析一樣,在所有情況下,沒有一種方法比其他方法更好。最后,你必須使用自己最好的判斷。為此,有助于根據平均方差繪制聚類數(假設您已經為幾個k值運行了算法)。然后,您可以使用曲線拐點處的簇數。
添加回答
舉報