首页
学习
活动
专区
工具
TVP
发布

无监督学习:kmeans聚类

击上方

“蓝色字”

可关注我们!

今日分享:kmeans聚类

一:前言

到今天为止,机器学习专题系列文章所分享的监督学习模型就暂告一段落,不难发现,这些模型的中心就是回归;接下来把常用的无监督学习分享一下

简单来说,无监督学习是指在给定的数据集中,不存在实现给定的目标值,也就是不指定某个样本是哪一类,无监督学习要做的就是把特征值类似的样本数据划分为一类,划分的依据则是根据数据的特征(具体如何处理他们的特征,则是看具体的算法是怎么处理的,一般是根据样本之间的距离来进行类的划分)。在无监督学习中,主要聚类方法就是kmeans(基于距离),当然还有别的比如dbscan(基于密度)等。

先通过一个例子看一下聚类的前后对比图,图示将原始数据集聚成了三类:

聚类前 聚类后

二:kmeans聚类流程

1、随机选取k(k值代表类的个数)个样本数据点作为初始的聚类中心。

2、分别计算其他每个点计算到k个中心点的距离(通常使用欧几里得距离),选择距离最近的中心点并做上类标记。

3、接着对着标记后的每个类中的数据样本,重新计算出每个聚类下的的新中心店(往往取样本每个特征维度的平均值作为新的聚类中心点)。

4、重复执行第二步,如果计算得出的新中心点与原中心点一样,也就是每个类中的数据与前一次的聚类结果一样,那么结束执行即可,此时聚类已经完成。

三:sklearn中k-means模型API

主要参数

四:kmeans性能评估指标

轮廓系数计算公式

注:对于每个点i为已聚类数据中的样本,b_i 为i 到其它族群的所有样本的平均

距离,a_i 为i 到本身簇的距离平均值,最终计算出所有的样本点的轮廓系数平均值。

如果 sci 小于0,说明a_i的平均距离大于最近的其他簇,聚类效果不好;

如果 sci 越大,说明a_i的平均距离小于最近的其他簇,聚类效果好;

轮廓系数的值是介于 [-1,1] ,越趋近于1代表内聚度和分离度都相对较优。

五:Kmeans性能评估指标API

主要参数

六:Kmeans总结

特点:采用迭代式算法,直观易懂并且非常实用

缺点:容易收敛到局部最优解(多次聚类)

需要预先设定簇的数量(k-means++解决)

公众号QQ群

扫QQ群二维码进交流学习群

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181212G195PE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券