K均值聚类是一种应用广泛的聚类技术,特别是它不依赖于任何对数据所做的假设,比如说,给定一个数据集合及对应的类数目,就可以运用K均值方法,通过最小化均方误差,来进行聚类分析。

因此,K均值实际上是一个最优化问题。在一些已知的文献中论述了K均值聚类的一下一些缺点:

  • K均值假设每个变量的分布是球形的;
  • 所有的变量具有相同的方差;
  • 类具有相同的先验概率,要求每个类拥有相同数量的观测;
  • 上述三条任何一条不满足,K均值算法即失效了
对于要求具有相同的先验概率这一条件,个人不是太赞同。在我看来,K均值的计算过程是最小化均方误差,看起来不需要任何的假设,因此也找不到这一计算过程和上述三个条件的联系。为了对上述三个条件进行验证,我们认为生成了一些数据,并运用K均值算法进行聚类。
为简便起见,在此仅分析了以上2个假设,同时假设数据是2维的。
  • 球形分布 OR 非球形分布
  • 非均衡样本数据集的聚类:
  • 总结:

对算法工作人员而言,不仅理解算法重要,算法的应用场景的理解也显得尤为重要,不同的数据,需要有不同的数据预处理方式、也需要有不同的算法与之对应,解决实际问题时才更为有效。

最后,对数据实验而言,不要害怕失败,如果选取的模型从来没有错误过,是不是也意味着这个模型也从来没有正确过呢?

对内容有部分的改动和精简,更多详情可以查看原文。
04-25 03:32