K-Means算法整理

K-Means算法

K-means是无监督学习算法。

  • K-Mean算法步骤:
  1. 首先随机选定k个样本点作为初始簇中心;
  2. 计算所有样本点到簇中心的距离;
  3. 每个样本点选择与它距离最近的簇中心作为这个样本点的簇;
  4. 更新簇中心;
  5. 重复2,3,4步,直到聚类结果保持不变。

注:这个k就是聚类的类别数,它是我们自己定的,没有定的标准,主要看经验

评价指标

  • 最小化平方误差

E = ∑ i = 1 k ∑ x ∈ C i ∣ ∣ x − μ i ∣ ∣ 2 2 E=\sum_{i=1}^k\sum_{x\in C_i}||x-\mu_i||{^2_2} E=i=1kxCixμi22

μ i = 1 ∣ C i ∣ ∑ x ∈ C i x \mu_i=\frac{1}{|C_i|}\sum_{x\in C_i}x μi=Ci1xCix

其中k是自定义的聚类类别数, C i C_i Ci是第i个簇, μ i \mu_i μi是簇 C i C_i Ci的均值向量。

(1)式刻画了簇内样本围绕簇均值向量的紧密程度,E越小,簇内样本相似度越高。

算法改进

  • K-Means++算法思想:
  1. 首先自定义k的大小

  2. 随机选择一个样本点作为簇中心

  3. 计算所有样本点到这个簇中心的距离

  4. 选择这些样本点中距离这个簇中心的最远的样本点作为下一个簇中心

  5. 重复3,4步,直到选出第k个簇中心

  • k-means和k-means++的区别:

k-means在一开始就首先随机选定了k个样本点作为k个簇中心;
k-means++是一个一个给出簇中心,先随机选定一个样本点作为簇中心,然后计算出下一个簇中心。它使得初始的簇中心点尽可能地远,有效避免选择聚类中心的盲目性,稳定性和收敛速度都得到提高。

算法优缺点

  • 优点
  1. 算法简单快速;
  2. 在处理大数据集时,算法保持可伸缩性和高效性。
  • 缺点
  1. k值选定困难;
  2. 对初始聚类中心敏感。随机选择初始聚类中心会导致算法的不稳定性,有可能陷入局部最优;
  3. 对噪声和孤立点敏感。在计算簇均值时,那些噪声和孤立点会对结果产生极大影响,导致结果不稳定;
  4. 通常只能发现数据分布均匀的球状簇,因为它主要使用欧式距离函数度量数据对象间的相似度。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值