前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >K近邻聚类算法

K近邻聚类算法

作者头像
vincentbbli
发布2021-08-18 14:57:47
4320
发布2021-08-18 14:57:47
举报
文章被收录于专栏:vincent随笔

概述

随机选择K个聚类中心,在每一次迭代中,先为每个点确定其最近的聚类中心,这一步称为集群分配(cluster assignment),然后计算每个类中所有点的中心点,将该类的聚类中心移动到中心点,这一步称为中心移动(move centroid),得到这k个聚类中心的新位置,进行下一次迭代,直到每个聚类中心点正确分布在每个类的中心。

算法的输入有两个参数:聚类中心的数量K和一系列训练集X={x1,x2,…,xm},聚类过程如图所示:

伪代码如下:

K近邻聚类与K近邻分类

  • KNN聚类是非监督学习,KNN分类是监督学习
  • KNN聚类是迭代的过程,KNN分类不需要迭代

关于随机初始化

一个推荐的随机初始化的方法:

对于K比较小(2到10),进行多次随机初始化可能会很有用,但是对于K很大(如100),也许一次K聚类就能达到较好的效果。

关于选择聚类个数K

  • 根据肘部法则(elbow method),将K/distortion函数画出来,图像会看上去像人的胳膊肘,选择肘部的地方所表示的K值会是很好的选择。
  • 根据业务需要,这是很多情况下的方法,在运行KNN聚类之前心里就有了想要分成多少类的需求。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/12/10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • K近邻聚类与K近邻分类
  • 关于随机初始化
  • 关于选择聚类个数K
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档