1.本发明涉及聚类算法优化技术领域,尤其涉及一种基于质心偏移的聚类边界检测方法、系统、设备、介质。
背景技术:2.聚类是指将在特征空间中没有标签的数据点,依据其自身的特点聚集为若干的集合,属于同一个集合内的数据点相似,属于不同集合的数据点之间差异性大。大数据时代,聚类算法是一种有效的数据分析与信息挖掘手段,在诸如人脸识别、网页推荐系统等领域已经被成功使用。
3.在已知聚类数目k的前提下,现有聚类算法一般先找到k个点作为每个聚类的中心,再依据未标记点到聚类中心的距离为未标记点分配聚类标签。这类方法获得的零散的聚类中心不能很好的刻画聚类分布形态,阻碍聚类精度的进一步提升;此外,依据距离对未标记点进行标签分配的策略仅适合于超球状分布的数据集,对非超球状分布的数据集效果不好,而实际数据集多是呈现非超球状分布的。
4.近年来,学者发现聚类边界点是聚类的重要组成部分,因为聚类边界点可以有效的提升聚类的精度。但是现有的聚类边界检测算法计算较为复杂,因此,开展计算方式简单的聚类边界检测方法是提升聚类边界检测效率,从而助力聚类算法精度的提升的必要手段。
技术实现要素:5.本发明的目的在于提供一种基于质心偏移的聚类边界检测方法、系统、设备、介质,用于快速确定聚类边界点,提升聚类算法的精度。
6.为了实现上述目的,本发明提供如下技术方案:
7.一种基于质心偏移的聚类边界检测方法,所述边界检测方法包括:
8.计算待聚类数据集中每一数据点对应的质心偏移指标;
9.将所述质心偏移指标与预设阈值进行比较,根据比较结果确定聚类边界点。
10.与现有技术相比,本发明提供的一种基于质心偏移的聚类边界检测方法,先计算待聚类数据集中每一数据点对应的质心偏移指标,再将质心偏移指标与预设阈值进行比较,根据比较结果确定聚类边界点,能够快速确定聚类边界点,计算简便,解决现有聚类边界点计算复杂的问题,显著提升聚类边界的检测效率,提高聚类算法的精度。
11.可选的,所述计算待聚类数据集中每一数据点对应的质心偏移指标具体包括:
12.对于所述待聚类数据集中的第i个数据点,计算所述第i个数据点与所述待聚类数据集中的第j个数据点之间的欧式距离,得到所述第i个数据点对应的欧式距离集合;i=1,2,...,n;j=1,2,...,n;n为所述待聚类数据集中的数据点的个数;
13.根据所述第i个数据点对应的欧式距离集合,确定所述第i个数据点的k近邻;所述k近邻为所述第i个数据点周围的k个数据点;
14.根据所述第i个数据点的k近邻计算所述第i个数据点的质心偏移指标。
15.可选的,所述根据所述第i个数据点对应的欧式距离集合,确定所述第i个数据点的k近邻具体包括:
16.按照从小到大的顺序对所述第i个数据点对应的欧式距离集合内的所有欧式距离进行排序,并选取排序位于前k个的非零欧式距离所对应的数据点作为所述第i个数据点的k近邻。
17.可选的,所述根据所述第i个数据点的k近邻计算所述第i个数据点的质心偏移指标具体包括:
18.计算所述第i个数据点的k近邻的特征向量的均值;
19.根据所述均值和所述第i个数据点的特征向量计算所述第i个数据点的质心偏移指标。
20.可选的,所述将所述质心偏移指标与预设阈值进行比较,根据比较结果确定聚类边界点具体包括:
21.判断所述质心偏移指标是否大于所述预设阈值;
22.若是,则所述质心偏移指标对应的数据点为聚类边界点。
23.可选的,在确定所述第i个数据点的k近邻之后,所述边界检测方法还包括根据所有所述欧式距离集合构建k近邻矩阵;具体包括:
24.对于所述第i个数据点对应的欧式距离集合,保留所述第i个数据点的k近邻所对应的欧式距离,将其他欧式距离置为0,得到更新后欧式距离集合;
25.根据所有所述更新后欧式距离集合,构建k近邻矩阵;所述k近邻矩阵为n
×
n矩阵;所述k近邻矩阵中第i行第j列的元素为所述第i个数据点所对应的更新后欧式距离集合中第i个数据点与第j个数据点之间的欧式距离。
26.可选的,根据所述k近邻矩阵确定所述预设阈值。
27.一种基于质心偏移的聚类边界检测系统,所述边界检测系统包括:
28.质心偏移计算模块,用于计算待聚类数据集中每一数据点对应的质心偏移指标;
29.边界点检测模块,用于将所述质心偏移指标与预设阈值进行比较,根据比较结果确定聚类边界点。
30.一种基于质心偏移的聚类边界检测设备,包括:
31.处理器;以及
32.存储器,其中存储计算机可读程序指令,
33.其中,在所述计算机可读程序指令被所述处理器运行时执行上述的边界检测方法。
34.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述边界检测方法的步骤。
35.与现有技术相比,本发明提供的聚类边界检测系统、设备、介质的有益效果与上述技术方案所述边界检测方法的有益效果相同,此处不做赘述。
附图说明
36.此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发
明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
37.图1为本发明实施例1所提供的边界检测方法的方法流程示意图。
38.图2为本发明实施例1所提供的另一种边界检测方法的方法流程示意图;
39.图3为本发明实施例2所提供的边界检测系统的系统框图。
具体实施方式
40.为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
41.实施例1:
42.本实施例用于提供一种基于质心偏移的聚类边界检测方法,如图1所示,所述边界检测方法包括:
43.s1:计算待聚类数据集中每一数据点对应的质心偏移指标;
44.具体的,s1可以包括:
45.1)对于待聚类数据集中的第i个数据点,计算第i个数据点与待聚类数据集中的第j个数据点之间的欧式距离,得到第i个数据点对应的欧式距离集合;i=1,2,...,n;j=1,2,...,n;n为待聚类数据集中的数据点的个数;
46.待聚类数据集x包括n个数据点,且每一个数据点都对应一特征向量,特征向量的特征维数为n。则待聚类数据集x可记为:x={x1,x2,...,xn}∈rn×n,xi为第i个数据点的特征向量。
47.根据两个数据点的特征向量计算两个数据点之间的欧式距离,具体的,第i个数据点和第j个数据点之间的欧式距离x
in
为第i个数据点的特征向量的第n个维度的值;x
jn
为第j个数据点的特征向量的第n个维度的值。进而依据待聚类数据集中每一数据点对应的特征向量,则可得到第i个数据点对应的欧式距离集合,该欧式距离集合包括n个元素。
48.2)根据第i个数据点对应的欧式距离集合,确定第i个数据点的k近邻;k近邻为第i个数据点周围的k个数据点,具体指除第i个数据点之外的距离第i个数据点最近的待聚类数据集中的k个数据点。
49.具体的,按照从小到大的顺序对第i个数据点对应的欧式距离集合内的所有欧式距离进行排序,并选取排序位于前k个的非零欧式距离所对应的数据点作为第i个数据点的k近邻。进而利用1)和2)计算得到待聚类数据集中每一数据点对应的k近邻。
50.3)根据第i个数据点的k近邻计算第i个数据点的质心偏移指标。
51.对于第i个数据点,先计算第i个数据点的k近邻的特征向量的均值即将第i个数据点的k近邻所对应的特征向量进行平均,得到均值。然后根据均值和第i个数据点的特征向量计算第i个数据点的质心偏移(center drift,cd)指标。具体的,第i个数据点的质心偏移指标进而能够得到待聚类数据集中每一个数据点的质心偏移指
标,以便后续利用该质心偏移指标确定边界点。
52.s2:将所述质心偏移指标与预设阈值进行比较,根据比较结果确定所述待聚类数据集中的边界点。
53.当数据点处于聚类内部(相对于边界点)时,其k近邻围绕在数据点周围,则其质心偏移指标较小;当数据点为聚类的边界点时,其k近邻在数据点的一侧,因此其质心偏移指标较大。针对该特点,本实施例预先设定阈值thre,将所有数据点的质心偏移指标与该预设阈值进行比较,当数据点的质心偏移指标大于该预设阈值时,则将该数据点判定为聚类边界点,当数据点的质心偏移指标小于或等于该预设阈值时,则将该数据点判定为聚类的内部点。
54.本实施例所述边界检测算法能够通过简单的计算,较好的定位到各个聚类的边界点,弥补现有边界检测算法计算复杂的不足,其能够快速的为各个聚类定位较好的边界点,为后续的聚类标签分配打下良好的基础。
55.作为一种可选的实施方式,在确定第i个数据点的k近邻之后,本实施例的边界检测方法还包括根据所有欧式距离集合构建k近邻矩阵。具体的,对于第i个数据点对应的欧式距离集合,保留第i个数据点的k近邻所对应的欧式距离,并将其他欧式距离置为0,得到更新后欧式距离集合。根据所有更新后欧式距离集合,构建k近邻矩阵,k近邻矩阵为n
×
n矩阵,k近邻矩阵中第i行第j列的元素为第i个数据点所对应的更新后欧式距离集合中第i个数据点与第j个数据点之间的欧式距离。
56.更为具体的,将k近邻矩阵记为mat
knn
,mat
knn
为n
×
n的矩阵,其中,mat
knn
(i,j)表示k近邻矩阵第i行第j列的值,当第j个数据点是第i个数据点的k近邻时,则mat
knn
(i,j)为数据点i和数据点j的欧式距离,否则mat
knn
(i,j)为0。例如,某个数据集中有五个数据点a,b,c,d,e,则该数据集的k近邻矩阵为5
×
5矩阵,k值设定为2,则每行仅有2个非零值,当a的k近邻为b,d,b的k近邻为a,c,c的k近邻为b,e,d的k近邻为a,c,e的k近邻为c,d,则该数据集的k近邻矩阵可视化为下表1:
57.表1
58.0dist(a,b)0dist(a,d)0dist(b,a)0dist(b,c)000dist(c,b)00dist(c,e)dist(d,a)0dist(d,c)0000dist(e,c)dist(e,d)0
59.表1中,dist(a,b)为数据点a与数据点b之间的欧式距离,其他元素含义类似。
60.本实施例可以根据k近邻矩阵确定预设阈值,通常可以将预设阈值thre设定为即将k近邻矩阵的非零元素求均值后乘以系数1.2来计算预设阈值。
61.另外,如图2所示,本实施例在计算每一数据点的质心偏移指标之前,可以先构建k近邻矩阵,基于k近邻矩阵便直接确定每一数据点的k近邻,再确定每一数据点的质心偏移指标。此时,本实施例所提供的一种基于质心偏移的聚类边界检测方法主要包括三个部分:
k近邻矩阵的构建、质心偏移指标的计算和边界点的判定。k近邻矩阵的构建,实现数据点间基本关系的确定,作为后续质心偏移指标计算的基础数据。质心偏移指标的计算,为每个数据点计算该指标,作为后续是否将数据点判定为边界点的依据。边界点的判定,依据预先设定的阈值,结合质心偏移指标,判定数据点是否属于边界点。进而提供了一种计算简便且物理含义解释性强的聚类边界检测方法,能够提高聚类边界检测效率,从而助力聚类算法精度的提升。
62.实施例2:
63.本实施例用于提供一种基于质心偏移的聚类边界检测系统,如图3所示,所述边界检测系统包括:
64.质心偏移计算模块m1,用于计算待聚类数据集中每一数据点对应的质心偏移指标;
65.边界点检测模块m2,用于将所述质心偏移指标与预设阈值进行比较,根据比较结果确定所述待聚类数据集中的边界点。
66.本实施例用于提供一种基于质心偏移的聚类边界检测设备,包括:
67.处理器;以及
68.存储器,其中存储计算机可读程序指令,
69.其中,在所述计算机可读程序指令被所述处理器运行时执行实施例1所述的边界检测方法。
70.实施例4:
71.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现实施例1所述边界检测方法的步骤。
72.尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
73.尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。