K-mediods算法

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

一、K-mediods算法介绍

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

二、K-mediods算法优缺点

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

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

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

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

三、K-mediods算法描述

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

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

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

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

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

四、K-mediods算法举例

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

b) 随机选择BE为中心点

c) 计算DFB的距离最近,ACE的距离最近,则B,D,F为簇X1A,C,E为簇X2

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

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

    原文作者:聚类算法
    原文地址: https://blog.csdn.net/expleeve/article/details/46730705
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞