kmeans算法原理
kmeans算法原理如下:
K-means算法是一种典型的基于划分的聚类算法该算法具有运算速度快,执行过程简单的优点,在很多大数据处理领域得到了广泛的应用。
利用相似性度量方法来衡量数据集中所有数据之间的关系,将关系比较密切的数据划分到一个集合中。K-means算法首先需要选择K个初始化聚类中,计算每个数据对象到K个初始化聚类中心的距离。
将数据对象分到距离聚类中心最近的那个数据集中,.当所有数据对象都划分以后,就形成了K个据集(即K个簇),接下来重新计算每个簇的数据对象的均值,将均值作为新的聚类中心。
最后计算每个数据对象到新的K个初始化聚类中心的距离,重新划分,每次划分以后,都需要重新计算初始化聚类中心,一直重复这个过程,直到所有的数据对象无法更新到其他的数据集中。
知识扩展:
k-means算法优缺点
1、优点:算法简单易实现。对于大数据集,这种算法相对可伸缩且是高效的,计算复杂度为O(TNk}接近于线性(其中T是迭代次数、N是样本总数、k为聚类簇数)。虽然以局部最优结束,但一般情况 下达到的局部最优已经可以满足聚类的需求。
2、缺点:需要人工预先确定初始K值,该值与实际的类另数可能不吻合。tK均值只能收敛到局部最优。因为求解这个代价函数是个NP问题,采用的是贪心策略,所以只能通过多次迭代收敛到局部最优,而不是全局最优。
K<均值的效果受初始值和离群点的影响大。因为k均值本质上是基于距离度量来划分的,均值和差大的维度将对数据的聚类结果产生决定性的影响,因此需要进行归-化处理:此外,离群点或噪声对均值会产生影响,导致中心偏移,因此需要进行预处理。
2024-05-27 广告