K_means聚类算法介绍

1.K_means算法

      K_menas算法流程

      输入是样本集D={x1,x2,…xN},聚类的簇数k,最大迭代次数T
      输出是簇划分C={C1,C2,…Ck}
      1)从数据集D中随机选择k个样本作为初始的k个质心向量: {μ1,μ2,…,μk},将每个簇初始化为空集
      2)对于t=1,2,…,T
      a) 对于i=1,2…N,计算样本 xi 和各个质心向量 μj,j=1,2,…k的欧式距离,将 xi 划分到最近的簇中,即更新Cj=Cj∪{xi}
      b) 对于j=1,2,…,k,对Cj中所有的样本点重新计算新的质心
      c) 如果所有的k个质心向量都没有发生变化,则转到步骤3)
      3) 输出簇划分C={C1,C2,…Ck}

经典k_means算法
      值得一提的是关于聚类中心数目(K值)的选取,的确存在一种可行的方法,叫做Elbow Method:通过绘制K-means代价函数与聚类数目K的关系图,选取直线拐点处的K值作为最佳的聚类中心数目。但在这边不做过多的介绍,因为上述方法中的拐点在实际情况中是很少出现的。比较提倡的做法还是从实际问题出发,人工指定比较合理的K值,通过多次随机初始化聚类中心选取比较满意的结果。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值