有许多聚类算法可用。一种流行的算法是 K-means,其中,基于给定数量的集群,算法迭代以找到对象的最佳集群。
你用什么方法来确定k-means聚类中数据中的簇数?
R 中是否有任何可用的包包含 V-fold cross-validation
确定正确簇数的方法?
另一个很好用的方法是期望最大化 (EM) 算法,它为每个实例分配一个概率分布,指示它属于每个集群的概率。
这个算法是在 R 中实现的吗?
如果是,它是否可以选择通过交叉验证自动选择最佳集群数?
你更喜欢其他的聚类方法吗?
最佳答案
对于大型“稀疏”数据集,我会认真推荐“亲和传播”方法。
与 k 均值相比,它具有更好的性能,并且本质上是确定性的。
http://www.psi.toronto.edu/affinitypropagation/
它发表在“科学”杂志上。
然而,最佳聚类算法的选择取决于所考虑的数据集。 K Means 是一种教科书方法,很可能有人已经开发出更适合您的数据集类型的更好算法/
这是 Andrew Moore 教授(CMU,谷歌)关于 K 均值和层次聚类的一个很好的教程。
http://www.autonlab.org/tutorials/kmeans.html
关于r - 您使用什么方法来选择 k-means 和 EM 中的最佳聚类数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2312913/