Clustering

K-medoids和PAM之間的區別

  • March 10, 2015

我知道 PAM 只是一種 K-medoids 算法。不同之處在於新的中心點選擇(每次迭代):

  • K-medoids 選擇離該中心點最近的對像作為下一個中心點
  • PAM 嘗試將集群中的所有對像作為一個新的中心點,這將導致較低的 SSE。

如果我理解得很好,PAM 會提供更好的結果,但會佔用更多時間。是這樣嗎?

哪個更好,為什麼?


這讓我感到困惑,這是一個實現 K-medoids 的軟件列表,來自Wikipedia

  • ELKI 包括幾個 k-means 變體,包括 k-medoids 和 PAM。
  • Julia 在 Clustering 包中包含一個 k-medoid 實現 [5]
  • R 包含在 k-means 的“flexclust”包變體和“cluster”包中。
  • Gap 一個基於距離的聚類的 embrional 開源庫。
  • Java 機器學習。包括一個 k-medoid 實現。

例如,它說 ELKI 包含兩種變體,k-medoids 和 PAM?

例如,首先看一下javaml中的 K-medoids 實現,看起來它找到了最接近 medoid 的對象並嘗試了它。

k-medoids 是問題規範。這可能是一個 np-hard 問題。

PAM 是一種為 k-medoids 問題找到局部最小值的算法。也許不是最佳的,但比窮舉搜索更快。

PAM 對於 k-medoids 就像 Lloyd 算法對於 k-means 一樣。Lloyd 算法是一種快速啟發式算法,可以找到 k-means 的良好解決方案,但它可能無法找到最佳解決方案。

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

comments powered by Disqus