scikit learn中的聚类惯性公式
机器算法验证
聚类
Python
k-均值
scikit-学习
公制
2022-03-11 07:37:55
1个回答
我想我找到了 kmeans 聚类的答案:
通过查看 git 源代码,我发现对于 scikit learn,惯性计算为每个点到其最近的质心(即其分配的集群)的平方距离之和。所以在哪里是分配集群的质心,并且是平方距离。
现在差距统计的公式涉及
在哪里是簇中所有点之间的平方距离之和.
通过介绍,在平方距离公式中(是集群的质心坐标),我有一个对应于惯性的术语(如在 scikit 中)+一个术语,如果每个是每个簇的重心(应该是 kmeans)。所以我猜实际上是 scikit Inertia。
我还有两个问题:
- 你认为我的微积分是正确的吗?(例如,我不知道它是否适用于层次聚类。)
- 如果我在上面是正确的,我已经编码了差距统计(作为估计和聚类之间的对数惯性的差异)并且它表现得很糟糕,特别是在 iris 数据集上,有人试过吗?
其它你可能感兴趣的问题