最小化聚类分类错误

Minimizing clustering classification error

假设我们有一些带有 N 个数据点的标记数据 X。使用某种聚类算法,比如 k-means,我们将 X 划分为 k 个簇 C_1,...,C_k。设 S_1,...,S_k 为真正的分区集并定义聚类分类误差,如下所示:

然后我想通过最小化此错误来找到最佳 "match" 集群到真正的集群。因此,对于 k=3,最佳排列可能是 {(C_1 and S_2), (C_2 and S_3), (C_3 and S_1)}。找到最佳排列的明显方法是查看所有 k!排列和由此产生的错误,并选择给出最小错误的那个。然而,这需要 k!时间,所以我的问题是,是否可以设计一种算法来更有效地做到这一点?

有很好的 well-tested 算法可以找到最佳匹配,例如

Hungarian algorithm.

但通常,将集群映射到 类 并不是一个好主意。

一个好的聚类可以告诉您一些关于您的数据的。所以它 必须 与你已知的 类 有很大不同。