基于引力的聚类算法代码实现

本文深入探讨了GDPC(基于引力的密度峰聚类)算法,该算法改进了经典的DPC算法在异常值检测上的局限性。通过引入物理中的G引力系数,GDPC优化了异常点的检测过程。文章详细记录了算法的实现过程,包括如何用1/F替代决策图中的δ,以及具体的代码实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经典的DPC算法在异常值检测方面有局限性,GDPC:Gravitation-based Density Peaks Clustering algorithm这篇论文引入了物理中G引力系数这一概念,使得异常点的检测更为优化。

简单来说,就是用1/F代替了原来决策图中的δ,由于这篇论文中个人认为有些许描述不清(也可能是本人太菜),代码实现搞了好久,特此记录。

for i=1:ND
    for j=1:ND
        f(i,j)=(dist(i,j)*dist(i,j))/(rho(i)*rho(j));% 1/F论文中用的δ,其实直接用dist比较好
    end
end
maxf=max(max(f));
for ii=2:ND
    F(ordrho(ii))=maxf;
    for jj=1:ii-1
        if(f(ordrho(ii),ordrho(jj))<F(ordrho(ii)))
            F(ordrho(ii))=f(ordrho(ii),ordrho(jj));
            nneigh(ordrho(ii))=ordrho(jj); %近邻不用delta判定,用1/F进行判定
        end
    end
    if(F(ordrho(ii))>0.00005)  %这个针对不同情况使用,避免出现特大值使得决策图显示不直观
        F(ordrho(ii))=0.00005;
    end
end
F(ordrho(1))=max(F(:));


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值