掌桥专利:专业的专利平台
掌桥专利
首页

BIRCH算法的优化方法、装置、设备及存储介质

文献发布时间:2023-06-19 09:26:02


BIRCH算法的优化方法、装置、设备及存储介质

技术领域

本发明实施例涉及计算机技术领域,尤其涉及一种BIRCH算法的优化方法、装置、设备及存储介质。

背景技术

随着互联网技术及计算机技术的发展,越来越多的数据被存储,以用于对存储的数据进行挖掘再利用。例如,对人脸图片数据进行聚类分析,识别人脸图片中人物身份等。

在实际应用过程中,可利用层次方法的平衡迭代规约和聚类(BalancedIterative Reducing and Clustering Using Hierarchies,缩写:BIRCH)算法,对存储的数据进行聚类,实现数据的挖掘和利用。其中BIRCH算法属于机器学习领域的一种无监督式的学习算法,可以将具有相似特征的数据划为一类。

然而,利用传统的BIRCH算法对少量数据进行聚类时,尚能达到较高的效率和准确度,但是当数据量大时,由于聚类结果与数据插入聚类特征树的顺序有关,例如刚开始聚类时,数据较少,这时某一类别的特征信息可能与能够代表该类别的真实特征信息偏离度较大,这就可能导致后面的数据与此时的特征信息进行比对时,得到的相似度低于相似度阈值而不能融入该类别,导致聚类错误,使得数据聚类准确度低。

发明内容

本发明实施例提供一种本发明实施例提供一种BIRCH算法的优化方法、装置、设备及存储介质,提高了数据聚类的准确度。

第一方面,本发明实施例提供了一种BIRCH算法的优化方法,该方法包括:确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的;若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

第二方面,本发明实施例还提供了一种BIRCH算法的优化装置,该装置包括:第一确定模块,用于确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的;第二确定模块,用于若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;聚类模块,用于根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

第三方面,本发明实施例还提供了一种计算机设备,该计算机设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面实施例所述的BIRCH算法的优化方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时以实现第一方面实施例所述的BIRCH算法的优化方法。

本发明实施例公开的技术方案,具有如下有益效果:

通过确定待聚类数据与目标叶子节点中的聚类特征间的相似度,当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在待聚类数据无法融入目标叶子节点中的聚类特征时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以对待聚类数据进行聚类,从而能够提高数据聚类的准确度,提升用户体验。

附图说明

图1是本发明实施例一提供的一种BIRCH算法的优化方法的流程示意图;

图2是本发明实施例二提供的一种BIRCH算法的优化方法的流程示意图;

图3是本发明实施例三提供的一种BIRCH算法的优化方法的流程示意图;

图4是本发明实施例四提供的一种BIRCH算法的优化方法的流程示意图;

图5是本发明实施例四提供的预设的聚类特征树的结构示意图;

图6是本发明实施例五提供的一种BIRCH算法的优化装置的结构示意图;

图7是本发明实施例六提供的一种BIRCH算法的优化装置的结构示意图;

图8是本发明实施例七提供的一种BIRCH算法的优化装置的结构示意图;

图9是本发明实施例八提供的一种BIRCH算法的优化装置的结构示意图;

图10是本发明实施例九提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。

本发明实施例针对相关技术中,利用传统的利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using Hierarchies,缩写:BIRCH)算法,对大数据量的数据进行聚类时存在的数据聚类准确度低的问题,提出一种BIRCH算法的优化方法。

本发明实施例,通过在预设的聚类特征树中,将与待聚类数据之间相似度最大的叶子节点作为目标叶子节点,确定待聚类数据与目标叶子节点中的聚类特征间的相似度,并分析待聚类数据与目标叶子节点中的聚类特征间的相似度是否符合预设条件,若不符合预设条件则确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在待聚类数据无法融入目标叶子节点中的聚类特征时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以对待聚类数据进行聚类,从而能够提高数据聚类的准确度,提升用户体验。

下面参考附图描述本发明实施例的BIRCH算法的优化方法、装置、设备及存储介质进行详细说明。

实施例一

图1是本发明实施例一提供的一种BIRCH算法的优化方法的流程示意图,本实施例可适用于对数据聚类分析的情况,该方法可以由BIRCH算法的优化装置来执行,以实现对数据聚类分析过程进行控制,该BIRCH算法的优化装置可由硬件和/或软件组成,并一般可集成于计算机设备中,该计算机设备可以是任意具有数据处理功能的硬件设备,比如电脑等。该BIRCH算法的优化方法具体包括如下:

S101,确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的,并确定相似度是否符合预设条件,若不符合则执行S102,否则执行S104。

在本实施例中,预设条件可根据实际应用场景进行自适应设置。例如,待聚类数据与叶子节点中聚类特征间的距离小于距离阈值;或者,待聚类数据与叶子节点中聚类特征间的相似度大于相似度阈值等,此处对其不做具体限定。其中,距离阈值可为叶子节点中聚类特征的最大数据半径阈值;相似度阈值可根据实际应用进行设置,此处对其不做具体限定。

其中,待聚类数据可以为以下项中任意一个:图片数据、文本数据、视频数据及音频数据等,此处对其不做具体限定。

可选的,在执行S101之前,本实施例可建立预设的聚类特征树,并从预设的聚类特征树中,确定与待聚类数据之间相似度最大的叶子节点,并将该叶子节点作为目标叶子节点。

作为一种可选的实现方式,本实施例可通过获取样本数据,并以样本数据为节点,以样本数据之间的连接关系为边,建立预设的聚类特征树。

其中,获取样本数据可包括以下方式:

方式一:对数据库进行扫描,获取样本数据;

方式二:接收用户输入的样本数据。

需要说明的是,上述两种获取样本数据的方式仅作为对本实施例的示例性说明,并不作为对本发明的具体限定。

在建立预设的聚类特征树之后,BIRCH算法的优化装置可在预设的聚类特征树中确定目标叶子节点。

可选的,本实施例中确定目标叶子节点时,首先确定待聚类数据与预设的聚类特征树中根节点中的聚类特征间的相似度,以从上述相似度中选取与待聚类数据的相似度最大的聚类特征,并确定该聚类特征的子节点,计算该子节点中的聚类特征与待聚类数据间的相似度,从上述相似度中选取与待聚类数据的相似度最大的聚类特征,并进一步确定该聚类特征的子节点,依次类推,直至确定任一非叶子节点中存在任一聚类特征与待聚类数据间的相似度最大,且该聚类特征的子节点出度为零,则确定该子节点为叶子节点,并将该叶子节点作为目标叶子节点。

进一步的,由于预设的聚类特征树中每个节点中包括的聚类特征可为N个,其中N为大于或者等于1的正整数。基于此,本实施例在确定目标叶子节点之后,BIRCH算法的优化装置可确定目标叶子节点中的聚类特征分别与待聚类数据间的相似度。其中,确定待聚类数据与目标叶子节点中的聚类特征间的相似度方式可包括多种,例如,向量空间余弦相似度、皮尔森相关系数等,此处对其不做过多赘述。

例如,若目标叶子节点A中包括3个聚类特征,分别为聚类特征A1,聚类特征A2及聚类特征A3,那么BIRCH算法的优化装置可利用相关相似度计算公式,分别计算聚类特征A1与待聚类数据间的相似度,聚类特征A2与待聚类数据间的相似度以及聚类特征A3与待聚类数据间的相似度。

在确定目标叶子节点中的聚类特征与待聚类数据间的相似度之后,BIRCH算法的优化装置可确定得到的相似度是否符合预设条件,若存在至少一个相似度符合预设条件,则将待聚类数据优先融入第一个符合预设条件的相似度对应的聚类特征中;若上述相似度不符合预设条件,则确定待聚类数据无法融入目标叶子节点中的聚类特征中。

需要说明的是,本实施例中除了确定待聚类数据与目标叶子节点中的聚类特征间的相似度之外,还可以确定待聚类数据与目标叶子节点中的聚类特征间的距离,以根据待聚类数据与目标叶子节点中的聚类特征间的距离与距离阈值的关系,对待聚类数据进行聚类。其中,该距离具体可以是欧式距离、马氏距离等,此处不作限定。

其中,当根据距离对待聚类数据进行聚类时,可将距离小于距离阈值的聚类特征确定为目标聚类特征,以将待聚类数据融入上述目标聚类特征中。

S102,若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度。

相关技术中,当确定待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,通过在目标叶子节点中新建一个聚类特征,以将待聚类数据融入新建的聚类特征中。

然而,由于建立聚类特征树初期,数据较少,这时存在某一类别的特征信息与能够代表该类型的真实特征信息偏离度较大,使得后续的数据与上述特征信息进行比对时,存在相似度低于相似度阈值而不能融入该类别,导致聚类错误;或者,由于索引不准确,存在聚类错误,具体为从聚类特征树中根节点的聚类特征索引到叶子节点包含的聚类特征中不一定存在与待聚类数据距离最近的聚类特征的情况。

为此,本实施例在确定待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以提高数据聚类准确度。

也就是说,当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合融入要求时,通过确定预设的聚类特征树中与目标叶子节点并列的其他叶子节点中的聚类特征与待聚类数据间的相似度,以根据该相似度对待聚类数据进行聚类,避免数据聚类错误,提高数据聚类准确度。

在本实施例中,确定待聚类数据与其他叶子节点中聚类特征间的相似度方式,可参见S101此处对其不做过多赘述。

S103,根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

可选的,BIRCH算法的优化装置可将得到的相似度分别与相似度阈值进行比对,确定是否存在某一相似度大于相似度阈值,若存在则将待聚类数据融入上述相似度对应的聚类特征中,若不存在则建立新的聚类特征,以将待聚类数据融入新建的聚类特征中。

S104,若所述待聚类数据与所述目标叶子节点中的任一聚类特征间的相似度符合预设条件,则将所述待聚类数据融入至该聚类特征中。

其中,当待聚类数据与目标叶子节点中某一个聚类特征间的相似度符合预设条件时,说明可将该待聚类数据融入该聚类特征中,此时BIRCH算法的优化装置可将待聚类数据融入至该聚类特征中,得到待聚类数据的聚类结果。

为了更容易理解本发明,下面通过一个具体示例对BIRCH算法的优化方法进行解释说明。

假设本实施例中待聚类数据为人脸图片数据,预设的聚类特征树中叶子节点为4个,分别为W1、W2、W3、W4,其中每个叶子节点中包括两个聚类特征,每个聚类特征表示不同人物身份信息,例如分别为人物S1、人物S2、人物S3、人物S4、人物S5、人物S6、人物S7、人物S8,那么BIRCH算法的优化装置可先确定出与人脸图片数据相似度最大的目标叶子节点W1,并计算W1中两个聚类特征分别与人脸图像数据之间的相似度,若W1中两个聚类特征与人脸图像数据间的相似度均小于相似度阈值,则获取其他叶子节点W2、W3、W4,依次计算W2、W3、W4中的聚类特征与人脸图像数据之间的相似度,若人脸图像数据与W3中第1个聚类特征间的相似度大于相似度阈值,则将人脸图像数据融入W3中第1个聚类特征,其中若第1个聚类特征表示的人物身份信息为人物S5,则可确定人脸图像数据属于人物S5。

可以理解的是,本发明实施例通过确定待聚类数据与目标叶子节点中聚类特征间的相似度,并当相似度是否符合预设条件时,则进一步确定待聚类数据与其他叶子节点中聚类特征间的相似度,由此有效避免因聚类特征树建立时存在的误差,导致对待聚类数据聚类出现聚类错误情况的发生,从而提高数据聚类准确性。

本发明实施例提供的BIRCH算法的优化方法,通过确定待聚类数据与目标叶子节点中的聚类特征间的相似度,当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,则确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在待聚类数据无法融入目标叶子节点中的聚类特征时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以对待聚类数据进行聚类,从而能够提高数据聚类的准确度,提升用户体验。

实施例二

通过上述分析可知,本发明实施例在待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,确定待聚类数据与其他叶子节点中聚类特征间的相似度,以根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。

具体实现过程中,本实施例在确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据相似度对待聚类数据进行聚类时,可通过依次确定待聚类数据与其他叶子节点中聚类特征间相似度,当任一其他叶子节点中的任一聚类特征与待聚类数据间的相似度大于相似度阈值时,则将待聚类数据融入该其他叶子节点中的上述聚类特征中。下面结合图2,对本发明实施例BIRCH算法的优化方法上述情况进行说明。

图2是本发明实施例二提供的一种BIRCH算法的优化方法的流程示意图。

如图2所示,本发明实施例的BIRCH算法的优化方法具体包括如下:

S201,确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的,并确定相似度是否符合预设条件,若不符合则执行S202,否则执行S205。

S202,若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则依次确定所述待聚类特征与其他叶子节点中聚类特征间的相似度,并确定相似度是否大于相似度阈值,若大于则执行S203,否则执行S204。

具体的,预设的聚类特征树中存在与目标叶子节点并列的其他叶子节点,且所有叶子节点之间均用双向链表链接,其中其他叶子节点的数量大于或者等于1。那么当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,为了提高待聚类数据的聚类准确度,本实施例还可确定待聚类数据与其他叶子节点中聚类特征间的相似度。在本实施例中,可依次确定待聚类数据与其他叶子节点中聚类特征间的相似度。

其中,可按照从左至右的方向依次确定待聚类数据与其他叶子节点中聚类特征间的相似度;或者,还可按照从右至左的方向依次确定待聚类数据与其他叶子节点中聚类特征间的相似度;或者,还可按照其他预设的方式确定待聚类数据与其他叶子节点中聚类特征间的相似度,此处对其不做具体限定。

S203,若所述待聚类数据与任一其他叶子节点中任一聚类特征的相似度大于相似度阈值,则将所述待聚类数据融入所述其他叶子节点的聚类特征中。

举例来说,若其他叶子节点的数量为三个,从左至右依次标记为其他叶子节点B1、其他叶子节点B2及其他叶子节点B3,则BIRCH算法的优化装置可首先计算待聚类数据与B1中聚类特征间的相似度,若B1中第一个聚类特征与待聚类数据间的距离大于相似度阈值,则将待聚类数据融入B1中的第一聚类特征中,结束此次聚类操作;若B1中聚类特征与待聚类数据间的相似度均小于或者等于相似度阈值,则计算待聚类数据与B2中聚类特征间的相似度,若确定B2中第一个聚类特征与待聚类数据间的聚类等于相似度阈值,则计算待聚类数据与B2中第二个聚类特征间的相似度,若B2中第二个聚类特征与待聚类数据间的相似度大于相似度阈值,则将待聚类数据融入B2中的第二个聚类特征中,结束此次聚类操作;若确定B2中聚类特征与待聚类数据间的相似度均小于或者等于相似度阈值,则计算待聚类数据与B3中聚类特征间的相似度,若确定B3中第4个聚类特征与待聚类数据间的相似度大于相似度阈值,则将待聚类数据融入B3中第4个聚类特征中,结束此次聚类操作。

也就是说,通过将待聚类数据依次与其他叶子节点中的聚类特征进行相似度计算,当存在任一其他叶子节点中首次出现的聚类特征与待聚类数据间的相似度大于相似度阈值时,则直接将待聚类数据融入该聚类特征中,而不需要对后续的聚类特征与待聚类数据间的相似度进行计算,从而可节省数据聚类的时间。

S204,若所述待聚类数据与所述其他叶子节点中聚类特征间的相似度均小于或者等于所述相似度阈值,则在所述目标叶子节点中新建一个聚类特征,以将所述待聚类数据融入所述新建的聚类特征中。

可选的,当待聚类数据与其他叶子节点中聚类特征间的相似度均小于或者等于相似度阈值时,则说明待聚类数据无法融入至任何一个叶子节点的聚类特征中,此时需要建立一个新的聚类特征以将待聚类数据融入新建的聚类特征中。其中,本实施例中在目标叶子节点中建立新的聚类特征。

作为一种可选的实现方式,在目标叶子节点中建立新的聚类特征时,首先确定目标叶子节点中聚类特征的数量是否大于预设的叶子节点最大聚类特征数。若小于则直接在目标叶子节点中建立新的聚类特征;若大于则将该目标叶子节点进行分裂处理,生成两个新叶子节点以替换目标叶子节点,并确定目标叶子节点中相似度最小的两个聚类特征,以将该两个聚类特征作为两个新叶子节点的聚类特征分别进行存储,然后计算目标叶子节点中除上述两个聚类特征之外的剩余聚类特征与两个新叶子节点中聚类特征间的相似度,并根据相似度将符合要求的聚类特征融入上述两个新叶子节点的聚类特征中。

例如,若剩余聚类特征为3个,分别为C1、C2及C3,那么首先计算C1与新叶子节点1的聚类特征间的相似度,若相似度大于相似度阈值,则将C1融入新叶子节点1的聚类特征中;若相似度小于相似度阈值,则计算C1与新叶子节点2的聚类特征间的相似度,若相似度大于相似度阈值,则将C1融入新叶子节点2的聚类特征中,同理,将C2和C3也融入新叶子节点1或者新叶子节点2中。

在本发明的一个实施例中,在目标叶子节点中新建一个聚类特征之后,还包括:若新建一个聚类特征后,预设的聚类特征树中总节点数量大于预设的内部节点最大聚类特征数时,则对分裂前的目标叶子节点所属的父节点进行分裂处理,依次类推直至根节点,以使分裂处理后的节点数量和小于预设的内部节点最大聚类特征数。

S205,若所述待聚类数据与所述目标叶子节点中的任一聚类特征间的相似度符合预设条件,则将所述待聚类数据融入至所述聚类特征中。

本发明实施例提供的BIRCH算法的优化方法,在确定待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,依次确定待聚类数据与其他叶子节点中聚类特征间的相似度,若待聚类数据与任一其他叶子节点中任一聚类特征的相似度大于相似度阈值,则将待聚类数据融入其他叶子节点的聚类特征中,若待聚类数据与其他叶子节点中聚类特征间的相似度均小于或者等于相似度阈值,则直接在目标叶子节点中新建一个聚类特征,以将待聚类数据融入新建的聚类特征中,从而不仅提高数据聚类准确度,还能节省数据聚类时间。

实施例三

通过上述分析可知,本发明实施例通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。

在本发明的另一实现场景中,由于聚类特征树中叶子节点在分裂时,会将一个超规格的叶子节分裂为两个新叶子节点,然后用分裂的两个新叶子节点替换原来的叶子节点。由于分裂的两个新叶子节点之间的位置处于一前一后的关系,因此确定待聚类数据与其他叶子节点中聚类特征间的相似度时,与目标叶子节点临近的其他叶子节点中聚类特征可能会将待聚类数据融入自身中。因此,本实施例在确定待聚类数据与其他叶子节点中聚类特征间的相似度时,可以目标叶子节点为起点,获取预设数值个其他叶子节点,并确定待聚类数据与预设数值个其他叶子节点中聚类特征间的相似度。下面结合图3,对本发明实施例BIRCH算法的优化方法上述情况说明。

图3是本发明实施例三提供的一种BIRCH算法的优化方法的流程示意图。

如图3所示,该BIRCH算法的优化方法具体包括如下:

S301,确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的,并确定相似度是否符合预设条件,若不符合则执行S302,否则执行S305。

S302,若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则从所述其他叶子节点中选择预设数值个其他叶子节点,作为目标其他叶子节点。

其中,预设数值可根据实际应用需要进行设置,并且具体选择哪些预设数值个叶子节点作为目标其他叶子节点,也可根据实际应用需要进行规则设置,此处对其不做具体限定。

例如,若预设数值为3,则BIRCH算法的优化装置以目标叶子节点为起点,向前获取3个其他叶子节点;或者,向后获取3个其他叶子节点;又或者,向前获取1个其他叶子节点,向后获取2个其他叶子节点;还或者,向前获取2个其他叶子节点,向后获取1个其他叶子节点等。

需要说明的是,本实施例中预设数值可根据应用需要进行调整,例如,若为了提高数据聚类准确度,则可适当增大预设数值;若为了提高数据聚类速度,则可适当减小预设数值。

S303,分别确定所述待聚类数据与预设数值个目标其他叶子节点中聚类特征间的相似度。

S304,根据所述待聚类数据与预设数值个目标其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

S305,若所述待聚类数据与所述目标叶子节点中的任一聚类特征间的相似度符合预设条件,则将所述待聚类数据融入至所述聚类特征中。

本发明实施例提供的BIRCH算法的优化方法,在确定待聚类数据与其他叶子节点中聚类特征间的相似度时,可从其他叶子节点中选择预设数值个其他叶子节点,作为目标其他叶子节点,并分别确定待聚类数据与预设数值个目标其他叶子节点中聚类特征间的相似度,然后根据待聚类数据与预设数值个其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在提高数据聚类准确度的前提下,还能提高数据聚类速度,极大的满足了用户需求。

实施例四

通过上述分析可知,本发明实施例通过从其他叶子节点中选择预设数值个其他叶子节点,作为目标其他叶子节点,以根据目标其他叶子节点中聚类特征与待聚类数据间的相似度,对待聚类数据进行聚类。

在本发明的另一种实现情形中,对待聚类数据进行聚类之后,本实施例还对预设的聚类特征树中节点的聚类特征进行特征信息更新操作,下面结合图4,对本发明实施例BIRCH算法的优化方法中,更新节点中聚类特征的特征信息的过程进行具体说明。

图4是本发明实施例四提供的一种BIRCH算法的优化方法的流程示意图。

如图4所示,该BIRCH算法的优化方法具体包括如下:

S401,确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的,并相似度是否符合预设条件,若不符合则执行S402,否则执行S404。

S402,若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件时,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度。

S403,根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

S404,若所述待聚类数据与所述目标叶子节点中的任一聚类特征间的相似度符合预设条件,则将所述待聚类数据融入至所述聚类特征中。

S405,利用所述预设的聚类特征树中节点与指向所述节点的聚类特征间的双向指针,根据所述待聚类数据的特征信息,更新节点中聚类特征的特征信息。

其中,节点包括:根节点、非叶子节点及叶子节点。

在本实施例中,聚类特征的特征信息包括:聚类数据的数量、聚类数据各特征维度的和向量及聚类数据各特征维度的平方和。

可选的,本实施例中预设的聚类特征树中每个节点与指向上述节点的聚类特征CF之间均通过双向指针连接起来,具体参见图5所示,从而使得在更新节点中聚类特征的特征信息时,可根据双向指针一次性向上更新各节点中对应聚类特征的特征信息,从而可提高更新速度。

作为一种可选的实现方式,根据待聚类数据的特征信息,更新节点中蕨类特征的特征信息包括以下步骤:

步骤一:根据待聚类数据的特征信息,更新叶子节点中待聚类数据所属的聚类特征的特征信息。

步骤二,根据双向指针确定叶子节点的聚类特征所属的非叶子节点的聚类特征,并根据叶子节点的聚类特征的特征信息,对非叶子节点的聚类特征的特征信息进行更新。

步骤三,根据双向指针确定非叶子节点的聚类特征所属的根节点的聚类特征,并根据非叶子节点的聚类特征的特征信息,对根节点的聚类特征的特征信息进行更新。

例如,若预设的聚类特征树的高度为3,分别为根节点、非叶子节点及叶子节点,则当待聚类数据X1融入至叶子节点Y1中的聚类特征Y1CF1,则根据X1的特征信息更新Y1中Y1CF1的特征信息,然后根据双向指针确定出Y1CF1所属的非叶子节点D2中的聚类特征D2CF2,根据Y1CF1的特征信息更新D2中的D2CF2的特征信息,根据双向指针确定D2CF2所属的根节点E3中的聚类特征E3CF,则根据D2CF2的特征信息更新E3CF的特征信息。

本发明实施例提供的BIRCH算法的优化方法,对待聚类数据进行聚类之后,通过利用预设的聚类特征树中节点与指向节点的聚类特征间的双向指针,根据待聚类数据的特征信息,更新节点中聚类特征的特征信息。由此,实现了对节点中的聚类特征的特征信息进行更新,提高了各节点中的聚类特征的信息的准确度,并且,通过应用节点与指向节点的聚类特征间的双向指针,有效提高了聚类特征的特征信息更新速度,提高了更新效率。

实施例五

为了实现上述目的,本发明实施例五还提出了一种BIRCH算法的优化装置。

图6是本发明实施例五提供的一种BIRCH算法的优化装置的结构示意图。

如图6所示,本发明实施例BIRCH算法的优化装置包括:第一确定模块11、第二确定模块12及数据聚类模块13。

其中,第一确定模块11用于确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的;

第二确定模块12用于若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;

数据聚类模块13用于根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

作为本发明实施例的一种可选的实现方式,所述待聚类数据包括以下项中至少一项:图片数据、文本数据、视频数据及音频数据。

需要说明的是,前述对BIRCH算法的优化方法实施例的解释说明也适用于该实施例的BIRCH算法的优化装置,其实现原理类似,此处不再赘述。

本发明实施例提供的BIRCH算法的优化装置,通过确定待聚类数据与目标叶子节点中的聚类特征间的相似度,并当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,则确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在待聚类数据无法融入目标叶子节点中的聚类特征时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以对待聚类数据进行聚类,从而能够提高数据聚类的准确度,提升用户体验。

实施例六

图7是本发明实施例六提供的一种BIRCH算法的优化装置的结构示意图。

如图7所示,本发明实施例BIRCH算法的优化装置包括:第一确定模块11、第二确定模块12及数据聚类模块13。

其中,第一确定模块11用于确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的;

第二确定模块12用于若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;

数据聚类模块13用于根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

作为本发明实施例的一种可选的实现方式,第一确定模块11具体用于:依次确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;

所述数据聚类模块13,包括:融入子单元131及新建子单元132。

融入子单元131用于若所述待聚类数据与任一其他叶子节点中任一聚类特征的相似度大于相似度阈值,则将所述待聚类数据融入所述其他叶子节点的聚类特征中;

新建子单元142用于若所述待聚类数据与所述其他叶子节点中聚类特征间的相似度小于或者等于相似度阈值,则在所述目标叶子节点中新建一个聚类特征,以将所述待聚类数据融入所述新建的聚类特征中。

需要说明的是,前述对BIRCH算法的优化方法实施例的解释说明也适用于该实施例的BIRCH算法的优化装置,其实现原理类似,此处不再赘述。

本发明实施例提供的BIRCH算法的优化装置,在确定待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,依次确定待聚类数据与其他叶子节点中聚类特征间的相似度,若待聚类数据与任一其他叶子节点中聚类特征的相似度大于相似度阈值,则将待聚类数据融入其他叶子节点的聚类特征中,若待聚类数据与其他叶子节点中聚类特征间的相似度小于或者等于相似度阈值,则直接在目标叶子节点中新建一个聚类特征,以将待聚类数据融入新建的聚类特征中,从而不仅提高数据聚类准确度,还能节省数据聚类时间。

实施例七

图8是本发明实施例七提供的一种BIRCH算法的优化装置的结构示意图。

如图8所示,本发明实施例BIRCH算法的优化装置包括:第一确定模块11、第二确定模块12及数据聚类模块13。

其中,第一确定模块11用于确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中目标叶子节点是从预设的聚类特征树中确定的;

第二确定模块12用于若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;

数据聚类模块13用于根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

作为本发明实施例的一种可选的实现方式,第二确定模块12包括:选取子单元121和确定子单元122。

其中,选取子单元121用于从所述其他叶子节点中选择预设数值个其他叶子节点,作为目标其他叶子节点;

确定子单元122用于分别确定所述待聚类数据与预设数值个目标其他叶子节点中聚类特征间的相似度。

需要说明的是,前述对BIRCH算法的优化方法实施例的解释说明也适用于该实施例的BIRCH算法的优化装置,其实现原理类似,此处不再赘述。

本发明实施例提供的BIRCH算法的优化装置,在确定待聚类数据与其他叶子节点中聚类特征间的相似度时,可从其他叶子节点中选择预设数值个其他叶子节点,作为目标其他叶子节点,并分别确定待聚类数据与预设数值个目标其他叶子节点中聚类特征间的相似度,然后根据待聚类数据与预设数值个其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在提高数据聚类准确的前提下,还能提高数据聚类速度,极大的满足了用户需求。

实施例八

图9是本发明实施例八提供的一种BIRCH算法的优化装置的结构示意图。

如图9所示,本发明实施例BIRCH算法的优化装置包括:第一确定模块11、第二确定模块12及数据聚类模块13。

其中,第一确定模块11用于确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中目标叶子节点是从预设的聚类特征树中确定的;

第二确定模块12用于若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;

数据聚类模块13用于根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

作为本发明实施例的一种可选的实现方式,所述BIRCH算法的优化装置还包括:更新模块14。

其中,更新模块14,用于利用所述预设的聚类特征树中节点与指向所述节点的聚类特征间的双向指针,根据所述待聚类数据的特征信息,更新节点中聚类特征的特征信息,其中节点包括:根节点、非叶子节点及叶子节点。

作为本发明实施例的一种可选的实现方式,更新模块14具体用于:

根据待聚类数据的特征信息,更新叶子节点中所述待聚类数据所属的聚类特征的特征信息;

根据双向指针确定所述叶子节点的聚类特征所属的非叶子节点的聚类特征,并根据所述叶子节点的聚类特征的特征信息,对所述非叶子节点的聚类特征的特征信息进行更新;

根据双向指针确定所述非叶子节点的聚类特征所属的根节点的聚类特征,并根据所述非叶子节点的聚类特征的特征信息,对所述根节点的聚类特征的特征信息进行更新。

作为本发明实施例的一种可选的实现方式,所述聚类特征的特征信息包括:聚类数据的数量、聚类数据各特征维度的和向量及聚类数据各特征维度的平方和。

需要说明的是,前述对BIRCH算法的优化方法实施例的解释说明也适用于该实施例的BIRCH算法的优化装置,其实现原理类似,此处不再赘述。

本发明实施例提供的BIRCH算法的优化装置,对待聚类数据进行聚类之后,通过利用预设的聚类特征树中节点与指向节点的聚类特征间的双向指针,根据待聚类数据的特征信息,更新节点中聚类特征的特征信息。由此,实现了对节点中的聚类特征的特征信息进行更新,提高了各节点中的聚类特征的信息的准确度,并且,通过应用节点与指向节点的聚类特征间的双向指针,有效提高了聚类特征的特征信息更新速度,提高了更新效率。

实施例九

为了实现上述目的,本发明实施例九还提出了一种计算机设备。

图10是本发明实施例九提供的一种计算机设备的结构示意图,如图10所示,该计算机设备包括处理器1000、存储器1001、输入装置1002和输出装置1003;计算机设备中处理器1000的数量可以是一个或多个,图10中以一个处理器1000为例;计算机设备中的处理器1000、存储器1001、输入装置1002和输出装置1003可以通过总线或其他方式连接,图10中以通过总线连接为例。

存储器1001作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的BIRCH算法的优化方法对应的程序指令/模块(例如,BIRCH算法的优化装置中的第一确定模块11、第二确定模块12及数据聚类模块13)。处理器1000通过运行存储在存储器1002中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的BIRCH算法的优化方法。

存储器1001可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器1001可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器1001可进一步包括相对于处理器1000远程设置的存储器,这些远程存储器可以通过网络连接至设备/终端/服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置1002可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置1003可包括显示屏等显示设备。

需要说明的是,前述对BIRCH算法的优化方法实施例的解释说明也适用于该实施例的计算机设备,其实现原理类似,此处不再赘述。

本发明实施例提供的计算机设备,通过确定待聚类数据与目标叶子节点中的聚类特征间的相似度,并当待聚类数据与目标叶子节点中的聚类特征间的相似度不符合预设条件时,则确定待聚类数据与其他叶子节点中聚类特征间的相似度,并根据待聚类数据与其他叶子节点中聚类特征间的相似度,对待聚类数据进行聚类。由此,实现了在待聚类数据无法融入目标叶子节点中的聚类特征时,通过确定待聚类数据与其他叶子节点中聚类特征间的相似度,以对待聚类数据进行聚类,从而能够提高数据聚类的准确度,提升用户体验。

实施例十

为了实现上述目的,本发明实施例十还提出了一种计算机可读存储介质。

本发明实施例提供的计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的BIRCH算法的优化方法,该方法包括:确定待聚类数据与目标叶子节点中的聚类特征间的相似度,其中所述目标叶子节点是从预设的聚类特征树中确定的;若所述待聚类数据与所述目标叶子节点中的聚类特征间的相似度不符合预设条件,则确定所述待聚类数据与其他叶子节点中聚类特征间的相似度;根据所述待聚类数据与其他叶子节点中聚类特征间的相似度,对所述待聚类数据进行聚类。

当然,本发明实施例所提供的一种计算机可读存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明实施例任意实施例所提供的BIRCH算法的优化方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明实施例可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明实施例各个实施例所述的方法。

值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。

注意,上述仅为本发明实施例的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明实施例不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明实施例的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明实施例构思的情况下,还可以包括更多其他等效实施例,而本发明实施例的范围由所附的权利要求范围决定。

技术分类

06120112160144