Clustering

初始化 K-means 聚類的方法

  • December 6, 2017

我對為 K-means 選擇初始種子(聚類中心)的現有技術很感興趣。

谷歌搜索導致兩個流行的選擇:

  1. 隨機選擇初始種子,並且,
  2. 使用 KMeans++ 選擇技術:Arthur & Vassilvitskii 2006 k-means++: The Benefits of Careful Seeding

是否還有其他任何人都知道但可能不那麼受歡迎的有前途的方法?

請允許我,無需多言,只需從我自己的函數(SPSS 的宏)中復制粘貼選項列表,該函數位於此處的“聚類”集合中。!kmini

創建或選擇初始聚類中心的方法。選擇:

  • RGC -隨機子樣本的質心。數據通過不重疊、成員資格、組隨機劃分k,這些組的質心被指定為初始中心。因此,中心是計算出來的,而不是從現有的數據集案例中選擇的。這種方法產生的中心彼此靠近並靠近數據的一般質心。
  • RP——隨機選擇的點k隨機選擇數據的不同案例作為初始中心。
  • RUNFP - *最遠點(跑步選擇)。*首先k將案例作為中心,然後在遍歷數據集的其餘案例期間,逐步完成中心之間的替換;替換的目的是k在可變空間中獲得彼此最遠的端點。這些在數據云中佔據外圍位置的點(案例)是產生的初始中心。(該方法在 SPSS k-means 過程中用作默認值QUICK CLUSTER。請參閱 SPSS 算法中的詳細信息。另請參閱此處描述)。
  • SIMFP -*最遠點(簡單選擇)。*第一個中心是從數據集中隨機選擇的。選擇第二個中心作為離該中心最遠的情況。第三個中心被選為距離這兩個最遠的情況(距離兩個最近的中心),-等等。
  • KMPP -*隨機最遠點,或 k-means++。*第一個中心是從數據集中隨機選擇的。第二個中心也是隨機選擇的,但是選擇一個案例的概率與它到那個(第一個)中心的距離(平方歐幾里得)成正比。第三個中心也是隨機選擇的,選擇的概率與案例到這兩個中心中最近的一個中心的距離成正比,依此類推。(Arthur, D., Vassilvitskii, S.. K-means++:仔細播種的優勢。//第 18 屆 ACM-SIAM 離散算法年度研討會論文集。2007., 1027–1035。)
  • GREP——組代表點。方法理念——以收集為中心k最具代表性的“副案”。第一個中心被視為最接近一般數據質心的情況。然後以這樣一種方式從數據點中選擇其餘的中心,即每個點都被認為是否比一組點更接近(以及多少,就平方歐幾里得距離而言)。是到任何現有的中心。即,每個點都作為候選點進行檢查,以代表一些尚未由已收集的中心很好地代表的點組。在這方面最具代表性的點被選為下一個中心。(Kaufman, L. Rousseeuw, PJ 在數據中尋找組:聚類分析簡介。,1990 年。另見:P​​ena, JM 等。K-means 算法的四種初始化方法的經驗比較 // Pattern Recognition Lett。 20 (10), 1999,
  • [還有一個很好的方法,我還沒有在宏中實現,來生成k隨機均勻但“隨機性低於隨機”的點,介於隨機和貪婪之間;該方法的潛在理論基礎]
  • 另一種方法是通過 Ward 方法進行層次聚類。如果樣本太大,您可以對對象的子樣本執行此操作。然後k它產生的簇的平均值是k-means過程的初始種子。Ward 優於其他層次聚類方法,因為它與 k-means共享共同的目標目標。

方法 RGC、RP、SIMFP、KMPP 依賴於隨機數,並且可能在每次運行中改變它們的結果。

方法 RUNFP 可能對數據集中的大小寫順序很敏感;但方法 GREP 不是(除了在數據中有許多相同的情況、聯繫的情況外)。如果相對於數據中的病例數 ( ) 而言,方法 GREP 可能無法收集所有k中心,尤其是在. [如果數據不允許該方法收集中心,宏將通知]。方法 GREP 是最慢的一種,它[在我的實現中]計算所有案例之間的距離矩陣,因此如果有數万或數百萬個案例,它就不適合了。但是,您可以對數據的隨機子樣本執行此操作。k``n``k>n/2``k

我目前不討論哪種方法“更好”以及在什麼情況下,因為到目前為止我還沒有對這個問題進行廣泛的模擬探索。我非常初步和膚淺的印像是 GREP 特別值得(但它很貴),如果你想要真正便宜的方法仍然足夠有競爭力,那麼隨機 k 點,RP,是一個不錯的選擇。

引用自:https://stats.stackexchange.com/questions/317493

comments powered by Disqus