kmeans算法中的sse_K-Means聚类算法(理论篇)

K-Means算法是一种无监督学习的聚类方法,通过选择K个初始聚类中心并不断迭代更新,使数据点归属到最近的聚类中心。文章介绍了算法过程,包括初始化中心、距离计算和SSE(误差平方和)作为评估标准。SSE用于判断最佳聚类数目K,Elbow Method可帮助选择合适的K值。同时,讨论了距离计算方法和特征值归一化的必要性。
摘要由CSDN通过智能技术生成

K-means算法是机器学习/数据挖掘领域广泛使用的聚类算法,它是一个无监督学习算法,即无需对样本进行事先标记。K-means算法通俗来说主要完成一件事:给定一个包含n个点的数据集,把该数据集划分到k个聚类中,使得各个聚类所包含的每个点到各自聚类中心的距离均小于与其他聚类中心的距离。

K-Means算法

(一)算法过程

1)确定要划分的聚类个数(K),从数据集D中任意选出K个点作为聚类中心

2)计算所有点到各个聚类中心的距离,把各个点归类到距离最近的那个聚类集中

3)计算第二步所产生的K个聚类集的中心,将该中心作为数据集D新的K个聚类中心

4)重复2)、3)直到中心点不再变化或迭代次数达到设定的最大迭代值或中心点的变化收敛于某个预定值

(二)算法分析

1)K-means算法的第一步需要确定任意的K个初始聚类中心,但实际上所谓的“任意”也有一定的原则,不恰当的选取初始中心点有时候会导致聚类结果并不理想,初始中心的选取也是K-means算法面对的困难之一,一般以彼此相距尽可能大的K个点作为初始中心点.

2)K-means算法还需要面对一个问题:到底这些数据应该分成多少个类型才合适?(即K=?)好的聚类结果应该是:各个聚类彼此间的数据特征差异很大,而聚类内的数据特征差异很小。可以用误差平方和(SSE)作为准则函数来评价,即聚类内各个点到聚类中心的距离的平方和。一般地,在合适的K范围内当SSE越少则聚类结果越好。之所以说“合适的K范围”,是因为当K太大,极端地当K等于数据集的元素个数时,此时每个点都是一个聚类,中心点就是自身,此时SSE=0,这显然不是一个理想的聚类结果。要选出合适的K值

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值