k-means聚类算法
1、K-means聚类作用:
K-means算法采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大
准则将靠近的点集归为一类,将相互紧凑且独立的点分为一类,从而对样本点进行分类。
2、K-means聚类算法流程:
(1) 从 n个数据对象任意选择 k 个对象作为初始聚类中心;(2) 根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离dij;并根据最小距离重新对相应对象进行划分;
(3) 重新计算每个(有变化)聚类的均值(中心对象)
(4) 循环(2)到(3)直到每个聚类J不再发生变化为止
k-means 算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。
3、涉及命令和公式
(1)两点之间的距离 命令Y=pdist(X);
Y = pdist(X,'metric')
Y = pdist(X,distfun)
Y = pdist(X,'minkowski',p)
这里:
X:为数据矩阵
metric:各种距离方法
‘euclidean’:欧几里得距离Euclidean distance (default) ‘seuclidean’:标准欧几里得距离. ‘mahalanobis’:马氏 距离 ‘cityblock’:绝对值距离 ‘minkowski’:明可夫斯基距离
(2)求点群中心
(3)类类距离计算命令