我有两种实现,一种是 K-Means,另一种是 EM 进行软聚类。但我不知道如何在准确性方面验证它们。即哪一个通过检索更好的集群表现更好。我的假设是,因为 EM 是在做软分配,而不是像在 K-Means 中那样做硬分配。EM表现更好,但我不知道如何做这个比较......
如何对 EM 软聚类与 K-Means 的准确性进行基准测试?以及对合成数据的任何建议?
我有两种实现,一种是 K-Means,另一种是 EM 进行软聚类。但我不知道如何在准确性方面验证它们。即哪一个通过检索更好的集群表现更好。我的假设是,因为 EM 是在做软分配,而不是像在 K-Means 中那样做硬分配。EM表现更好,但我不知道如何做这个比较......
如何对 EM 软聚类与 K-Means 的准确性进行基准测试?以及对合成数据的任何建议?
评估模糊聚类本身就很困难。我相信我在某处看到了一些常见索引之一的变化。
但首先尝试回答这个问题:
聚类算法应该是一种解释工具,那么你真的能判断合成的、标记数据的性能吗?或者你不是通过走出“领域”并尝试从数据中学习新东西来衡量质量吗?
这不是一个数学问题。
EM,因为它的模糊分配,应该比 k-means 更不可能陷入局部最小值。至少在理论上。同时,它永远不会收敛。由于有限性参数,Lloyds k-means 必须收敛(使用平方欧几里得,而不是其他距离);同样的论点不再适用于模糊算法。
也许尝试构建一个 k-means 不产生最优解的场景,然后检查 EM 是否产生更好的结果。
您可以使用轮廓分数来衡量聚类算法的有效性。 http://scikit-learn.org/stable/modules/generated/sklearn.metrics.silhouette_score.html
来自文档:剪影系数是使用每个样本的平均聚类内距离 (a) 和平均最近聚类距离 (b) 计算的。样本的轮廓系数为 (b - a) / max(a, b)。为了澄清,b 是样本与样本不属于的最近聚类之间的距离。
简而言之,剪影系数衡量的是与其他潜在中心相比,点与其给定中心的接近程度。您可以使用这些分数来确定哪种聚类算法会导致点彼此更接近,或者也可以确定哪些参数会导致更高的轮廓系数(例如聚类数)。底部也给出了 K-Means 算法的示例。