您的位置:首页 > 其它

K均值聚类(K-means)

2017-12-02 09:41 232 查看
之前在做研究,以及后来的工作中,频繁的用到K均值算法。所以就想写一写,也是一种提升吧,把有些问题想清楚。

K均值聚类算法(K-means)

首先,这个是聚类算法,大致说一下聚类和分类的区别。
聚类:事先不知道数据集样本的分类情况是什么样的,所以我们的目的就是在不知道具体类别的情况下,把样本集分成几个类。
分类:事先知道类别信息,通过学习找到一个分类的平面(或公式),把数据分到它属于的那个类中。

K均值聚类算法的步骤:
第一、确定要聚类的簇(或类)的个数K,
第二、初始化每个簇(或类)的初始值(或类中心),可以任意选取数据集中的K个数据点作为每个类的类中心,也可以任意指定类中心;
第三、计算数据集中每个数据点到这K个类的类中心的距离,如果那个距离小,就把这个数据点分到对应的类中;
第四、当数据集中所有数据点都分好类之后,重新计算每个类的类中心(可以是均值或者其他);
第五、重复步骤三和四,直到每个类的类中心不再改变,或者类中心改变范围在允许范围内。

这个算法简单。
但是,1、初始化的值是影响聚类结果的;2、数据量很大的时候,计算量也是比较大的;3、K的值也影响聚类的结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: