我想知道:当使用一些通用算法对数据进行聚类时,是否假设聚类的大小大致相等?例如,据我所知,在 k-means 中,所有集群都应该有大约。相同数量的样本。它是否也适用于其他聚类算法?
集群中集群大小相等的假设
机器算法验证
聚类
k-均值
2022-03-17 02:53:25
2个回答
k-means 不关心集群基数
您误解了 k-means 集群“倾向于具有相同大小”的常见说法(其中 size 是指区域,而不是 cardinality)。后者在某种程度上是正确的,因为 k-means 总是在两个簇的中间正交上分割数据。这产生了数据空间的近似均匀划分(至少如果我们忽略数据外部的无限空白空间 - 这在数学上并不严格)。
但是,如果您的数据集中有不同的密度(如果没有,为什么要使用聚类),那么同一区域的两个聚类不必具有相同数量的元素。
我知道的唯一试图确保相同集群基数的算法是这个相同大小的 kmeans 算法教程。
它不成立,即使在 k 意味着。以以下数据为例:
...
...
xxxxxxxxxxxxxx
x x x x xxxxx
xxxxxxxxxx
xxxxxxxxxxx
如果您使用 2 个类运行 k 均值,显然这两个生成的集群将具有不同数量的元素。