一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据聚类方法及装置与流程

2023-02-19 01:20:18 来源:中国专利 TAG:


1.本技术主要涉及数据聚类技术领域,具体涉及一种数据聚类方法及装置。


背景技术:

2.聚类算法是机器学习领域比较重要的一部分,常用来挖掘相似样本簇,分离样本,在一些客群价值挖掘,异常检测,数据降维,特征工程,推荐算法,数据可视化等领域承担着重要角色。传统聚类算法分为基于距离,基于密度,基于层次,基于分类,基于神经网络,基于流势。除了基于神经网络的方法可以采用批梯度下降方式逐步更新网络参数外,其余方式都属于传统机器学习范畴,大部分都需要基于全量样本数据进行距离计算,而样本间的距离计算非常耗时,导致传统聚类方法不适用大数据环境下的计算。主要表现:传统聚类在每次迭代过程中需要对全量数据进行运算,因此受限于内存导致传统聚类不适用大数据。传统聚类基于样本间距离计算进行迭代,因此当数据样本增加时,计算量呈指数级增加,不适用大数据问题下的聚类。
3.也即,现有数据聚类方法在对海量数据进行聚类时效率较低。


技术实现要素:

4.本技术提供一种数据聚类方法及装置,旨在解决现有数据聚类方法在对海量数据进行聚类时效率较低的问题。
5.第一方面,本技术提供一种数据聚类方法,该数据聚类方法包括:获取待聚类数据集;
6.将所述待聚类数据集分成至少两个子数据集;
7.分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;
8.将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;
9.基于各个族类的全量族类质心向量确定所述待聚类数据集中各个样本对应的族类。
10.可选地,所述将所述待聚类数据集分成至少两个子数据集,包括:
11.对所述待聚类数据集进行随机采样,得到至少两个子数据集。
12.可选地,所述分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,包括:
13.获取预设聚类值;
14.基于所述预设聚类值分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,其中,每个子数据集对应的族类数据集的数量均为所述预设聚类值。
15.可选地,所述获取预设聚类值,包括:
16.获取多个候选聚类值;
17.分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值
对应的多个间隔统计量,其中,所述目标子数据集为所述至少两个子数据集中的任意一个;
18.将最小间隔统计量对应的候选聚类值确定为所述预设聚类值。
19.可选地,所述分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量,包括:
20.利用蒙特卡洛模拟在所述目标子数据集所处样本空间区域进行多次采样,得到多个随机样本集;
21.分别计算各个所述随机样本集的聚类误差和所述目标子数据集的聚类误差;
22.根据各个所述随机样本集的聚类误差和所述目标子数据集的聚类误差计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量。
23.可选地,所述将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量,包括:
24.在属于同一族类的至少两个族类数据集中,将各个族类数据集所在的子数据集的样本数量与待聚类数据集的样本数量的比值确定为各个族类数据集的质心向量权重;
25.根据各个族类数据集的质心向量权重将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量。
26.可选地,所述基于各个族类的全量族类质心向量确定所述待聚类数据集中各个样本对应的族类,包括:
27.分别将所述待聚类数据集中各个样本确定为目标样本;
28.计算所述目标样本与各个族类的全量族类质心向量的距离;
29.将与所述目标样本距离最小的全量族类质心向量所对应的族类确定为所述目标样本的族类,得到所述待聚类数据集中各个样本对应的族类。
30.第二方面,本技术提供一种数据聚类装置,所述数据聚类装置包括:
31.获取单元,获取待聚类数据集;
32.子集生成单元,用于将所述待聚类数据集分成至少两个子数据集;
33.聚类单元,用于分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;
34.加权单元,用于将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;
35.确定单元,基于各个族类的全量族类质心向量确定所述待聚类数据集中各个样本对应的族类。
36.可选地,所述子集生成单元,用于:
37.对所述待聚类数据集进行随机采样,得到至少两个子数据集。
38.可选地,所述聚类单元,用于:
39.获取预设聚类值;
40.基于所述预设聚类值分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,其中,每个子数据集对应的族类数据集的数量均为所述预设聚类值。
41.可选地,所述聚类单元,用于:
42.获取多个候选聚类值;
43.分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值
对应的多个间隔统计量,其中,所述目标子数据集为所述至少两个子数据集中的任意一个;
44.将最小间隔统计量对应的候选聚类值确定为所述预设聚类值。
45.可选地,所述聚类单元,用于:
46.利用蒙特卡洛模拟在所述目标子数据集所处样本空间区域进行多次采样,得到多个随机样本集;
47.分别计算各个所述随机样本集的聚类误差和所述目标子数据集的聚类误差;
48.根据各个所述随机样本集的聚类误差和所述目标子数据集的聚类误差计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量。
49.可选地,所述加权单元,用于:
50.在属于同一族类的至少两个族类数据集中,将各个族类数据集所在的子数据集的样本数量与待聚类数据集的样本数量的比值确定为各个族类数据集的质心向量权重;
51.根据各个族类数据集的质心向量权重将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量。
52.可选地,所述确定单元,基于:
53.分别将所述待聚类数据集中各个样本确定为目标样本;
54.计算所述目标样本与各个族类的全量族类质心向量的距离;
55.将与所述目标样本距离最小的全量族类质心向量所对应的族类确定为所述目标样本的族类,得到所述待聚类数据集中各个样本对应的族类。
56.第三方面,本技术提供一种计算机设备,所述计算机设备包括:
57.一个或多个处理器;
58.存储器;以及
59.一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现第一方面中任一项所述的数据聚类方法。
60.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行第一方面中任一项所述的数据聚类方法中的步骤。
61.本技术提供一种数据聚类方法及装置,该数据聚类方法包括:获取待聚类数据集;将待聚类数据集分成至少两个子数据集;分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。本技术先将待聚类数据分成多个子数据集,分别对多个子数据集独立进行聚类得到各个子数据集对应的族类数据集,在各个子数据集聚类完成后进行质心加权,得到各个族类的全量族类质心向量,由于聚类是在多个子数据集上独立进行的,相对于传统方式对整个待聚类数据集直接进行聚类,大幅减小了计算量,且可以并行聚类,提高了数据聚类的效率。
附图说明
62.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于
本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
63.图1是本技术实施例提供的数据聚类系统的场景示意图;
64.图2是本技术实施例中提供的数据聚类方法的一个实施例流程示意图;
65.图3是本技术实施例中提供的数据聚类方法中获取预设聚类值的一个实施例流程示意图;
66.图4是本技术实施例中提供的数据聚类装置的一个实施例结构示意图;
67.图5是本技术实施例中提供的计算机设备的一个实施例结构示意图。
具体实施方式
68.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
69.在本技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
70.在本技术中,“示例性”一词用来表示“用作例子、例证或说明”。本技术中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本技术,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本技术。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本技术的描述变得晦涩。因此,本技术并非旨在限于所示的实施例,而是与符合本技术所公开的原理和特征的最广范围相一致。
71.本技术实施例提供一种数据聚类方法及装置,以下分别进行详细说明。
72.请参阅图1,图1为本技术实施例所提供的数据聚类系统的场景示意图,该数据聚类系统可以包括计算机设备100,计算机设备100中集成有数据聚类装置。
73.本技术实施例中,该计算机设备100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本技术实施例中所描述的计算机设备100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(cloud computing)的大量计算机或网络服务器构成。
74.本技术实施例中,上述的计算机设备100可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中计算机设备100可以是台式机、便携式电脑、网络服务器、掌上电脑(personal digital assistant,pda)、移动手机、平板电脑、无线终端设备、通信设
备、嵌入式设备等,本实施例不限定计算机设备100的类型。
75.本领域技术人员可以理解,图1中示出的应用环境,仅仅是本技术方案的一种应用场景,并不构成对本技术方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的计算机设备,例如图1中仅示出1个计算机设备,可以理解的,该数据聚类系统还可以包括一个或多个可处理数据的其他计算机设备,具体此处不作限定。
76.另外,如图1所示,该数据聚类系统还可以包括存储器200,用于存储数据。
77.需要说明的是,图1所示的数据聚类系统的场景示意图仅仅是一个示例,本技术实施例描述的数据聚类系统以及场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着数据聚类系统的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
78.首先,本技术实施例中提供一种数据聚类方法,该数据聚类方法包括:获取待聚类数据集;将待聚类数据集分成至少两个子数据集;分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。
79.如图2所示,图2是本技术实施例中数据聚类方法的一个实施例流程示意图,该数据聚类方法包括如下步骤s201~s205:
80.s201、获取待聚类数据集。
81.其中,待聚类数据集可以是物流数据,也可以是其他数据,待聚类数据集中包括多个样本,需要根据各个样本的特征对待聚类数据集中的多个样本进行归类。例如,待聚类数据集中包括n个样本,n为大于等于2的整数,且n大于等于要聚类的类别数。
82.在一个具体的实施例中,获取预设时间段内的多个运单样本,将多个运单样本确定为待聚类数据集。预设时间段可以是1天、2天等,根据具体情况设定即可。运单样本包括运单重量、运单流向、运单拖寄物类别、运单收发信息、运费信息等。
83.s202、将待聚类数据集分成至少两个子数据集。
84.在一个具体的实施例中,对待聚类数据集进行随机采样,得到至少两个子数据集。其中,至少两个子数据集中各个子数据集中的样本数量可以相等,也可以不相等。子数据集的数量可以根据具体情况设定,例如,将待聚类数据集分成i个子数据集,i为大于等于2的整数。
85.具体的,使用hive的rand()方法或python的stratifiedshufflesplit()方法对待聚类数据集进行随机采样,得到至少两个子数据集。由于采用随机采样方式,可以保证各个子数据集的数据分布是相似的,从而能够保证各个子数据集中样本的类别数量是相同的,便于后续进行质心向量加权。
86.进一步的,随机采样为随机无放回采样。随机采样满足随机无放回采样,即每个样本只能出现在一个子数据集中,使得各个子数据集之间相互不重叠,从而提高聚类准确度。
87.在一个具体的实施例中,获取计算机设备的计算数据上限,判断待聚类数据集的样本数量n是否大于计算数据上限,若待聚类数据集的样本数量n大于计算数据上限,则将待聚类数据集分成至少两个子数据集。具体的,子数据集的数量i不小于待聚类数据集的样
本数量与计算数据上限的比值,且子数据集的数量为整数。例如,待聚类数据集的样本数量n是900,计算数据上限为500,待聚类数据集的样本数量与计算数据上限的比值为1.8,则子数据集的数量为2。当子数据集的数据量太少时数据反应的分布不代表真实分布,此时聚类质心加权合并时会产生较大波动性。具体来说,当各个子数据集极少时,即便通过前面的随机不重复采样的方式获得子数据集,由于子数据集的样本较少,其各子数据集分布差异较大,同时由于总样本数目确定的情况下,子数据集样本数量极少时,子数据集个数会极大,这样导致各个子数据集的质心向量相似性较低,即波动性较大。这种波动性会在子数据集质心合并计算时引起波动和误差,因此需要在拆分得到子数据集时选取合适的子数据集个数来避免较大波动。根据计算机设备的计算数据上限来选取合适的子数据集的数量i,能够满足计算机设备硬件的同时避免子数据集中的样本过少。
88.s203、分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集。
89.本技术实施例中,分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,包括:
90.(1)获取预设聚类值。
91.其中,预设聚类值是待聚类数据集要分类的族类数量,预设聚类值可以根据经验设定。例如,预设聚类值k为10,表示要将待聚类数据集分为10个族类。
92.(2)基于预设聚类值分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,其中,每个子数据集对应的族类数据集的数量均为预设聚类值。
93.具体的,可以使用k-means算法、k-medoids算法、clarans算法birch算法、cure算法、chameleon算法等,基于预设聚类值分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集。根据预设聚类值k分别对各个子数据集进行聚类,每个子数据集对应k个族类数据集。
94.s204、将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量。
95.其中,在s203中通过聚类得到每个子数据集对应的至少两个族类数据集的同时,会得到族类数据集的子集族类质心向量。其中,子集族类质心向量为一个子数据集中一个族类数据集中各个样本的向量平均值。
96.本技术实施例中,将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量,包括:
97.(1)在属于同一族类的至少两个族类数据集中,将各个族类数据集所在的子数据集的样本数量在待聚类数据集的样本数量的占比确定为各个族类数据集的质心向量权重。
98.(2)根据各个族类数据集的质心向量权重将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量。
99.在一个具体的实施例中,根据公式(1)进行质心向量加权,得到各个族类的全量族类质心向量,
[0100][0101]
其中,i是待聚类数据集切分的子数据集的个数,j是族类序号,取值从1到k的自然数,q
ij
是第i个子数据集的第j个子集族类质心向量,qj是最终合并后第j个族类的全量族类质心向量,ni是第i个子数据集的样本数量。
[0102]
分别对k个族类计算全量族类质心向量,得到k个全量族类质心向量,分别为q1,q2...qj,...qk。其中,q1到qk分别是全量数据对应的k个族类的全量族类质心向量。
[0103]
由于子数据集分配的样本空间大小不一致,因此得到的子集族类质心向量的可信度不一样,甚至由于子数据集样本量差异太大时,导致子集族类质心向量合并偏离真实情况。而传统基于距离测算的聚类方式不可避免的默认每个特征维度和每个样本的权重一样。因此,本发明引入加权质心合并的计算方式,能够避免数据不平衡问题导致的合并结果不理想的问题。
[0104]
s205、基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。
[0105]
本技术实施例中,基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类,包括:
[0106]
(1)分别将待聚类数据集中各个样本确定为目标样本。
[0107]
(2)计算目标样本与各个族类的全量族类质心向量的距离。
[0108]
当每个族类的全量族类质心向量确定时,即可计算每一个样本到各个族类的全量族类质心向量的距离。目标样本与各个族类的全量族类质心向量的距离可以是欧式距离、曼哈顿距离等。
[0109]
(3)将与目标样本距离最小的全量族类质心向量所对应的族类确定为目标样本的族类,得到待聚类数据集中各个样本对应的族类。
[0110]
具体的,根据公式(2)确定目标样本x的族类xj;
[0111]
xj=arug(min(dist(x,qj)2)),j∈[1,k]
ꢀꢀꢀ
(2)
[0112]
其中,x为目标样本,xj为目标样本的族类,qj是待聚类数据集全量数据对应的j族类的全量族类质心向量。
[0113]
在物流行业中,全网每日产生运单数据巨大,当我们想通过运单的重量,流向,拖寄物类别,收发信息,运费信息,客户信息等对运单聚类,实现价值挖掘时,由于数据量巨大想要快速实现聚类并且可以实时在线上更新模型,就需要通过本技术对全网运单随机采样分成若干个子数据集,对每一个子数据集就可以进行快速聚类,最终合并子集聚类质心向量得到全量族类质心向量,进而确定各个样本的族类。
[0114]
进一步的,获取新产生的样本,当新产生的样本达到预设数量时,将预设数量的新样本确定为新聚类数据集,基于预设聚类值对新聚类数据集进行聚类得到新聚类数据集的多个族类数据集,将待聚类数据集和新聚类数据集中属于同一族类的至少两个族类数据集进行质心向量加权,从而更新各个族类的全量族类质心向量,进而确定新聚类数据集各个样本的族类。可以实现快速聚类且聚类可以在线学习而不是传统方式下的全量数据进行运
算。
[0115]
本技术提供一种数据聚类方法及装置,该数据聚类方法包括:获取待聚类数据集;将待聚类数据集分成至少两个子数据集;分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。本技术先将待聚类数据分成多个子数据集,分别对多个子数据集独立进行聚类得到各个子数据集对应的族类数据集,在各个子数据集聚类完成后进行质心加权,得到各个族类的全量族类质心向量,由于聚类是在多个子数据集上独立进行的,相对于传统方式对整个待聚类数据集直接进行聚类,大幅减小了计算量,且可以并行聚类,提高了数据聚类的效率。
[0116]
进一步的,参阅图3,图3是本技术实施例中提供的数据聚类方法中获取预设聚类值的一个实施例流程示意图。
[0117]
本技术实施例中,获取预设聚类值,包括s301-s303:
[0118]
s301、获取多个候选聚类值。
[0119]
具体的,多个候选聚类值k可以根据人工经验提供,也可以是任意的整数。
[0120]
s302、分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量。
[0121]
其中,目标子数据集为至少两个子数据集中的任意一个。
[0122]
在一个具体的实施例中,分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量,包括:
[0123]
(1)利用蒙特卡洛模拟在目标子数据集所处样本空间区域进行多次采样,得到多个随机样本集,其中,每个随机样本集的样本数量与目标子数据集的样本数量均相等。
[0124]
蒙特卡洛模拟,又称随机抽样或统计试验方法,属于计算数学的一个分支,它是在上世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。传统的经验方法由于不能逼近真实的物理过程,很难得到满意的结果,而蒙特卡罗方法由于能够真实地模拟实际物理过程,故解决问题与实际非常符合,可以得到很圆满的结果。这也是以概率和统计理论方法为基础的一种计算方法,是使用随机数来解决很多计算问题的方法。将所求解的问题同一定的概率模型相联系,用电子计算机实现统计模拟或抽样,以获得问题的近似解。
[0125]
其中,目标子数据集所处样本空间区域可以为包含目标子数据集中所有样本的最小矩形区域或最小立方体区域。
[0126]
具体的,利用蒙特卡洛模拟在目标子数据集所处样本空间区域采样b次,得到b个随机样本集。
[0127]
(2)分别计算各个随机样本集的聚类误差和目标子数据集的聚类误差。
[0128]
具体的,使用k-means算法分别对各个随机样本集和目标子数据集进行聚类,得到随机样本集的多个质心向量和对应的样本、目标子数据集的多个质心向量和对应的样本。根据公式(3)计算目标子数据集的聚类误差。
[0129][0130]
其中,dk为目标子数据集的聚类误差,k为候选聚类值,ci为第i族类的质心向量,x
为质心向量ci对应族类的样本。
[0131]
基于同样的原理,计算各个随机样本集的聚类误差。
[0132]
(3)根据各个随机样本集的聚类误差和目标子数据集的聚类误差计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量。
[0133]
具体的,根据公式(4)和公式(5)计算多个候选聚类值对应的多个间隔统计量。
[0134][0135][0136]
其中,是随机样本集的聚类误差,dk为目标子数据集的聚类误差,b为随机样本集的数量,即蒙特卡洛模拟的采样次数,gapn(k)为候选聚类值k对应的间隔统计量。
[0137]
s303、将最小间隔统计量对应的候选聚类值确定为预设聚类值。
[0138]
本技术实施例中,通过间隔统计量来选取最优k值,能够提高聚类效果,提高聚类准确度。
[0139]
为了更好实施本技术实施例中数据聚类方法,在数据聚类方法基础之上,本技术实施例中还提供一种数据聚类装置,如图4所示,数据聚类装置400包括:
[0140]
获取单元401,获取待聚类数据集;
[0141]
子集生成单元402,用于将待聚类数据集分成至少两个子数据集;
[0142]
聚类单元403,用于分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;
[0143]
加权单元404,用于将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;
[0144]
确定单元405,基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。
[0145]
可选地,子集生成单元402,用于:
[0146]
对待聚类数据集进行随机采样,得到至少两个子数据集。
[0147]
可选地,聚类单元403,用于:
[0148]
获取预设聚类值;
[0149]
基于预设聚类值分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集,其中,每个子数据集对应的族类数据集的数量均为预设聚类值。
[0150]
可选地,聚类单元403,用于:
[0151]
获取多个候选聚类值;
[0152]
分别基于各个候选聚类值和目标子数据集计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量,其中,目标子数据集为至少两个子数据集中的任意一个;
[0153]
将最小间隔统计量对应的候选聚类值确定为预设聚类值。
[0154]
可选地,聚类单元403,用于:
[0155]
利用蒙特卡洛模拟在目标子数据集所处样本空间区域进行多次采样,得到多个随机样本集;
[0156]
分别计算各个随机样本集的聚类误差和目标子数据集的聚类误差;
[0157]
根据各个随机样本集的聚类误差和目标子数据集的聚类误差计算间隔统计量,得到多个候选聚类值对应的多个间隔统计量。
[0158]
可选地,加权单元404,用于:
[0159]
在属于同一族类的至少两个族类数据集中,将各个族类数据集所在的子数据集的样本数量与待聚类数据集的样本数量的比值确定为各个族类数据集的质心向量权重;
[0160]
根据各个族类数据集的质心向量权重将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量。
[0161]
可选地,确定单元405,基于:
[0162]
分别将待聚类数据集中各个样本确定为目标样本;
[0163]
计算目标样本与各个族类的全量族类质心向量的距离;
[0164]
将与目标样本距离最小的全量族类质心向量所对应的族类确定为目标样本的族类,得到待聚类数据集中各个样本对应的族类。
[0165]
本技术实施例还提供一种计算机设备,其集成了本技术实施例所提供的任一种数据聚类装置,计算机设备包括:
[0166]
一个或多个处理器;
[0167]
存储器;以及
[0168]
一个或多个应用程序,其中一个或多个应用程序被存储于存储器中,并配置为由处理器执行上述数据聚类方法实施例中任一实施例中的数据聚类方法中的步骤。
[0169]
如图5所示,其示出了本技术实施例所涉及的计算机设备的结构示意图,具体来讲:
[0170]
该计算机设备可以包括一个或者一个以上处理核心的处理器501、一个或一个以上计算机可读存储介质的存储器502、电源503和输入单元504等部件。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0171]
处理器501是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器501可包括一个或多个处理核心;处理器501可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,优选的,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。
[0172]
存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的
数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器501对存储器502的访问。
[0173]
计算机设备还包括给各个部件供电的电源503,优选的,电源503可以通过电源管理系统与处理器501逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源503还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0174]
该计算机设备还可包括输入单元504,该输入单元504可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
[0175]
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能,如下:
[0176]
获取待聚类数据集;
[0177]
将待聚类数据集分成至少两个子数据集;
[0178]
分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;
[0179]
将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;
[0180]
基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。
[0181]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0182]
为此,本技术实施例提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。其上存储有计算机程序,计算机程序被处理器进行加载,以执行本技术实施例所提供的任一种数据聚类方法中的步骤。例如,计算机程序被处理器进行加载可以执行如下步骤:
[0183]
获取待聚类数据集;
[0184]
将待聚类数据集分成至少两个子数据集;
[0185]
分别对各个子数据集进行聚类,得到每个子数据集对应的至少两个族类数据集;
[0186]
将属于同一族类的至少两个族类数据集进行质心向量加权,得到各个族类的全量族类质心向量;
[0187]
基于各个族类的全量族类质心向量确定待聚类数据集中各个样本对应的族类。
[0188]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
[0189]
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
[0190]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0191]
以上对本技术实施例所提供的一种数据聚类方法及装置进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献