聚类方法、装置及电子设备与流程

文档序号:13760833阅读:171来源:国知局
聚类方法、装置及电子设备与流程

本发明涉及数据处理技术领域,特别涉及一种聚类方法、装置及电子设备。



背景技术:

生活中常常存在大量错综复杂的数据,为了便于查找这些数据,需要对这些数据进行聚类,将具有相同或相似特征的数据聚为一类,如:将包含花朵的图像聚为一类等,这样,用户就可以按照类别查找需要的数据。

目前,在对数据进行聚类时,首先将每一数据作为一个初始化聚类簇,循环地根据小于预设阈值的初始化聚类蔟间的最近邻(蔟间样本最近的距离)、最远邻(蔟间样本最远的距离)、平均距离、中值距离、质心距离等度量值,合并初始化聚类簇,直到所有初始化聚类蔟间的度量值都不小于预设阈值,根据当前的所有初始化聚类簇生成聚类结果。



技术实现要素:

本发明实施例公开一种聚类技术方案。

本发明实施例公开了一种聚类方法,所述方法包括:

获取M个样本数据中每两个样本数据之间的样本间相似度,M为正整数;

根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,N为小于M的正整数;

对所述N初始化聚类簇进行聚类合并,得到所述M个样本数据对应的多个聚类簇。

在本发明的一种实现方式中,所述根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,包括:

所述M个样本数据中,对于每两个样本数据而言,如果这两个样本数据的样本间相似度大于第一阈值,则将这两个样本数据合并为一疑似初始化聚类簇;

针对得到的多个疑似初始化聚类簇,将包含相同样本数据的个数大于第二阈值的至少二个疑似初始化聚类簇合并为一初始化聚类簇。

在本发明的一种实现方式中,所述根据获取的所述样本间相似度将所述M个样本数据合并为N个初始化聚类簇,还包括:

针对得到的多个疑似初始化聚类簇,将不能与其他疑似初始化聚类簇合并的疑似初始化聚类簇作为一初始化聚类簇。

在本发明的一种实现方式中,所述第二阈值根据所述至少二个疑似初始化聚类簇中各疑似初始化聚类簇所包括的样本数据的个数总和的线性函数确定。

在本发明的一种实现方式中,所述方法还包括:对所述多个聚类簇中的至少一个聚类簇进行离群点分离,得到所述M个样本数据优化后的聚类结果。

在本发明的一种实现方式中,对一所述聚类簇进行离群点分离包括:

获得所述聚类簇内每一样本数据对应的待离群簇和非待离群簇,其中,每一样本数据对应的所述待离群簇中包括所述样本数据,所述非待离群簇中包括:所述聚类簇中除所述样本数据外的其它样本数据;

获取每一样本数据对应的待离群簇与非离群簇之间的簇间相似度;

确定所述聚类簇中所有样本数据分别对应的多个簇间相似度中最小的簇间相似度是否小于第三阈值;

响应于所述最小的簇间相似度小于所述第三阈值,将所述最小的簇间相似度对应的待离群簇和非待离群簇分别作为两个新的聚类簇;

对所述非待离群簇对应的聚类簇继续进行离群点分离操作,直到没有可分离的聚类簇。

在本发明的一种实现方式中,所述对所述N个初始化聚类簇进行聚类合并,包括:

将所述N个初始化聚类簇作为多个待聚类簇;

获取每个待聚类簇与其他待聚类簇之间的簇间相似度;

确定所述多个待聚类簇对应的所有簇间相似度中的最大簇间相似度是否大于第四阈值;

响应于所述最大簇间相似度大于所述第四阈值,将所述最大簇间相似度对应的两个待聚类簇进行合并得到一新的待聚类簇;

对所述新的待聚类簇与本次未合并的其它待聚类簇构成的新的多个待聚类簇继续进行聚类合并,直到没有可合并的待聚类簇。

在本发明的一种实现方式中,所述M个样本数据为M个图像。

在本发明的一种实现方式中,两个图像之间的样本间相似度包括:所述两个图像分别对应的两个特征向量之间的余弦距离。

本发明实施例还公开了一种聚类装置,其特征在于,所述装置包括:

获取单元,用于获取M个样本数据中每两个样本数据之间的样本间相似度,M为正整数;

合并单元,用于根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,N为小于M的正整数;

聚类单元,用于对所述N初始化聚类簇进行聚类合并,得到所述M个样本数据对应的多个聚类簇。

在本发明的一种实现方式中,所述合并单元包括:

第一合并子单元,用于所述M个样本数据中,对于每两个样本数据而言,如果这两个样本数据的样本间相似度大于第一阈值,则将这两个样本数据合并为一疑似初始化聚类簇;

第二合并子单元,用于针对得到的多个疑似初始化聚类簇,将包含相同样本数据的个数大于第二阈值的至少二个疑似初始化聚类簇合并为一初始化聚类簇。

在本发明的一种实现方式中,所述合并单元还包括

第一作为子单元,用于针对得到的多个疑似初始化聚类簇,将不能与其他疑似初始化聚类簇合并的疑似初始化聚类簇作为一初始化聚类簇。

在本发明的一种实现方式中,所述第二阈值根据所述至少二个疑似初始化聚类簇中各疑似初始化聚类簇所包括的样本数据的个数总和的线性函数确定。

在本发明的一种实现方式中,所述装置还包括:

分离单元,用于对所述多个聚类簇中的至少一个聚类簇进行离群点分离,得到所述M个样本数据优化后的聚类结果。

在本发明的一种实现方式中,所述分离单元具体用于对一所述聚类簇进行离群点分离;

所述分离单元包括:

获得子单元,用于获得所述聚类簇内每一样本数据对应的待离群簇和非待离群簇,其中,每一样本数据对应的所述待离群簇中包括所述样本数据,所述非待离群簇中包括:所述聚类簇中除所述样本数据外的其它样本数据;

第一获取子单元,用于获取每一样本数据对应的待离群簇与非离群簇之间的簇间相似度;

第一确定子单元,用于确定所述聚类簇中所有样本数据分别对应的多个簇间相似度中最小的簇间相似度是否小于第三阈值;

第一响应子单元,用于响应于所述最小的簇间相似度小于所述第三阈值,将所述最小的簇间相似度对应的待离群簇和非待离群簇分别作为两个新的聚类簇,并触发所述获得子单元,对所述非待离群簇对应的聚类簇继续进行离群点分离操作,直到没有可分离的聚类簇。

在本发明的一种实现方式中,所述聚类单元包括:

第二作为子单元,用于将所述N个初始化聚类簇作为多个待聚类簇;

第二获取子单元,用于获取每个待聚类簇与其他待聚类簇之间的簇间相似度;

第二确定子单元,用于确定所述多个待聚类簇对应的所有簇间相似度中的最大簇间相似度是否大于第四阈值;

第二响应子单元,用于响应于所述最大簇间相似度大于所述第四阈值,将所述最大簇间相似度对应的两个待聚类簇进行合并得到一新的待聚类簇,并触发所述第二获取子单元,对所述新的待聚类簇与本次未合并的其它待聚类簇构成的新的多个待聚类簇继续进行聚类合并,直到没有可合并的待聚类簇。

在本发明的一种实现方式中,所述M个样本数据为M个图像。

在本发明的一种实现方式中,两个图像之间的样本间相似度包括:所述两个图像分别对应的两个特征向量之间的余弦距离。

本发明实施例还公开了一种电子设备,包括:壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述电源电路,用于为终端的各个电路或器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行上述聚类方法对应的操作。

本发明实施例还公开了一种非暂时性计算机存储介质,该介质可存储计算机可读指令,当这些指令被执行时可使处理器执行上述聚类方法对应的操作。

本发明实施例中,对样本数据进行聚类时,先根据多个样本数据中每两个样本数据之间的样本间相似度对样本数据进行合并,获得初始化聚类簇,减少聚类时初始化聚类簇的数量,根据此时的初始化聚类簇进行聚类合并,得到所述多个样本数据对应的多个聚类簇,有效地提高了聚类速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种聚类方法的流程示意图;

图2本发明实施例提供的初始聚类簇之间的簇间相似度示意图;

图3为本发明实施例提供的一种初始化聚类簇聚类合并方法的流程示意图;

图4为本发明实施例提供的一种簇间相似度的确定方法的流程示意图;

图5为本发明实施例提供的一种聚类装置的结构示意图;

图6为本发明实施例提供的另一种聚类装置的结构示意图;

图7为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面通过具体实施例,对本发明进行详细说明。

参考图1,图1为本发明实施例提供的一种聚类方法的流程示意图,该方法包括:

S101:获取M个样本数据中每两个样本数据之间的样本间相似度,M为正整数;

这里,样本数据可以为图像、语音、视频、文本等。

一种实现方式中,在获得样本数据后,可以采用卷积神经网络或其他传统的局部特征描述子对样本数据的特征进行提取,如:当样本数据为图像时,可以采用Sift(Scale-invariant feature transform,尺度不变特征转换)、HOG(Histogram of Oriented Gradien,方向梯度直方图)等对图像进行特征提取,获得每个样本数据的特征向量;根据提取的样本数据的特征向量构建特征矩阵。假设,当前有n个样本数据,提取每一样本数据的m类特征,根据提取到的特征构建n*m阶特征矩阵。

两个样本数据之间的样本间相似度可通过但不限于采用样本数据特征向量的余弦距离表示。

基于此,在建立特征矩阵后,可以计算样本数据间特征的余弦距离,生成相似度矩阵,这里,一个样本数据的所有特征作为一个特征向量。根据上述假设,生成了n*m阶特征矩阵,根据该特征矩阵,可以生成n*n阶相似度矩阵,如:

其中,Mij为第i个样本数据和第j个样本数据之间的样本间相似度,X表示第i个样本数据的特征向量,Y表示第j个样本数据的特征向量。

S102:根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,N为小于M的正整数;

其中,每个初始化聚类族包含至少一个样本数据。

在对样本数据进行聚类前,一般需确定样本数据的初始化聚类簇。通常的做法可以将每一样本数据单独确定为一个聚类簇,这些聚类簇作为初始化聚类簇,如,当前有4个样本数据,分别为a、b、c和d,则可以确定出4个初始化聚类簇。这种方法,以每一个样本数据为基础,具有良好的鲁棒性,获得的最终的聚类结果的准确率非常高。

上述将每一样本数据单独确定为一个初始化聚类簇,根据确定的初始化聚类簇获得最终的聚类结果的方法的计算复杂度为O(n3logn),其中,n为样本数据的个数,这种方法适用于高精度、速度性能要求不是太高的场景。但在当今数据处理的大环境下,对数据的计算性能要求较高,这种情况下,可以样本数据进行合并,减少初始化聚类簇的个数。

一种实现方式中,上述根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,可以包括:

S01、获得每一样本数据与其他样本数据之间的样本间相似度;

假设,当前有4个样本数据,分别为a、b、c、d和e,此时可以获得a分别与b、c、d、e的样本间相似度、b分别与a、c、d、e的样本间相似度、c分别与a、b、d的样本间相似度、d分别与a、b、c、e的样本间相似度、e分别与a、b、c、d的样本间相似度。

S02、针对每一样本数据,查找与该样本数据之间的样本间相似度大于第一阈值的所有样本数据,将查找到的所有样本数据和该样本数据合并为一个疑似初始化聚类簇;

相似度矩阵表征的是样本数据间的相似度度量,当两个样本数据的样本间相似度非常高时,可以近似地认为这两个样本数据属于同一个类。

根据步骤S01中的假设,若a与b、d的样本间相似度大于第一阈值,b和c的样本间相似度大于第一阈值,则可以将a与b合并为一个疑似初始化聚类簇C1,a与d合并为一个疑似初始化聚类簇C2,将b与c合并为一个疑似初始化聚类簇C3,e和所有样本数据的样本间相似度都不大于第一阈值,则可以将e作为一个疑似初始化聚类簇C4

值得一提的是,第一阈值优选为非常高的阈值,如,样本间相似度的取值范围一般为[0,1],此时第一阈值可以为0.9、0.95等,由此尽可能保证疑似初始化聚类簇分类的准确性。

S03、针对得到的多个疑似初始化聚类簇,将包含相同样本数据的个数大于第二阈值的至少二个疑似初始化聚类簇合并为一初始化聚类簇。

一种实现方式中,上述第二阈值可以设定为固定的正整数,例如,假设第二阈值为1,两个疑似初始化聚类簇中有一个相同的样本数据,则将这两个疑似初始化聚类簇进行合并;另外,不能与其他疑似初始化聚类簇合并的一疑似初始化聚类簇也确定为一初始化聚类簇。

样本间相似度具有传递性,因此可以将包含相同样本数据的疑似初始化聚类簇合并为一个初始化聚类簇。

如步骤S02中的假设,疑似初始化聚类簇C1和疑似初始化聚类簇C2中都包含样本数据a,疑似初始化聚类簇C1和疑似初始化聚类簇C3中都包含样本数据b,则将疑似初始化聚类簇C1、疑似初始化聚类簇C2和疑似初始化聚类簇C3合并为一个初始化聚类簇C5;另外,疑似初始化聚类簇C4与其他疑似初始化聚类簇不包含相同样本数据,则不对疑似初始化聚类簇C4进行合并处理,将疑似初始化聚类簇C4确定为初始化聚类簇。

与上述将每一样本数据单独确定为一个初始化聚类簇,根据确定的初始化聚类簇获得最终的聚类结果的方法相比,该方法的计算复杂度为O(n2logn),这样极大的提高了对样本数据进行聚类获得最终的聚类结果的计算速度。采用这种方法确定初始化聚类簇时,只要两个疑似初始化聚类簇中存在样本数据间的样本间相似度大于第一阈值,就会将这两个疑似初始化聚类簇合并。

实际应用的某些情形中,两个疑似初始化聚类簇可能并不属于同一类,可这两个疑似初始化聚类簇中存在极少数的样本数据间的样本间相似度大于第一阈值,也就是,存在噪声点样本数据,导致这两个疑似初始化聚类簇合,这样在确定初始化聚类簇阶段可能出现误差。

如图2所示,图2中,Xi为样本数据,样本数据间存在实线连接表示两样本数据间的样本间相似度大于第一阈值,疑似初始化聚类簇C1和疑似初始化聚类簇C2之间只有X19和X12相连,若采用上述初始聚类簇合并方法,那么会将疑似初始化聚类簇C1和疑似初始化聚类簇C2合并,这使得不应合并两个疑似初始化聚类簇合并为了一个,在确定初始化聚类簇阶段出现了误差。

为了减小甚至避免在确定初始化聚类簇阶段出现误差,上述第二阈值可以根据所述至少二个疑似初始化聚类簇中各疑似初始化聚类簇所包括的样本数据的个数总和的线性函数确定。如:假设斜率k为0.5,当一个疑似初始化聚类簇C1中包含2个样本数据时,若其想与其他疑似初始化聚类簇C2合并,第二阈值为1;当疑似初始化聚类簇C1中包含4个样本数据时,若其想与其他疑似初始化聚类簇C2合并,第二阈值为2,依此类推。

一种实现方式中,上述第二阈值还可以根据公式(1)设定。

|S1∩S2|≥(|S1|+|S2|)/β+γ; (1)

其中,S1为一个疑似初始化聚类簇对应的样本数据集合,在所述S1中,每个样本数据与一样本数据的样本间相似度均大于第一阈值,S2为另一个疑似初始化聚类簇对应样本数据集合,在所述S2中,每个样本数据与所述另一样本数据之间的样本相似度均大于所述第一阈值,β、γ为预设参数。其中,可选地,可以预设β=2.5,γ=-1。

这种情况下,合并两个疑似初始化聚类簇的过程可以为:

判断第一疑似初始化聚类簇和第二疑似初始化聚类簇是否满足公式(1),其中,第一疑似初始化聚类簇和第二疑似初始化聚类簇包含相同的样本数据;

若为是,将第一疑似初始化聚类簇和第二疑似初始化聚类簇合并为一个新的疑似初始化聚类簇,再次根据公式(1)与其他疑似初始化聚类簇进行合并;

若为否,拒绝将第一疑似初始化聚类簇和第二疑似初始化聚类簇合并为一个新的疑似初始化聚类簇。

当所有疑似初始化聚类簇都不能再合并时,将所有疑似初始化聚类簇,都确定为初始化聚类簇。

如步骤S02中的假设,疑似初始化聚类簇C1和疑似初始化聚类簇C2中都包含样本数据a,则将疑似初始化聚类簇C1和疑似初始化聚类簇C2分别看作是一个样本数据集合,若C1和C2的并集的模、C1的模和C2的模满足公式(1),也就是,满足

|C1∩C2|≥(|C1|+|C2|)/β+γ,

那么就将疑似初始化聚类簇C1和疑似初始化聚类簇C2合并为一个新的疑似初始化聚类簇C5,此时疑似初始化聚类簇C3中包含样本数据b和样本数据c,则疑似初始化聚类簇C5和疑似初始化聚类簇C3中都包含样本数据b,则再次判断疑似初始化聚类簇C5和疑似初始化聚类簇C3是否满足公式(1),若不满足,拒绝合并疑似初始化聚类簇C5和疑似初始化聚类簇C3,疑似初始聚类簇C4包含样本数据d,与疑似初始聚类簇C5和疑似初始化聚类簇C3不包含相同的样本数据,分别将疑似初始化聚类簇C5、疑似初始化聚类簇C3和疑似初始聚类簇C4确定为初始化聚类簇;

若C1和C2的并集的模、C1的模和C2的模不满足公式(1),则拒绝合并疑似初始化聚类簇C1和疑似初始化聚类簇C2,疑似初始聚类簇C1和疑似初始化聚类簇C3都包含样本数据b,再次判断疑似初始化聚类簇C1和疑似初始化聚类簇C3是否满足公式(1),假设还是不满足公式(1),另外,疑似初始聚类簇C4包含样本数据d,与疑似初始聚类簇C1、疑似初始聚类簇C2和疑似初始化聚类簇C3不包含相同的样本数据,不对其进行合并处理,将疑似初始化聚类簇C1、疑似初始化聚类簇C2和疑似初始化聚类簇C3分别确定为初始化聚类簇,并将未进行合并处理疑似初始化聚类簇C4确定为初始化聚类簇。

这种在满足公式(1)的情况下,才将两个疑似初始化聚类簇进行合并,考虑的两个疑似初始化聚类簇合并(|S1∩S2|)的情况,因此确定出的初始化聚类簇更为准确,整个聚类方法的鲁棒性更好。

S103:对所述N个初始化聚类簇进行聚类合并,得到所述M个样本数据对应的多个聚类簇。

一种实现方式中,参考图3,对所述N个初始化聚类簇进行聚类合并,可以包括如下步骤:

S301:将所述N个初始化聚类簇作为多个待聚类簇;

S302:获取每个待聚类簇与其他待聚类簇之间的簇间相似度;

在计算每两个待聚类簇之间的簇间相似度时,可参考图4,图4为本发明实施例提供的一种簇间相似度的确定方法的流程示意图,该方法包括如下步骤:

S401、获得第一待聚类簇中的每一样本数据与第二待聚类簇中的每一样本数据之间的至少一个第一样本间相似度;

假设,第一待聚类簇中包含的样本数据为:a、b;第二待聚类簇中包含的样本数据为:c、d;那么确定的第一样本间相似度包括:a和c间的样本间相似度、a和d间的样本间相似度、b和c间的样本间相似度、b和d间的样本间相似度。

S402、确定相似度范围;

其中,相似度范围的最小值大于第一样本间相似度中的最小的样本间相似度,相似度范围的最大值小于第一样本间相似度中的最大的样本间相似度。实际应用中,较大值和较小值对应的样本数据在一般情况下很可能为噪声点数据,因此,在确定相似度范围时,取中间范围为相似度范围,根据该相似度范围内的第一样本间相似度,计算两待聚类簇之间的簇间相似度,能够最大程度的去除噪声点数据对计算两待聚类簇之间的簇间相似度的影响,进而提高最终聚类结果的准确率。

假设,获得的第一样本间相似度为:0.2、0.32、0.4、0.3、0.7、0.5、0.75、0.8、0.9、0.92,此时确定的相似度范围可以为:0.3-0.75;也可以为:0.4-0.7;当然也可以为其他满足上述条件的相似度范围,本发明对此不进行限定。

一种具体实现方式中,可以通过以下方式确定相似度范围:

对获得的第一样本间相似度进行排序,如,e1≥e2≥e3≥...≥eE,其中,E为获得的第一样本间相似度的个数,e为第一样本间相似度;

根据参数l、k确定相似度范围,这里,可选的,参数l可以取0.2E,参数k可以取0.8E。

根据上述假设,对获得的第一样本间相似度进行排序,0.2<0.3<0.32<0.4、0.5<0.7<0.75<0.8<0.9<0.92,根据第一样本间相似度的个数E=10,确定l=2,k=8,此时确定的相似度范围为0.3-0.9。

S403、根据相似度范围内的第一样本间相似度,计算第一待聚类簇和第二待聚类簇之间的簇间相似度。

具体地,可以根据公式:

<mrow> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mi>l</mi> </mrow> <mi>k</mi> </munderover> <msup> <mi>&alpha;</mi> <mi>i</mi> </msup> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>/</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mi>l</mi> </mrow> <mi>k</mi> </munderover> <msup> <mi>&alpha;</mi> <mi>i</mi> </msup> </mrow>

计算第一待聚类簇和第二待聚类簇之间的簇间相似度,其中,α为预设参数,可选地,0.85<α<0.95;ei为对获得的第一样本间相似度按照从小到大的顺序排序后,从最小侧起(或从最大侧起)的第i个第一样本间相似度。

S303:确定所述多个待聚类簇对应的所有簇间相似度中的最大簇间相似度是否大于第四阈值;

可选地,所述第四阈值可以在0.75-0.95的范围内取值。第四阈值很大,若簇间相似度大于第四阈值,则说明该簇间相似度对应的两个待聚类簇非常相似,可以认为这两个待聚类簇为一类,合并这两个待聚类簇。

S304:响应于所述最大簇间相似度大于所述第四阈值,将所述最大簇间相似度对应的两个待聚类簇进行合并得到一新的待聚类簇;

S305:对所述新的待聚类簇与本次未合并的其它待聚类簇构成的新的多个待聚类簇继续进行聚类合并,直到没有可合并的待聚类簇。

假设,当前计算得到的簇间相似度有0.85、0.92、0.7、0.6、0.95,从中获得的最大的簇间相似度为0.95,第四设阈值为0.75,0.95>0.75,则将0.95对应的两个待聚类簇合并为一个新的待聚类簇,并返回步骤S302,继续获取每个待聚类簇与其他待聚类簇之间的簇间相似度,直到最大的簇间相似度不大于第四阈值为止,也就是,直到没有可合并的待聚类簇为止。此时,可以将多个待聚类簇作为所述多个样本数据对应的多个聚类簇。

由于样本数据本身存在一定的噪声,并且聚类过程中存在一些可以使得最终的聚类结果鲁棒性差的因素,导致最终的聚类结果中会存在一些样本数据被错误的聚类。为了使最终呈现的聚类结果更加准确,在得到所述多个样本数据对应的多个聚类簇之后,还可以对所述多个聚类簇中的每个聚类簇进行离群点分离,得到所述多个样本数据优化后的聚类结果。

以一个聚类簇C1进行离群点分离为例,分离的过程包括如下步骤:

S31、获得聚类簇C1内每一样本数据对应的待离群簇和非待离群簇;

其中,一样本数据X对应的待离群簇中包括:样本数据X,所述样本数据X对应的非待离群簇中包括:聚类簇C1中除样本数据X外的其他样本数据。

假设,聚类簇C1包括的样本数据有:X1、X2、X3和X4,那么,X1对应的待离群簇为{X1},X1对应的非待离群簇为{X2,X3,X4};X2对应的待离群簇为{X2},X2对应的非待离群簇为{X1,X3,X4},X3对应的待离群簇为{X3},X3对应的非待离群簇为{X1,X2,X4},X4对应的待离群簇为{X4},X3对应的非待离群簇为{X1,X2,X3}。

S32、获取每一样本数据对应的待离群簇与非离群簇之间的簇间相似度;

S33、确定聚类簇C1中所有样本数据分别对应的多个簇间相似度中最小的簇间相似度是否小于第三阈值;

这里,第三阈值可以在0.3-0.5的范围内取值。第三阈值很小,若簇间相似度小于第三阈值,则说明该簇间相似度对应的待离群簇与非离群簇非常不相似,可以理解为该待离群簇与该非离群簇分离不是一类,该待离群簇包含的样本数据相对于该非离群簇来说为离群点,需要将该待离群簇与该非离群簇分离。

S34、响应于最小的簇间相似度小于第三阈值,将最小的簇间相似度对应的待离群簇和非待离群簇分别作为两个新的聚类簇;

S34、对非待离群簇对应的聚类簇继续进行离群点分离操作,直到没有可分离的聚类簇。

根据S31中假设,计算得到的簇间相似度有0.25、0.2、0.7、0.5,从中获得的最小的簇间相似度为0.2(0.2对应的待离群簇为{X2}),第三阈值为0.3,0.2<0.3,则可以确定待离群簇{X2}为离群点,将0.2对应的待离群簇和非待离群簇分别作为两个新的聚类簇,分别为:聚类簇{X2}和聚类簇{X1,X3,X4};对聚类簇{X1,X3,X4}继续进行离群点分离操作,直到最小的簇间相似度不小于第三阈值为止,也就是,直到没有可分离的聚类簇为止。

应用图1所示实施例,对样本数据进行聚类时,先根据多个样本数据中每两个样本数据之间的样本间相似度对样本数据进行合并,获得初始化聚类簇,减少聚类时初始化聚类簇的数量,根据此时的初始化聚类簇进行聚类合并,得到所述多个样本数据对应的多个聚类簇,有效地提高了聚类速度。

参考图5,图5为本发明实施例提供的一种聚类装置的结构示意图,该装置包括:

获取单元501,用于获取M个样本数据中每两个样本数据之间的样本间相似度,M为正整数;

合并单元502,用于根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,N为小于M的正整数;

聚类单元503,用于对所述N初始化聚类簇进行聚类合并,得到所述M个样本数据对应的多个聚类簇。

一种实现方式中,所述合并单元502可以包括:

第一合并子单元(图5中为示出),用于所述M个样本数据中,对于每两个样本数据而言,如果这两个样本数据的样本间相似度大于第一阈值,则将这两个样本数据合并为一疑似初始化聚类簇;

第二合并子单元(图5中为示出),用于针对得到的多个疑似初始化聚类簇,将包含相同样本数据的个数大于第二阈值的至少二个疑似初始化聚类簇合并为一初始化聚类簇。

一种实现方式中,所述合并单元502还可以包括

第一作为子单元(图5中为示出),用于针对得到的多个疑似初始化聚类簇,将不能与其他疑似初始化聚类簇合并的疑似初始化聚类簇作为一初始化聚类簇。

一种实现方式中,所述第二阈值根据所述至少二个疑似初始化聚类簇中各疑似初始化聚类簇所包括的样本数据的个数总和的线性函数确定。

一种实现方式中,可参考图6,所述装置在图5所示装置的基础上还可以包括:

分离单元601,用于对所述多个聚类簇中的每个聚类簇进行离群点分离,得到所述多个样本数据优化后的聚类结果。

一种实现方式中,所述分离单元601具体用于对一所述聚类簇进行离群点分离;

所述分离单元601可以包括:

获得子单元(图6中未示出),用于获得所述聚类簇内每一样本数据对应的待离群簇和非待离群簇,其中,每一样本数据对应的所述待离群簇中包括所述样本数据,所述非待离群簇中包括:所述聚类簇中除所述样本数据外的其它样本数据;

第一获取子单元(图6中未示出),用于获取每一样本数据对应的待离群簇与非离群簇之间的簇间相似度;

第一确定子单元(图6中未示出),用于确定所述聚类簇中所有样本数据分别对应的多个簇间相似度中最小的簇间相似度是否小于第三阈值;

第一响应子单元(图6中未示出),用于响应于所述最小的簇间相似度小于所述第三阈值,将所述最小的簇间相似度对应的待离群簇和非待离群簇分别作为两个新的聚类簇,并触发所述获得子单元,对所述非待离群簇对应的聚类簇继续进行离群点分离操作,直到没有可分离的聚类簇。

一种实现方式中,所述聚类单元503可以包括:

第二作为子单元(图5中未示出),用于将所述N个初始化聚类簇作为多个待聚类簇;

第二获取子单元(图5中未示出),用于获取每个待聚类簇与其他待聚类簇之间的簇间相似度;

第二确定子单元(图5中未示出),用于确定所述多个待聚类簇对应的所有簇间相似度中的最大簇间相似度是否大于第四阈值;

第二响应子单元(图5中未示出),用于响应于所述最大簇间相似度大于所述第四阈值,将所述最大簇间相似度对应的两个待聚类簇进行合并得到一新的待聚类簇,并触发所述第二获取子单元,对所述新的待聚类簇与本次未合并的其它待聚类簇构成的新的多个待聚类簇继续进行聚类合并,直到没有可合并的待聚类簇。

一种实现方式中,所述M个样本数据为M个图像。

一种实现方式中,两个图像之间的样本间相似度包括:所述两个图像分别对应的两个特征向量之间的余弦距离。

应用图5所示实施例,对样本数据进行聚类时,先根据多个样本数据中每两个样本数据之间的样本间相似度对样本数据进行合并,获得初始化聚类簇,减少聚类时初始化聚类簇的数量,根据此时的初始化聚类簇进行聚类合并,得到所述多个样本数据对应的多个聚类簇,有效地提高了聚类速度。

参考图7,图7为本发明实施例提供的一种电子设备的结构示意图,该电子设备包括:壳体701、处理器702、存储器703、电路板704和电源电路705,其中,电路板704安置在壳体701围成的空间内部,处理器702和存储器703设置在电路板704上;电源电路705,用于为电子设备的各个电路或器件供电;存储器703用于存储可执行程序代码;处理器702通过读取存储器703中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:

获取M个样本数据中每两个样本数据之间的样本间相似度,M为正整数;

根据获取的样本间相似度将所述M个样本数据合并为N个初始化聚类簇,N为小于M的正整数;

对所述N初始化聚类簇进行聚类合并,得到所述M个样本数据对应的多个聚类簇。

处理器702对上述步骤的具体执行过程以及处理器702通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1-6所示实施例的描述,在此不再赘述。

本发明实施例中,对样本数据进行聚类时,先根据多个样本数据中每两个样本数据之间的样本间相似度对样本数据进行合并,获得初始化聚类簇,减少聚类时初始化聚类簇的数量,根据此时的初始化聚类簇进行聚类合并,得到所述多个样本数据对应的多个聚类簇,有效地提高了聚类速度。

该电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

对于装置、电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1