声明
部分参考K-Means聚类算法原理
聚类算法
聚类算法是一种无监督学习算法,它主要用于将相似的样本自动归到一个类别中.
聚类算法与分类算法的区别:聚类算法是无监督学习,而分类是监督学习,在聚类算法中我们根据样本之间的相似度(或者说距离),将样本归到不同的类别中,对于不同的相似度我们得到的聚类结果可能是不通的.
K-Means是一种聚类算法,它实现起来比较简单,而且聚类的效果也不错,所以应用比较广泛.K-Means也有很多变体,如K-Means++,距离计算优化elkan K-Means算法和大数据情况下的优化Mini Batch K-Means算法。
K-Means原理
K-Means算法的思想很简单,对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇.让簇内的点尽量的紧密连在一起,而让簇间的距离尽可能大.
如果用目标函数来表示,假设簇划分为 ( C