CN110929758A - 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法 - Google Patents

一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法 Download PDF

Info

Publication number
CN110929758A
CN110929758A CN201911017820.0A CN201911017820A CN110929758A CN 110929758 A CN110929758 A CN 110929758A CN 201911017820 A CN201911017820 A CN 201911017820A CN 110929758 A CN110929758 A CN 110929758A
Authority
CN
China
Prior art keywords
data
micro
cluster
density
points
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911017820.0A
Other languages
English (en)
Inventor
徐立中
赵嘉
黄晶
郝振纯
陈哲
许叶军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hohai University HHU filed Critical Hohai University HHU
Priority to CN201911017820.0A priority Critical patent/CN110929758A/zh
Publication of CN110929758A publication Critical patent/CN110929758A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,基于累积近邻度的局部密度定义方式通过样本与其k近邻样本的距离定义该样本的离心率,再通过该样本与其k近邻样本的离心率比较确定该样本局部密度,该局部密度使样本的局部信息被充分利用;基于图形度连接的微簇合并分配策略首先使用密度峰值聚类分配策略将样本分为多个微簇,再计算样本间的加权邻近度,以此确定微簇间的相似程度,将相似程度最高的微簇依次合并,形成最终聚类。实验结果表明本发明能在多尺度、交叉缠绕和流型的复杂数据集中正确找到密度峰值点,并能对其余样本进行正确的分配,聚类精度得到较高提升。

Description

一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法
技术领域
本发明涉及大数据分析领域的聚类算法,尤其涉及一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法。
背景技术
密度峰值聚类算法(Clustering by fast search and find of density peaks,DPC)由Alex Rodriguez和Alessandro Laio于2014年提出,并将论文发表在Science上。因其算法原理简单、运行高效、无需迭代计算目标函数即可快速找到密度峰值点(聚类中心)、适用于大规模数据集的聚类分析等特点,提出后就受到学者的关注,并在在图像处理、社区网络发现、基因序列重组、旅行社问题等得到了广泛应用,但DPC算法在处理复杂数据集时难以正确寻找密度峰值点,并且在分配时易出现分配连带错误的缺点,限制了DPC的实际应用。
发明内容
发明目的:针对现有技术中存在的问题,本发明提供一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法(A Fast Clustering Algorithm for Searching andFinding Density Peaks for Complex Data,FCA-SFDPCD),以解决在处理多尺度、交叉缠绕和流型的复杂数据集时无法找到正确密度峰值点及分配方式容易出现错误连带问题等不足。
技术方案:一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,包括如下内容:
局部密度定义:
定义1累积近邻度πk:用于测量数据点i与其k近邻点的相似程度;
Figure BDA0002246265020000011
其中,knn(i)为数据点i的k个近邻点的集合,dij为数据点i与数据点j之间的欧式距离;所述k的取值为1-100。
定义2离心率ε:用于表示数据点i与其k近邻点的关联程度;
Figure BDA0002246265020000021
该值越大,说明数据点i与其k近邻点的关系越不紧密,为离群点的可能性越大;
定义3局部密度ρ:
Figure BDA0002246265020000022
分配策略:
定义4数据点的加权邻近度ω:
Figure BDA0002246265020000023
其中,ωij表示数据点i到数据点j的加权邻近度,
Figure BDA0002246265020000024
N为样本个数。
定义5数据点与微簇的相互邻近度Ai→c,用于表示数据点属于微簇的权重:
Figure BDA0002246265020000025
所述数据点与微簇的相互邻近度越大,说明该微簇对该数据点的吸引度越大,该数据点越大概率属于该微簇;所述
Figure BDA0002246265020000026
为微簇到数据点的邻近度;所述
Figure BDA0002246265020000027
为数据点到微簇的邻近度;
定义6微簇与微簇的相互邻近度
Figure BDA0002246265020000028
用于表示两微簇属于同一个簇的权重:
Figure BDA0002246265020000029
所述
Figure BDA00022462650200000210
为微簇i到微簇j的邻近度;
Figure BDA00022462650200000211
为微簇i到微簇j的邻近度。
算法具体步骤如下:
输入:数据集data,样本近邻数k;
输出:聚类结果C;
步骤1:数据归一化;
步骤2:计算各数据点间欧式距离,计算数据点的局部密度ρ和相对距离δ值;
步骤3:计算数据点的决策值γ,选择出最终合成簇密度峰值点的集合Cn和初始生成微簇密度峰值点的集合Cm
步骤4:计算数据点的加权邻近度矩阵;
步骤5:若Cm≠Cn,计算不含密度峰值点的微簇与含密度峰值点的微簇之间的簇间相互邻近度,否则结束聚类;
步骤6:合并相互邻近度最高的不含密度峰值点的微簇与含密度峰值点的微簇,转至步骤5。
进一步的,所述步骤2中,将数据点i的相对距离δi定义为数据点i与密度比它高且距离最近的数据点间的欧式距离,计算公式为:
Figure BDA0002246265020000031
进一步的,由于密度最高的数据点不存在密度比它高的数据点,对于密度最高的数据点,将其定义为最大值,计算公式为:
Figure BDA0002246265020000032
进一步的,所述步骤3中,决策值γ的计算公式为:
γi=ρi·δi
密度大且距离远的数据点为密度峰值点,即决策值γi较大的点为密度峰值点;在找到密度峰值点后,将其余数据点分配给密度比它高的最近的数据点。
和现有技术相比,本发明具有如下显著优点:本发明通过样本与其k近邻样本的距离定义该样本的离心率,再通过该样本与其k近邻样本的离心率比较确定该样本局部密度,该增强了样本与其k近邻点的关系,新定义的ρ能更加客观地反映数据点的属性;此外,引入微簇合并的策略,首先使用密度峰值聚类分配策略将样本分为多个微簇,再计算样本间的加权邻近度,以此确定微簇间的相似程度,将相似程度最高的微簇依次合并,形成最终聚类。相比其他改进方法,FCA-SFDPCD算法在处理各类型复杂数据集时能取得更好的聚类结果,仿真实验结果表明:FCA-SFDPCD算法在多尺度、交叉缠绕和流型的复杂数据集中能正确找到密度峰值点,并能对其余样本进行正确的分配,聚类精度得到较高提升。
附图说明
图1(a)-1(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对Jain数据集的聚类结果;
图2(a)-2(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对Pathbased数据集聚类结果;
图3(a)-3(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对Aggregation数据集的聚类结果;
图4(a)-4(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对Flame数据集的聚类结果;
图5(a)-5(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对R15数据集的聚类结果;
图6(a)-6(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对Spiral数据集的聚类结果;
图7(a)-7(d)为FCA-SFDPCD算法、DPC算法、DBSCAN算法、K-means算法对S2数据集的聚类结果。
具体实施方式
下面结合具体实施例,进一步阐明本发明的技术方案。
密度峰值聚类算法是一种基于密度的聚类算法,它既能找到各簇的密度峰值点,对各簇进行聚类,又能够排除离群点。并且该算法不受微簇的形状和大小的影响。DPC算法基于这样的假设:(1)簇中心被簇中其他密度较低的数据点包围;(2)簇中心之间的相对距离较远。故为了找到每个簇的密度峰值点,DPC算法引入两个概念:(1)数据点i的局部密度ρi;(2)数据点i的相对距离δi
对于数据点i的局部密度,DPC算法给出了两种度量方式:截断核和高斯核。截断核度量方式由公式(1)给出,高斯核度量方式由公式(2)给出。
Figure BDA0002246265020000041
Figure BDA0002246265020000051
其中,dij为数据点i到数据点j的欧式距离,dc为数据点的邻域截断距离。对于截断核,每当数据点i的dc范围内存在一个点,该点的局部密度就加一,即数据点i的局部密度为该点的dc邻域内数据点的个数。当两个数据点的dc邻域内数据点个数相同时,截断核认为这两个数据点的密度是相等的,这就忽略了dc邻域内数据分布因素对局部密度的影响,故DPC原文给出了高斯核定义局部密度用于解决该问题。
DPC算法将数据点i的相对距离δi定义为数据点i与密度比它高且距离最近的数据点间的欧式距离,计算公式如(3)所示。由于密度最高的数据点不存在密度比它高的数据点,对于密度最高的数据点,DPC将其定义为最大值,计算公式如(4)所示。
Figure BDA0002246265020000052
Figure BDA0002246265020000053
为了找到所有密度峰值点,DPC为每个数据点i定义了决策值γi,计算公式如(5)所示。
γi=ρi·δi (5)
DPC认为密度大且距离远的数据点为密度峰值点,即决策值γi较大的点为密度峰值点。在找到密度峰值点后,将其余数据点分配给密度比它高的最近的数据点。
一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法(FCA-SFDPCD),包括如下内容:
局部密度定义:
定义1累积近邻度πk:用于测量数据点i与其k近邻点的相似程度,由公式(6)给出,其中knn(i)为数据点i的k个近邻点的集合,dij为数据点i与数据点j之间的欧式距离。
Figure BDA0002246265020000054
定义2离心率ε:用于表示数据点i与其k近邻点的关联程度,该值越大,说明数据点i与其k近邻点的关系越不紧密,越有可能是离群点。由公式(7)给出。
Figure BDA0002246265020000061
定义3局部密度ρ:由公式(8)给出
Figure BDA0002246265020000062
根据公式(8)可知,数据点i的局部密度与该点的累积近邻度有关,该点的累积近邻度越大,其局部密度ρi越小。同时,其局部密度还与该点的k近邻点的累积近邻度之和有关,其k近邻点的累积近邻度之和越大,该点的局部密度也将增大。这样设计的局部密度的优势在于,它不仅与其k近邻的距离有关,而且它计算的密度为该点与其k近邻点的相对密度,这样更有利于找到稀疏簇的密度峰值点。
分配策略:
由式(6)-(8)计算数据点i的局部密度ρi,再由式(3)-(4)计算数据点的距离δi,通过式(5)计算决策值γi,对γ进行排序,选择前n个点作为最终生成簇的密度峰值点,选择前m(n≤m)个数据点作为微簇密度峰值点。通过实验发现,当微簇个数m到达一定个数时,初始生成微簇个数的多少对聚类结果影响不大。通过DPC的分配策略,即将非密度峰值数据点分配给密度比它高的最近的数据点,生成m个微簇,最后通过基于图形度连接的微簇合并策略实现微簇合并。
定义4数据点的加权邻近度ω:数据点的加权邻近度由公式(9)给出,ωij表示数据点i到数据点j的加权邻近度。
Figure BDA0002246265020000063
其中,
Figure BDA0002246265020000064
定义5数据点与微簇的相互邻近度Ai→c:数据点与微簇的相互邻近度表示数据点属于微簇的权重,数据点与微簇的相互邻近度越大,说明该微簇对该数据点的吸引度越大,该数据点越大概率属于该微簇,由公式(10)给出。
Figure BDA0002246265020000071
其中,deg-(C)为微簇到数据点的邻近度,计算公式如(11)所示。deg+(C)为数据点到微簇的邻近度,计算公式如(12)所示。
Figure BDA0002246265020000072
Figure BDA0002246265020000073
定义6微簇与微簇的相互邻近度
Figure BDA0002246265020000074
微簇与微簇的相互邻近度表示两微簇属于同一个簇的权重,由公式(13)给出。
Figure BDA0002246265020000075
其中,
Figure BDA0002246265020000076
为微簇i到微簇j的邻近度,计算公式如(14)所示。
Figure BDA0002246265020000077
通过公式(9)-(14)计算不含密度峰值点的微簇与含密度峰值点的微簇之间的簇间相互邻近度,再将相互邻近度最高的一个不含密度峰值点的微簇与含密度峰值点的微簇相融合,重复该操作直至微簇个数与最终要生成的簇的个数相同为止。这样合并微簇的优势在于:该合并策略不会将含有密度峰值点的两个簇合并在一起,充分发挥了DPC算法寻找到的密度峰值点的优势;
FCA-SFDPCD算法详细步骤如下:
输入:数据集data,样本近邻数k
输出:聚类结果C
Step1:数据归一化;
Step2:计算各数据点间欧式距离,根据公式(8)和公式(3)-(4)计算数据点的ρ和δ值;
Step3:根据公式(5)计算数据点的决策值γ,选择出最终合成簇密度峰值点的集合Cn和初始生成微簇密度峰值点的集合Cm
Step4:根据式(9)计算数据点的加权邻近度矩阵;
Step5:若Cm≠Cn,根据式(10)-(14)计算不含密度峰值点的微簇与含密度峰值点的微簇之间的簇间相互邻近度,否则结束聚类;
Step6:合并相互邻近度最高的不含密度峰值点的微簇与含密度峰值点的微簇,转至步骤5。
仿真实验
为验证FCA-SFDPCD算法的有效性,使用经典的人工数据集和真实数据集测试其性能。将FCA-SFDPCD算法与FKNN-DPC、DPC、DBSCAN、OPTICS、AP和K-Means进行比较,其中DBSCAN和K-means算法为参照原文献使用Matlab 2016a编程实现,AP在Python的Sklearn库中实现,OPTICS在Python的PyClustering库中实现。DPC算法基于作者提供的源代码,但由于我们的数据集不包含噪声,因此删除“Halo”部分。对于FKNN-DPC算法,由于无法从论文作者处获得源代码,因此我们参照现有技术的原文献实现了该过程。所有结果都是经过参数调优后的最优结果。实验中使用的人工数据集和真实数据集分别在表1和表2中给出。
为更客观的反映各算法的实际结果,我们对每个算法进行参数调优,从而保证各算法的最佳性能。对于FCA-SFDPCD算法及FKNN-DPC算法我们选择k为1-100间的最优值。对于DPC算法,作者提出一个经验法则选择dc,即每个数据点所包含的相邻点个数控制在总数据点个数的1%到2%之间。通过实验发现,并不是所有数据都能在这个范围内取得最好的结果,我们修改这个百分比以获得最好的聚类效果。对于DBSCAN和OPTICS算法,它们有ε和Minpts两个参数,ε选择为0.01到1,步长为0.01;Minpts选择为1到100,步长为1。对于AP算法,由于没有通用的规则来选择参数,所以我们把参数搜索上限设置为最大相似度的几倍,然后逐渐缩小搜索范围。K-means算法的唯一参数为正确数量的类簇,同时,由于K-means算法每次聚类结果可能不相同,所以我们对每个数据集进行50次聚类,取其中最好的结果。
表1人工数据集
Figure BDA0002246265020000081
Figure BDA0002246265020000091
表2真实数据集
Figure BDA0002246265020000092
表3为各算法对表1中所有人工数据集的聚类结果,表中Arg-为各算法的最优参数值。对于FCA-SFDPCD、FKNN-DPC和传统DPC算法虽然均可以通过决策图决定聚类中心,但是对于部分数据集,通过该方法均无法获得正确的集群个数,所以我们人为指定类簇个数。
表3不同聚类算法在人工数据集上的性能
Figure BDA0002246265020000093
Figure BDA0002246265020000101
图1-7为各算法在二维人工数据集上聚类结果图,图中不同形状的点被分配给不同的簇。除DBSCAN外,其他聚类中心由六角星型表示,DBSCAN中的叉表示该算法确定的噪声点。
图1的Jain数据集由两个月牙形的簇组成,下半部分为密集簇,上半部分簇较为稀疏,对于这种由稀疏簇与密集簇组成的数据集,FCA-SFDPCD算法使用新的局部密度定义方式成功寻找到正确的密度峰值点,并且将该数据集成功聚类。而DPC算法由于无法正确的找到密度峰值点,使得DPC算法无法对该数据成功聚类。K-means算法将密集簇1中一部分数据分配给了较稀疏的簇2,这是由K-means算法只能发现球状的簇决定的。对于DBSCAN算法,它能成功对密集的簇1进行聚类,但是对于较稀疏的簇2,由于数据较稀疏,使得DBSCAN算法将稀疏的簇分成了两个簇,并将一个较远的点识别为噪声点。由表3的聚类结果发现,FCA-SFDPCD算法能对该簇做到完美聚类,DBSCAN和OPTICS算法虽然存在一些聚类错误,但是总体上达到了较好的聚类结果,而FKNN-DPC、DPC、AP和K-Means算法对该数据的聚类结果较差。
如图2所示,只有FCA-SFDPCD算法可以同时找到Pathbased数据集的类簇中心和正确的类簇数,DPC和K-means算法能够成功识别类簇中心,DBSCAN无法识别集群。虽然FCA-SFDPCD和DPC算法发现的类簇中心相似,但聚类结果却有很大的差异,通过微簇合并策略,FCA-SFDPCD算法大大缓解了DPC算法分配策略中的错误连带问题。从图2可以看出,DPC和K-means算法的聚类结果是相似的,但是导致这些样本点分配错误的原因是完全不同的。DPC出现的分配错误,导致DPC算法将大量簇3中的数据点分配给了簇1和簇2。而K-means算法产生这类现象的原因是因为K-means算法仅能识别球状的簇,该数据集不符合这个要求,故无法对其进行聚类。DBSCAN算法通过对数据点邻域进行分析,将局部区域内较稀疏的数据点定义为噪声点。由于簇3相对于其余两簇较为稀疏,DBSCAN算法将簇3的所有点都定义为噪声点。
图3的聚类结果表明,FCA-SFDPCD、DPC和DBSCAN算法均能对Aggregation数据集成功聚类,但是K-means算法将一个簇分成三个簇,并在两个簇之间选择了类簇中心。虽然DBSCAN算法对该数据集成功聚类,但是该算法也将一些点标记为噪声点,使聚类效果有所下降。表3的聚类结果表明,FCA-SFDPCD、FKNN-DPC、DBSCAN和OPTICS算法均能对该数据集成功聚类,但是与实际结果均存在些许偏差,DPC算法能对该数据集进行完美聚类,而AP和K-Means算法的聚类效果不理想。
图4的聚类结果表明,FCA-SFDPCD、DPC和DBSCAN算法均能对Flame数据集成功聚类,但是K-means算法将簇1左边的数据点分配给了簇2,又将簇2的右下角部分数据点分配给了簇1,造成了严重的聚类错误,使它不能聚类成功。与Aggregation数据集的聚类效果一样,DBSCAN算法虽然对该数据集聚类成功,但是该算法也将一些点标记为噪声点,使聚类效果有所下降。表3的聚类结果表明,FCA-SFDPCD、DPC和FKNN-DPC算法均能对该数据集进行完美聚类,但是DBSCAN算法聚类结果与实际结果却有少量不吻合,而OPTICS、AP和K-Means算法聚类结果均不是很好。
R15数据集中数据点的分布使得各算法对该数据集均能成功聚类,但是表3的聚类结果表明,虽然各算法均能对该数据做到成功聚类,但是该数据集中部分数据点存在于其他簇中,使得各算法均不能对该数据做到完美聚类。
图6的Spiral数据集为交叉数据集,从图6可知,FCA-SFDPCD、DPC和DBSCAN算法均能获得较好的聚类效果,值得注意的是,FCA-SFDPCD算法和DPC算法相比,DPC算法的密度峰值点更接近簇的头部,各密度峰值点相隔距离较近,而FCA-SFDPCD算法的密度峰值点却更靠近簇的尾部,各密度峰值点之间的距离相对较远,这类密度峰值点的优势就是能够使其他数据点更容易分配到正确的簇,当数据集变得更为复杂时,效果将变得尤为明显。由于K-Means算法只能发现球状的簇,对于交叉数据集,它的聚类效果变得很差。表3的数据表明,FCA-SFDPCD、FKNN-DPC、DPC、DBSCAN和OPTICS算法均能对该数据做到完美聚类,而AP和K-Means算法的聚类效果却不尽人意。
对于图7所示的S2数据集,其数据点分布与R15和D31数据集较为相似,但是部分簇之间更为密集,而边界点数量也有所增加。由图7可以得出,FCA-SFDPCD、DPC和K-Means算法均能成功识别各个簇,而DBSCAN算法却将右下角的三个簇合并成了一个簇,并且将更多的边界点标记为噪声。表3的数据显示,对于该数据集,FCA-SFDPCD、FKNN-DPC、DPC和K-Means算法均能达到较好的聚类效果,而DBSCAN、OPTICS和AP算法的聚类结果却不能令人满意。
综上所述,FCA-SFDPCD算法在各人工数据集上均能达到比较好的聚类效果,在边界点分配问题上,FCA-SFDPCD算法在Aggregation和S2数据集上与其他部分算法相比稍差,但是就总体效果而言,FCA-SFDPCD算法要优于其他算法。
使用上述算法对13个UCI数据集进行聚类分析,从表4可知,FCA-SFDPCD算法仅在Segmentation、inonsphere和waveform-+noise数据集上的聚类结果比其他部分算法的聚类效果略差,对于其余10个数据集均能获得较好的聚类效果。表5为各算法对13个UCI数据集聚类各指标的平均值,表5表明FCA-SFDPCD算法要优于其他6种算法。
表4 7种聚类算法在13个真实数据集上的聚类性能
Figure BDA0002246265020000131
Figure BDA0002246265020000141
表5 7种聚类算法在13个真实数据集上的平均性能
Figure BDA0002246265020000142
为进一步测试本文算法的聚类性能,将本文提出的FCA-SFDPCD算法与其他DPC改进算法进行比较,由于各算法所在文献选择的数据集及评价指标不一,所以我们选择各文献使用频率最高的五个UCI数据集及评价指标ARI对各算法进行比较。表中“-”表示原文献中该算法并未对该数据集进行测试。
由表6的结果可知,FCA-SFDPCD算法在处理Iris数据集时略逊于ADPC-DNAGA算法,与FN-DP算法效果相当,比其余6种算法效果更佳。在处理seeds数据集时,聚类效果要略逊于IDPCA和ADPC-DNAGA算法,但是比其余6种算法效果均要好。在处理wine、wdbc和segmentation数据集时FCA-SFDPCD算法聚类结果要优于其余所有算法。
表6不同的DPC改进算法在ARI指标上的测试结果
Figure BDA0002246265020000151

Claims (5)

1.一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,其特征在于,包括如下内容:
局部密度定义:
定义1 累积近邻度πk:用于测量数据点i与其k近邻点的相似程度;
Figure FDA0002246265010000011
其中,knn(i)为数据点i的k个近邻点的集合,dij为数据点i与数据点j之间的欧式距离;
定义2 离心率ε:用于表示数据点i与其k近邻点的关联程度;
Figure FDA0002246265010000012
该值越大,说明数据点i与其k近邻点的关系越不紧密,为离群点的可能性越大;
定义3 局部密度ρ:
Figure FDA0002246265010000013
分配策略:
定义4 数据点的加权邻近度ω:
Figure FDA0002246265010000014
其中,ωij表示数据点i到数据点j的加权邻近度,
Figure FDA0002246265010000015
N为样本个数;
定义5 数据点与微簇的相互邻近度Ai→c,用于表示数据点属于微簇的权重:
Figure FDA0002246265010000016
所述数据点与微簇的相互邻近度越大,说明该微簇对该数据点的吸引度越大,该数据点越大概率属于该微簇;所述
Figure FDA0002246265010000021
为微簇到数据点的邻近度;所述
Figure FDA0002246265010000022
为数据点到微簇的邻近度;
定义6 微簇与微簇的相互邻近度
Figure FDA0002246265010000023
用于表示两微簇属于同一个簇的权重:
Figure FDA0002246265010000024
所述
Figure FDA0002246265010000025
为微簇i到微簇j的邻近度;
Figure FDA0002246265010000026
为微簇i到微簇j的邻近度。
算法具体步骤如下:
输入:数据集data,样本近邻数k;
输出:聚类结果C;
步骤1:数据归一化;
步骤2:计算各数据点间欧式距离,计算数据点的局部密度ρ和相对距离δ值;
步骤3:计算数据点的决策值γ,选择出最终合成簇密度峰值点的集合Cn和初始生成微簇密度峰值点的集合Cm
步骤4:计算数据点的加权邻近度矩阵;
步骤5:若Cm≠Cn,计算不含密度峰值点的微簇与含密度峰值点的微簇之间的簇间相互邻近度,否则结束聚类;
步骤6:合并相互邻近度最高的不含密度峰值点的微簇与含密度峰值点的微簇,转至步骤5。
2.根据权利要求1所述的一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,其特征在于:
所述步骤2中,将数据点i的相对距离δi定义为数据点i与密度比它高且距离最近的数据点间的欧式距离,计算公式为:
Figure FDA0002246265010000027
3.根据权利要求2所述的一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,其特征在于:由于密度最高的数据点不存在密度比它高的数据点,对于密度最高的数据点,将其定义为最大值,计算公式为:
Figure FDA0002246265010000031
4.根据权利要求2所述的一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,其特征在于:
所述步骤3中,决策值γ的计算公式为:
γi=ρi·δi
密度大且距离远的数据点为密度峰值点,即决策值γi较大的点为密度峰值点;在找到密度峰值点后,将其余数据点分配给密度比它高的最近的数据点。
5.根据权利要求1所述的一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法,其特征在于:所述k的取值为1-100。
CN201911017820.0A 2019-10-24 2019-10-24 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法 Pending CN110929758A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911017820.0A CN110929758A (zh) 2019-10-24 2019-10-24 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911017820.0A CN110929758A (zh) 2019-10-24 2019-10-24 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法

Publications (1)

Publication Number Publication Date
CN110929758A true CN110929758A (zh) 2020-03-27

Family

ID=69849363

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911017820.0A Pending CN110929758A (zh) 2019-10-24 2019-10-24 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法

Country Status (1)

Country Link
CN (1) CN110929758A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111626321A (zh) * 2020-04-03 2020-09-04 河南师范大学 一种图像数据的聚类方法及装置
CN111862054A (zh) * 2020-07-23 2020-10-30 南京航空航天大学 一种铆钉轮廓点云提取方法
CN112036089A (zh) * 2020-09-03 2020-12-04 华能国际电力股份有限公司玉环电厂 一种基于dpc-mnd和多元状态估计的磨煤机故障预警方法
CN112475904A (zh) * 2020-11-12 2021-03-12 安徽江机重型数控机床股份有限公司 一种基于热分析的数控铣镗床加工精度预测方法
CN112633391A (zh) * 2020-12-29 2021-04-09 重庆电子工程职业学院 一种多分辨率数据聚类分析方法
CN112734777A (zh) * 2021-01-26 2021-04-30 中国人民解放军国防科技大学 一种基于簇形状边界闭包聚类的图像分割方法及系统
CN113159418A (zh) * 2021-04-20 2021-07-23 南京理工大学 基于聚类分析算法的组串群选优化联动控制技术
CN113158817A (zh) * 2021-03-29 2021-07-23 南京信息工程大学 一种基于快速密度峰聚类的客观天气分型方法
CN113743457A (zh) * 2021-07-29 2021-12-03 暨南大学 基于量子Grover搜索技术的量子密度峰值聚类方法
CN113762374A (zh) * 2021-08-31 2021-12-07 南京宁正信息科技有限公司 一种基于改进密度峰值聚类的异常轨迹检测方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111626321A (zh) * 2020-04-03 2020-09-04 河南师范大学 一种图像数据的聚类方法及装置
CN111626321B (zh) * 2020-04-03 2023-06-06 河南师范大学 一种图像数据的聚类方法及装置
CN111862054B (zh) * 2020-07-23 2021-09-28 南京航空航天大学 一种铆钉轮廓点云提取方法
CN111862054A (zh) * 2020-07-23 2020-10-30 南京航空航天大学 一种铆钉轮廓点云提取方法
CN112036089A (zh) * 2020-09-03 2020-12-04 华能国际电力股份有限公司玉环电厂 一种基于dpc-mnd和多元状态估计的磨煤机故障预警方法
CN112475904A (zh) * 2020-11-12 2021-03-12 安徽江机重型数控机床股份有限公司 一种基于热分析的数控铣镗床加工精度预测方法
CN112633391A (zh) * 2020-12-29 2021-04-09 重庆电子工程职业学院 一种多分辨率数据聚类分析方法
CN112633391B (zh) * 2020-12-29 2023-09-29 重庆电子工程职业学院 一种多分辨率数据聚类分析方法
CN112734777A (zh) * 2021-01-26 2021-04-30 中国人民解放军国防科技大学 一种基于簇形状边界闭包聚类的图像分割方法及系统
CN112734777B (zh) * 2021-01-26 2022-10-11 中国人民解放军国防科技大学 一种基于簇形状边界闭包聚类的图像分割方法及系统
CN113158817A (zh) * 2021-03-29 2021-07-23 南京信息工程大学 一种基于快速密度峰聚类的客观天气分型方法
CN113158817B (zh) * 2021-03-29 2023-07-18 南京信息工程大学 一种基于快速密度峰聚类的客观天气分型方法
CN113159418A (zh) * 2021-04-20 2021-07-23 南京理工大学 基于聚类分析算法的组串群选优化联动控制技术
CN113743457B (zh) * 2021-07-29 2023-07-28 暨南大学 基于量子Grover搜索技术的量子密度峰值聚类方法
CN113743457A (zh) * 2021-07-29 2021-12-03 暨南大学 基于量子Grover搜索技术的量子密度峰值聚类方法
CN113762374A (zh) * 2021-08-31 2021-12-07 南京宁正信息科技有限公司 一种基于改进密度峰值聚类的异常轨迹检测方法
CN113762374B (zh) * 2021-08-31 2024-01-30 南京宁正信息科技有限公司 一种基于改进密度峰值聚类的异常轨迹检测方法

Similar Documents

Publication Publication Date Title
CN110929758A (zh) 一种面向复杂数据的快速搜索和寻找密度峰值的聚类算法
Xu et al. Efficient synthetical clustering validity indexes for hierarchical clustering
Lenz et al. Scalable approximate FRNN-OWA classification
CN113344019A (zh) 一种决策值选取初始聚类中心改进的K-means算法
CN105930862A (zh) 一种基于密度自适应距离的密度峰聚类算法
CN109409400A (zh) 基于k近邻和多类合并密度峰值聚类方法、图像分割系统
CN108280472A (zh) 一种基于局部密度和聚类中心优化的密度峰聚类方法
Peng et al. Clustering by measuring local direction centrality for data with heterogeneous density and weak connectivity
Wu et al. Efficient clustering method based on density peaks with symmetric neighborhood relationship
CN107563448B (zh) 基于近红外光谱分析的样本空间聚类划分法
Sapkota et al. Data summarization using clustering and classification: Spectral clustering combined with k-means using nfph
CN111079788A (zh) 一种基于密度Canopy的K-means聚类方法
CN106778869A (zh) 一种基于参考点的快速精确近邻分类算法
Yang et al. Density clustering with divergence distance and automatic center selection
CN1828610A (zh) 一种改进的基于文档结构的文档相似性度量方法
Mihaljević et al. Towards a supervised classification of neocortical interneuron morphologies
Yousri et al. A distance-relatedness dynamic model for clustering high dimensional data of arbitrary shapes and densities
CN111626321B (zh) 一种图像数据的聚类方法及装置
Xu et al. Density peak clustering based on cumulative nearest neighbors degree and micro cluster merging
Li et al. A new density peak clustering algorithm based on cluster fusion strategy
CN117113117A (zh) 一种自适应尺度网格和扩散强度的密度峰值聚类方法
CN111914930A (zh) 一种基于自适应微簇融合的密度峰值聚类方法
Lensen et al. GPGC: genetic programming for automatic clustering using a flexible non-hyper-spherical graph-based approach
Shi et al. Density Peaks Clustering based on Candidate Center and Multi Assignment Policies
Bibi et al. Constrained clustering: general pairwise and cardinality constraints

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200327

RJ01 Rejection of invention patent application after publication