K-medodis聚类算法MATLAB

本文介绍了K-medoids聚类算法在MATLAB中的实现,包括两种不同的方法:一种是国内博客中提到的,使用曼哈顿距离并选择使代价值最小的点作为聚类中心;另一种是维基百科上的PAM算法,通过尝试所有点作为聚类中心来寻找最小代价值的组合。提供了一段kMedoids.m和Main.m的代码示例,运行结果展示了算法的运用。
摘要由CSDN通过智能技术生成

国内博客,上介绍实现的K-medodis方法为:

与K-means算法类似。只是距离选择与聚类中心选择不同。

距离为曼哈顿距离

聚类中心选择为:依次把一个聚类中的每一个点当作当前类的聚类中心,求出代价值最小的点当作当前聚类中心。

维基百科上,实现的方法为PAM算法。

分成K类,把每个点都尝试当作聚类中心,并求出当前组合聚类中心点组合的代价值。找到总最小代价值的中心点。

国内实现:

kMedoids.m代码:

function [cx,cost] = kMedoids(K,data,num)
%   生成将data聚成K类的最佳聚类
%   K为聚类数目,data为数据集,num为随机初始化次数
    [cx,cost] = kMedoids1(K,data);
    for i = 2:num
        [cx1,min] = kMedoids1(K,data);
        if min<cost
            cost 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值