K-means算法

K-means是一种无监督聚类算法,通过距离计算将数据分为k个类簇。算法包括选择k值,随机初始化质心,不断迭代更新直到满足停止条件。其优点是简单,但易受初始值影响,且仅适用于球形类簇。适用于数据挖掘和分类任务。
摘要由CSDN通过智能技术生成

目录

K-means算法简介

聚类大致步骤与结果(图)

算法具体步骤

相关计算(略)

算法优缺点 


K-means算法简介

k-means算法是一种基于划分的聚类算法,过程为无监督过程。以距离作为数据对象间相似性度量的标准,即数据对象间的距离越小,则它们的相似性越高,则它们越有可能在同一个类簇。数据对象间距离的计算有很多种,k-means算法通常采用欧氏距离来计算数据对象间的距离。

聚类大致步骤与结果(图)

通俗解释:将没有标注(不含标签) 的数据进行聚类算法,就能得到分过组的分类数据。

算法具体步骤

1、自主选择要划分为类的个数k;
2、第一次将随机生成k个数据点作为聚类中心;
2、计算其他点到这k个聚类中心的距离(每个点要计算k次),从而每个点都能得到唯一离得最近的聚类中心;
3、由此划分出了k个簇(类);
4、此时重新计算每个簇(类)的质心作为新的聚类中心;
5、计算其他点到这k个聚类中心的距离(每个点要计算k次),从而每个点都能得到唯一离得最近的聚类中心;
6、持续进行步骤4、步骤5的方法,直到满足停止条件

注:迭代的停止条件大致有3种

  • 设定迭代次数
  • 聚类中心不再变化
  • 前后两次聚类结果的目标函数的函数值变化很小

相关计算(略)

  • 簇中心计算
  • 距离计算(推荐使用欧式距离)

算法优缺点 

优点:简单

缺点:1、初始值影响过大。事先并不知道k值如何选取,并且初始随机产生的聚类中心对最终的聚类结果也有很重要的影响;
2、复杂度与样本呈现线性关系
3、只能发现球型类簇,有些簇是得不到的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值