机器学习机器学习实战-kmeans

机器学习机器学习实战-kmeans

简介:
聚类算法是一种无监督学习,它将相似的对象归类到同一簇中。聚类的方法可以应用所有的对象,簇内的对象越相似,聚类效果也就越好。
聚类和分类的最大不同之处在于,分类的目标是已知的,聚类是完全无监督学习,类别没有像分类那样被预先定义出来,所以叫做无监督学习。
kmeans算法是实际中最常用的聚类算法,没有之一。kmeans算法的原理简单,实现起来不是很复杂,实际中使用的效果一般也不错,所以深受广大人民群众的喜爱已知观测集x1,x2,...xn,其中观测集都是d维度向量,kmeans需要将数据集划分到k个类中,使得组内平方和最小。满足下面要求:

步骤:
标准kmeans算法的步骤一般如下: 
1.先随机挑选k个初始聚类中心; 
2.计算数据集中每个点到每个聚类中心的距离,然后将这个点分配到离该点最近的聚类中心;
3.重新计算每个类中所有点的坐标的平均值,并将得到的这个新的点作为新的聚类中心; 
重复上面第2、3步,知道聚类中心点不再大范围移动(精度自己定义)或者迭代的总次数达到最大。

主要优点:
1.原理简单,容易理解
2.实现简单
3.计算速度比较快
4.聚类效果还可以
主要缺点:
1.需要确定k值
2.对初始中心点的选择比较敏感
3.对异常值敏感,因为异常值很大程度会影响聚类的效果
4.无法增量计算,这点在数据量大的时候比较严重



机器学习机器学习实战-kmeans_第1张图片机器学习机器学习实战-kmeans_第2张图片

你可能感兴趣的:(机器学习机器学习实战)