知识库 : K-mediods算法

Edit Document

 

 

 

 

 

 

K-mediods(K中心点)算法介绍

 


目录

一、 K-mediods 算法介绍

二、 K-mediods 算法优缺点

三、 K-mediods 算法描述

四、 K-mediods 算法举例

 

1 K-mediods 算法介绍

a)          话说,聚类算法可以被分为那么几种,比如基于划分方法的、基于层次方法的、基于密度方法的、基于网格方法的、基于模型方法的; K-mediods 算法就是基于划分方法的一种聚类算法,确切的说,是对 K-means 算法的一种改进算法。

2 K-mediods 算法优缺点

a)          K-mediods 算法具有能够处理大型数据集,结果簇相当紧凑,并且簇与簇之间明显分明的优点,这一点和 K-means 算法相同。

b)         同时,该算法也有 K-means 同样的缺点,如,必须事先确定类簇数和中心点,簇数和中心点的选择对结果影响很大;一般在获得一个局部最优的解后就停止了;对于除数值型以外的数据不适合;只适用于聚类结果为凸形的数据集等。

c)          K-means 相比, K-mediods 算法对于噪声不那么敏感,这样对于离群点就不会造成划分的结果偏差过大,少数数据不会造成重大影响。

d)         K-mediods 由于上述原因被认为是对 K-means 的改进,但由于按照中心点选择的方式进行计算,算法的时间复杂度也比 K-means 上升了 O(n)

3 K-mediods 算法描述

a)          首先随机选取一组聚类样本作为中心点集

b)         每个中心点对应一个簇

c)          计算各样本点到各个中心点的距离(如欧几里德距离),将样本点放入距离中心点最短的那个簇中

d)         计算各簇中,距簇内各样本点距离的绝度误差最小的点,作为新的中心点

e)          如果新的中心点集与原中心点集相同,算法终止;如果新的中心点集与原中心点集不完全相同,返回 b)

4 K-mediods 算法举例

a)          设有 (A,B,C,D,E,F) 一组样本

b)         随机选择 B E 为中心点

c)          计算 D F B 的距离最近, A C E 的距离最近,则 B,D,F 为簇 X1 A,C,E 为簇 X2

d)         计算 X1 发现, D 作为中心点的绝对误差最小, X2 中依然是 E 作为中心点绝对误差最小

e)          重新以 D E 作为中心点,重复 c) d) 步骤后,不再变换,则簇划分确定。

Attachments:

K-mediods算法.doc (application/msword)