k-means基础

K-Means是一种无监督聚类算法,通过迭代寻找使误差平方和(SSE)最小的簇心。算法易受初始簇心选择影响,对非球形簇和离群点处理不佳。Bisecting K-means通过不断分裂簇以克服这些问题,从单一簇开始,每次选择误差最小的簇进行二分,直至得到K个簇。
摘要由CSDN通过智能技术生成

K-Means 是一种基于距离的无监督聚类算法,其算法思想较为简单,如下所示:

目标:将数据聚成K个簇,并找到这K个簇的簇心

步骤:

  • 1. 随机选择K个点作为初始簇心
  • 2. 计算每个数据点到各个簇心的距离,将每个数据点归属到最近的那个簇
  • 3. 重新计算簇心:为簇内所有点的均值
  • 4. 重复2~3,直至簇心不再变化或达到最大迭代次数。

步骤2中的距离一般为欧式距离

最关键的步骤在于步骤3,即如何计算簇心。使用误差平方和(Sum of the Squared Error,SSE)作为聚类的目标函数,来指导如何计算簇心,即找到K个簇心使得SSE最小;SSE的表达式如下:

SSE = \sum_{k=1}^{K}\sum_{i\in\{X_i\in C_k\}}{dist(O_k, X_i)}^2

其中,C_k表示第k个簇,O_k表示第k个簇的簇心。

要找到一组簇心

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值