如何执行K-medoid [英] how to perform K-medoids
本文介绍了如何执行K-medoid的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我花了很长时间试图弄清楚如何(在纸上)执行K-medoids算法,但我不能理解如何开始和迭代。例如:
我有6个点、k、c1和c2之间的距离矩阵。
如果有人能教我如何在这个例子上执行K-medoid算法,我会很高兴的。如何开始和迭代?
谢谢
推荐答案
更多细节:
- 将K设置为所需的簇数,让我们使用2。
- 随机选择K个实体作为中间体m_1、m_2。让我们选择X_3(让我们称之为簇1)和X_5(簇2)。
- 将给定实体分配给由其最接近的medoid表示的集群。簇1将由实体(X_1、X_2、X_3)组成,只需检查您的表,这些实体更接近X_3,而不是X_5),簇2将是(X_4、X_5、X_6)。
- 更新medoid。簇的拟阵应该是到同一簇内的所有其他实体的距离总和最小的实体。X_2将成为群集1的新medoid,X_4将成为群集2的新medoid。
6-簇1中距离和最小的实体仍然是X_2,在簇2中它们是相同的,因此X_4保持不变。
另一个迭代
7-由于中间面没有变化,因此簇将保持不变。这意味着是时候停止迭代了
输出:2个集群。群集%1具有实体(X_1、X_2、X_3、X_6),群集%2具有实体(X_4和X_5)。
现在,如果我使用不同的初始medoid开始这项工作,也许我会得到不同的集群...您可能希望检查用于初始化的构建算法。这篇关于如何执行K-medoid的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文