我对同一事件有两个观察结果。假设CCD_ 1和CCD_。我假设有nc
集群。我正在使用sklearn
进行聚类。
x = KMeans(n_clusters=nc).fit_predict(X)
y = KMeans(n_clusters=nc).fit_predict(Y)
是否存在允许我比较x
和y
的度量:即,如果簇x
和y
相同,则该度量将是1
。
只需提取kmeans对象的集群中心(请参阅文档):
x_centers = x.cluster_centers_
y_centers = y.cluster_centers_
您必须决定使用哪个度量来比较这些度量。请记住,中心是浮点,聚类过程是启发式的,而聚类过程是随机算法。这意味着,即使对于在相同数据上训练的集群对象,你也会很有可能得到被解释为不完全相同的的东西。
此链接讨论了一些方法和问题。
兰德指数及其调整版本正是这样做的。两个匹配的集群分配(即使被视为任意的标签本身不同),得分为1。值为0表示他们根本不同意。调整后的兰德指数使用其基线作为对聚类的随机点分配。