数据处理方法及装置、处理器、电子设备及存储介质与流程

文档序号:21547882发布日期:2020-07-17 18:00阅读:174来源:国知局
数据处理方法及装置、处理器、电子设备及存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种数据处理方法及装置、处理器、电子设备及存储介质。



背景技术:

聚类分析是数据挖掘和机器学习等领域的关键技术之一。聚类分析通过将数据集中的相似数据汇聚至同一类簇,使不同类簇中的数据之间具有尽量小的相似度。但通过传统聚类方法得到的聚类结果的准确度低。



技术实现要素:

本申请提供一种数据处理方法及装置、处理器、电子设备及存储介质。

第一方面,提供了一种数据处理方法,所述方法包括:

获取第一簇和第二簇,所述第一簇中数据的类别相同,所述第二簇中数据的类别相同,且所述第一簇中数据的类别与所述第二簇中数据的类别不同;

确定所述第一簇中数据的第一数量和所述第二簇中数据的第二数量之间的差异,得到第一差异;

依据所述第一差异合并所述第一簇和所述第二簇。

在该方面中,通过确定第一簇中数据的数量与第二簇中数据的数量之间的差异,得到第一差异。依据第一差异合并第一簇和第二簇,可提高合并准确度。

结合本申请任一实施方式,所述确定所述第一簇中数据的第一数量和所述第二簇中数据的第二数量之间的差异,得到第一差异,包括:

确定所述第一簇中包含的数据的数量,得到第一数量;

确定所述第二簇中包含的数据的数量,得到第二数量;

确定所述第一数量与所述第二数量的和,得到第三数量;

依据所述第一数量、所述第二数量以及所述第三数量,得到所述第一差异。

在该种可能实现的方式中,依据第一数量、第二数量以及第三数量,得到第一差异,可减小不同待合并簇对中存在的数量级差距对第一差异的影响,进而可提高合并准确度。

结合本申请任一实施方式,所述依据所述第一数量、所述第二数量以及所述第三数量,得到所述第一差异,包括:

确定所述第一数量与所述第二数量的乘积,得到第四数量;

确定第一值与所述第三数量的平方的乘积,得到第五数量;

确定所述第四数量与所述第五数量的商,得到所述第一差异。

在该种可能实现的方式中,确定第四数量与第五数量的商,得到第一差异,可将第一差异归一化至0至1之间,从而减小不同待合并簇对中存在的数量级差距对第一差异的影响,进而可提高合并准确度。

结合本申请任一实施方式,在所述依据所述第一差异合并所述第一簇和所述第二簇之前,所述方法还包括:

确定所述第一簇与所述第二簇之间的相似度,得到第一相似度;

在所述第一相似度大于或等于第一阈值的情况下,执行所述依据所述第一差异合并所述第一簇和所述第二簇的步骤。

在该实施方式中,第一相似度大于或等于第一阈值表征第一簇中的数据与第二簇中的数据属于同一类别的概率高,从而在第一相似度大于或等于第一阈值的情况下,执行依据第一差异合并第一簇和第二簇的步骤,可提高合并准确度。

结合本申请任一实施方式,所述确定所述第一簇与所述第二簇之间的相似度,得到第一相似度,包括:

确定所述第一簇中的数据与所述第二簇中的数据的之间的相似度,得到相似度集;

依据所述相似度集中的最小值,得到所述第一相似度。

结合本申请任一实施方式,所述依据所述第一差异合并所述第一簇和所述第二簇,包括:

在所述第一差异小于或等于第二值的情况下,合并所述第一簇和所述第二簇。

结合本申请任一实施方式,所述获取第一簇和第二簇,包括:

获取至少两张人脸图像;

对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据;

对所述至少两个特征数据进行聚类处理,得到至少两个簇;

从所述至少两个簇中确定所述第一簇,从所述至少两个簇中除第一簇之外的簇中确定所述第二簇。

在该实施方式中,以人脸图像的特征数据构建第一簇和第二簇,实现对人脸图像的管理等功能。

结合本申请任一实施方式,在所述对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据之前,所述方法还包括:

依据预先设定的图像质量评价指标,得到所述至少两张人脸图像的质量评分;所述图像质量评价指标包括以下至少一个:图像中包含的人脸的数量、图像中人脸区域的清晰度、图像中人脸区域的遮挡情况;

所述对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据,包括:

对质量评分大于或等于第二阈值的人脸图像进行特征提取处理,得到所述至少两个特征数据。

在该实施方式中,依据图像质量评价指标确定人脸图像的质量评分,并依据人脸图像的质量评分确定人脸图像是否为噪声图像,以达到去除噪声图像的效果。

第二方面,提供了一种数据处理装置,所述装置包括:

获取单元,用于获取第一簇和第二簇,所述第一簇中数据的类别相同,所述第二簇中数据的类别相同,且所述第一簇中数据的类别与所述第二簇中数据的类别不同;

第一确定单元,用于确定所述第一簇中数据的第一数量和所述第二簇中数据的第二数量之间的差异,得到第一差异;

处理单元,用于依据所述第一差异合并所述第一簇和所述第二簇。

结合本申请任一实施方式,所述第一确定单元,用于:

确定所述第一簇中包含的数据的数量,得到第一数量;

确定所述第二簇中包含的数据的数量,得到第二数量;

确定所述第一数量与所述第二数量的和,得到第三数量;

依据所述第一数量、所述第二数量以及所述第三数量,得到所述第一差异。

结合本申请任一实施方式,所述第一确定单元,用于:

确定所述第一数量与所述第二数量的乘积,得到第四数量;

确定第一值与所述第三数量的平方的乘积,得到第五数量;

确定所述第四数量与所述第五数量的商,得到所述第一差异。

结合本申请任一实施方式,所述装置还包括:

第二确定单元,用于在所述依据所述第一差异合并所述第一簇和所述第二簇之前,确定所述第一簇与所述第二簇之间的相似度,得到第一相似度;

所述处理单元,用于在所述第一相似度大于或等于第一阈值的情况下,执行所述依据所述第一差异合并所述第一簇和所述第二簇的步骤。

结合本申请任一实施方式,所述第二确定单元,用于:

确定所述第一簇中的数据与所述第二簇中的数据的之间的相似度,得到相似度集;

依据所述相似度集中的最小值,得到所述第一相似度。

结合本申请任一实施方式,所述处理单元,用于:

在所述第一差异小于或等于第二值的情况下,合并所述第一簇和所述第二簇。

结合本申请任一实施方式,所述获取单元,用于:

获取至少两张人脸图像;

对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据;

对所述至少两个特征数据进行聚类处理,得到至少两个簇;

从所述至少两个簇中确定所述第一簇,从所述至少两个簇中除第一簇之外的簇中确定所述第二簇。

结合本申请任一实施方式,所述装置还包括:

质量评分单元,用于在所述对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据之前,依据预先设定的图像质量评价指标,得到所述至少两张人脸图像的质量评分;所述图像质量评价指标包括以下至少一个:图像中包含的人脸的数量、图像中人脸区域的清晰度、图像中人脸区域的遮挡情况;

所述获取单元,用于:

对质量评分大于或等于第二阈值的人脸图像进行特征提取处理,得到所述至少两个特征数据。

第三方面,提供了一种处理器,所述处理器用于执行如上述第一方面及其任意一种可能实现的方式的方法。

第四方面,提供了一种电子设备,包括:处理器、发送装置、输入装置、输出装置和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器执行所述计算机指令时,所述电子设备执行如上述第一方面及其任意一种可能实现的方式的方法。

第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行如上述第一方面及其任意一种可能实现的方式的方法。

第六方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得所述计算机执行上述第一方面及其任一种可能的实现方式的方法。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。

附图说明

为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。

此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。

图1为本申请实施例提供的一种数据处理方法的流程示意图;

图2为本申请实施例提供的另一种数据处理方法的流程示意图;

图3为本申请实施例提供的另一种数据处理方法的流程示意图;

图4为本申请实施例提供的一种数据处理装置的结构示意图;

图5为本申请实施例提供的一种数据处理装置的硬件结构示意图。

具体实施方式

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

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

本申请实施例的执行主体为数据处理装置,数据处理装置可以是以下任意一种:手机、计算机、服务器、平板电脑。

聚类分析是数据挖掘和机器学习等领域的关键技术之一。聚类分析通过将数据集中的相似数据汇聚至同一类簇,使不同类簇中的数据之间具有尽量小的相似度。目前的聚类分析技术主要包括划分聚类、合并聚类、基于密度聚类、网格聚类、谱聚类等几种。合并聚类因其概念简单、易于解释等特点被广泛应用于各种领域。

合并聚类即依据合并条件(下文将称为合并策略)判断是否将两个待合并簇合并为一个簇。在基于合并策略得到的判断结果不准确的情况下,易导致两个待合并簇被误合并。

举例来说(例1),假设合并策略为:在两个待合并簇之间的相似度大于或等于80%的情况下,合并两个待合并簇。待合并簇a中的数据的类别为苹果,待合并簇b中的数据的类别为梨。待合并簇a与待合并簇b之间的相似度为81%。基于合并策略得到的判断结果为:将待合并簇a和待合并簇b合并。由于待合并簇a的数据的类别与待合并簇b的数据的类别不同,将待合并簇a和待合并簇b合并显然是错误的。

在进行接下来的阐述之前,首先对合并准确度进行定义。假设依据合并条件得到的合并结果中类别正确的数据的数量为nc,两个待合并簇中数据的数量为nt,在本申请实施例中,合并准确度τ满足下式:

举例来说,待合并簇a包含30个数据,待合并簇a中数据的类别为a。待合并簇b包含50个数据,待合并簇b中数据的类别为b。依据合并策略得到的判断结果,将待合并簇a和待合并簇b合并,得到簇c。簇c(即上述合并结果)包含80个数据,即nt=80。簇c中数据的类别为b,则在簇c中类别正确的数据为待合并簇b中的50个数据,即nc=50。合并准确度τ=50/80=62.5%。

在两个待合并簇被误合并,且两个待合并簇中数据的数量之间的差异较小的情况下,合并准确度较低。以例1为例(例2),假设待合并簇a中的数据的数量为100,待合并簇b中的数据中的数量为90。将待合并簇a和待合并簇b合并得到的簇c中数据的类别的苹果,则合并准确度为:100/(100+90)=52.6%。

但在两个待合并簇被误合并,且两个待合并簇中数据的数量之间的差异较大的情况下,合并准确度较高。以例1为例(例3),假设待合并簇a中的数据的数量为100,待合并簇b中的数据中的数量为50。将待合并簇a和待合并簇b合并得到的簇c中数据的类别的苹果,则合并准确度为:100/(100+50)=66.7%。

再以例1为例(例4),假设待合并簇a中的数据的数量为100,待合并簇b中的数据中的数量为30。将待合并簇a和待合并簇b合并得到的簇c中数据的类别的苹果,则合并准确度为:100/(100+30)=76.9%。

从例2、例3、例4中可以看出,在出现误合并的情况下,待合并簇a中的数据的数量与待合并簇b中的数据的数量之间的差异越大,合并准确度越高。

传统合并策略为:在两个待合并簇之间的相似度大于或等于相似度阈值的情况下,合并两个待合并簇。也就是说,传统合并策略并未考虑两个待合并簇中数据的数量之间的差异。这导致基于传统合并策略实现的合并聚类的合并准确度低(即聚类结果的准确度低)。

为提高合并聚类的合并准确度,本申请实施例提供了一种合并策略。下面结合本申请实施例中的附图对本申请实施例进行描述。

请参阅图1,图1是本申请实施例提供的一种数据处理方法的流程示意图。

101、获取第一簇和第二簇。

本申请实施例中,簇(包括第一簇和第二簇)为数据集合,且该集合内的数据的类别相同。集合内的数据可以为:图像、语句、语音、向量等。

举例来说(例5),第一簇包含50张人脸图像,第二簇包含40张人脸图像,其中,第一簇中的50张人脸图像中的人物的身份均为a,第二簇中的40张人脸图像中的人物的身份均为b。

获取第一簇或第二簇的方式可以是接收用户通过输入组件输入的第一簇,其中,输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器等。获取第一簇或第二簇的方式也可以是接收第一终端发送的第一簇,其中,第一终端包括手机、计算机、服务器、平板电脑等。

本申请实施例中,第一簇中数据的类别相同,第二簇中数据的类别相同,且第一簇中数据的类别与第二簇中数据的类别不同。例如,第一簇中的图像的类别均为苹果,第二簇中的图像的类别均为西瓜。

102、确定上述第一簇中数据的第一数量和上述第二簇中数据的第二数量之间的差异,得到第一差异。

确定第一簇中数据的数量,得到第一数量。确定第二簇中数据的数量,得到第二数量。确定第一数量与第二数量之间的差异,得到第一差异。

在一种可能实现的方式中,确定第一数量与第二数量之间的差,得到第一差值。确定第一差值的绝对值,得到第一差异。例如,假设第一簇包含40个数据,第二簇包含60个数据。第一数量为40,第二数量为60。第一数量与第二数量之间的差为:40-60=-20(即第一差值)。-20的绝对值为20,即第一差异为20。

在另一种可能实现的方式中,确定第一数量与第二数量之间的比值,得到第一比值。确定第一比值与第三值之间的差,得到第二差值,其中,第三值为实数。确定第二差值的绝对值,得到第一差异。例如,假设第一簇包含40个数据,第二簇包含60个数据,第三值为1。第一数量为40,第二数量为60。第一数量与第二数量之间的比值为:40/60=2/3(即第一比值)。2/3与1之间的差:2/3-1=-1/3(即第二差值)。-1/3的绝对值为1/3,即第一差异为1/3。

在又一种可能实现的方式中,确定第一数量与第二数量的和,得到第四值。确定第一数量与第四值之间的比值,得到第二比值。确定第二数量与第四值之间的比值,得到第三比值。确定第二比值与第三比值之间的差,得到第三差值。确定第三差值的绝对值,得到第一差异。例如,假设第一簇包含40个数据,第二簇包含60个数据。第一数量为40,第二数量为60。第一数量与第二数量之间的和为:40+60=100(即第四值)。第一数量与第四值之间的比值为:40/100=2/5(即第二比值)。第二数量与第四值之间的比值为:60/100=3/5(即第三比值)。2/5与3/5之间的差:2/5-3/5=-1/5(即第三差值)。-1/5的绝对值为1/5,即第一差异为1/5。

103、依据上述第一差异合并上述第一簇和上述第二簇。

通过步骤102得到的第一差异可用于表征第一数量与第二数量之间的差异。例如,在第一差异为第一差值的绝对值的情况下,第一差异越大,表征第一数量与第二数量之间的差异(下文将第一数量与第二数量之间的差异称为参考差异)越大。又例如,在第一差异为第二差值的绝对值的情况下,第一差异越大,表征参考差异越小。再例如,在第一差异为第三差值的绝对值的情况下,第一差异越大,表征参考差异越大。

由例2、例3、例4可知,在出现误合并的情况下,第一数量与第二数量之间的差异越大,合并第一簇和第二簇得到的合并准确度越高。因此,可依据第一差异判断是否执行合并第一簇和第二簇的操作。这样,可提高合并第一簇和第二簇得到的合并准确度。

在一种可能实现的方式中,在第一差异与参考差异呈负相关,且第一差异小于或等于第二值的情况下,合并第一簇和第二簇,其中,第二值为实数。举例来说,假设第一差异为第二差值的绝对值,第二值等于0.4。在第一差异小于或等于0.4的情况下,合并第一簇和第二簇。

在另一种可能实现的方式中,在第一差异与参考差异呈正相关,且第一差异大于或等于第五值的情况下,合并第一簇和第二簇,其中,第一参考值为实数。举例来说,假设第一差异为第一差值的绝对值,第五值等于20。在第一差异大于或等于20的情况下,合并第一簇和第二簇。再举例来说,假设第一差异为第三差值的绝对值,第五值等于0.5。在第一差异大于或等于0.5的情况下,合并第一簇和第二簇。

本实施通过确定第一簇中数据的数量与第二簇中数据的数量之间的差异,得到可用于表征参考差异的第一差异。依据第一差异合并第一簇和第二簇,可提高合并准确度。

两个簇之间的相似度越高,表征两个簇中的数据属于同一个类别的概率越高,进而将两个簇合并得到的合并准确度也就越高。基于此,为进一步提高合并准确度,可选的,作为一种可选的实施方式,在执行步骤103之前,可执行以下步骤:

11、确定上述第一簇与上述第二簇之间的相似度,得到第一相似度。

在一种确定第一簇和第二簇之间的相似度的实现方式中,将两个数据之间的距离作为两个数据的相似度,分别确定第一簇中的每个数据与第二簇中的每个数据之间的距离,得到相似度集。依据相似度集中的最小值,得到第一相似度。可选的,可将相似度集中的最小值作为第一相似度。例如,第一簇包括数据a和数据b,第二簇包括数据c和数据d。数据a与数据c之间的距离为d1,数据a与数据d之间的距离为d2,数据b与数据c之间的距离为d3,数据b与数据d之间的距离为d4。相似度集包括d1、d2、d3、d4。假设d1<d2<d3<d4,则d1为相似度集中的最小值。确定d1为第一相似度。可选的,可确定相似度集中的最小值与第六值的和,作为第一相似度。例如,第一簇包括数据a和数据b,第二簇包括数据c和数据d。数据a与数据c之间的距离为d1,数据a与数据d之间的距离为d2,数据b与数据c之间的距离为d3,数据b与数据d之间的距离为d4。相似度集包括d1、d2、d3、d4。假设d1<d2<d3<d4,则d1为相似度集中的最小值。假设第六值为1。确定d1+1为第一相似度。下文将通过这种方式确定的第一簇和第二簇之间的相似度称为最远相似度。

在另一种确定第一簇和第二簇之间的相似度的实现方式中,将两个数据之间的距离作为两个数据的相似度,分别确定第一簇中的每个数据与第二簇中的每个数据之间的距离,得到相似度集。将相似度集中的最大值作为第一相似度。例如,第一簇包括数据a和数据b,第二簇包括数据c和数据d。数据a与数据c之间的距离为d1,数据a与数据d之间的距离为d2,数据b与数据c之间的距离为d3,数据b与数据d之间的距离为d4。相似度集包括d1、d2、d3、d4。假设d1<d2<d3<d4,则d4为相似度集中的最大值。确定d4为第一相似度。下文将通过这种方式确定的第一簇和第二簇之间的相似度称为最近相似度。

在又一种确定第一簇和第二簇之间的相似度的实现方式中,假设第一簇的质心为数据a,第二簇的质心为数据b。确定数据a和数据b之间的相似度,作为第一相似度。下文将通过这种方式确定的第一簇和第二簇之间的相似度称为质心相似度。

在又一种确定第一簇和第二簇之间的相似度的实现方式中,使用图卷积网络(graphconvolutionalnetworks,gcn)第一簇和第二簇进行处理,可得到第一簇和第二簇之间的相似度。下文将通过这种方式确定的第一簇和第二簇之间的相似度称为gcn相似度。

两个数据(包括上述数据a与数据b、上述数据a与数据c、上述数据b和数据d)之间的相似度可以下列中的任意一种:余弦相似度、瓦瑟斯坦距离(wassersteinmetric)、欧式距离(euclidean)、js散度(jensen–shannondivergence)。本申请对两个数据之间的相似度的具体形式不做限定。

本申请实施例中,第一相似度可以是以下任意一种:质心相似度、最近相似度、最远相似度、gcn相似度。可选的,将最远相似度作为第一相似度。

12、在上述第一相似度大于或等于第一阈值的情况下,执行步骤103。

第一相似度越大,表征第一簇与第二簇之间的相似度越大,进一步表征第一簇中数据的类别与第二簇中数据的类别相同的概率大,进一步表征合并第一簇和第二簇得到的合并准确度高。因此,在第一相似度大于或等于第一阈值的情况下,执行依据第一差异合并第一簇和第二簇的步骤,可进一步提高合并准确度。

举例来说,假设第一阈值为70%。若第一相似度为80%,由于第一相似度大于第一阈值,可执行依据第一差异合并第一簇和第二簇的步骤。若第一相似度为70%,由于第一相似度等于第一阈值,可执行依据第一差异合并第一簇和第二簇的步骤。若第一相似度为60%,由于第一相似度小于第一阈值,可不执行依据第一差异合并第一簇和第二簇的步骤。

本申请实施例通过在判断是否将第一簇和第二簇合并的条件中增加第一簇与第二簇之间的相似度是否大于或等于第一阈值的条件,可进一步提高合并第一簇和第二簇的准确度。

请参阅图2,图2是本申请实施例提供的另一种数据处理方法的流程示意图。

201、确定上述第一簇中包含的数据的数量,得到第一数量。

本步骤的实现过程可参见步骤102得到第一数量的实现过程,此处将不再赘述。

202、确定上述第二簇中包含的数据的数量,得到第二数量。

本步骤的实现过程可参见步骤102得到第二数量的实现过程,此处将不再赘述。

203、确定上述第一数量与上述第二数量的和,得到第三数量。

204、依据上述第一数量、上述第二数量以及上述第三数量,得到上述第一差异。

为表述方便,下文将包含两个待合并簇的簇对称为待合并簇对。例如,第一簇和第二簇均为待合并簇,将包含第一簇和第二簇的簇对称为待合并簇对。对任意一个待合并簇对均有第一数量和第二数量,其中第一数量为待合并簇对中一个簇中数据的数量,第二数量为待合并簇对中另一个簇中数据的数量。例如,待合并簇对1包含簇a和簇b,簇a中数据的数量为待合并簇对1的第一数量,簇b中数据的数量为待合并簇对1的第二数量。

由于不同的簇中数据的数量之间可能存在数量级差距,不同的待合并簇对的第一数量与第二数量之间的差可能也存在数量级差距。例如(例6),待合并簇对1包含簇a和簇b,待合并簇对2包含簇c和簇d。簇a中数据的数量为100000,簇b中数据的数量为80000,簇c中数据的数量为100,簇d中数据的数量为10。待合并簇对1中,簇a为第一簇,簇b为第二簇,则第一数量为100000,第二数量为80000。待合并簇对2中,簇c为第一簇,簇d为第二簇,则第一数量为100,第二数量为10。待合并簇对1中第一数量与第二数量之间的差为20000,待合并簇对2中第一数量与第二数量之间的差为90。显然,20000与90之间存在数量级差距。

在不同的待合并簇对的第一数量与第二数量之间的差存在数量级差距的情况下,若依据第一数量与第二数量之间的差得到第一差异,不同的待合并簇对的第一差异之间也存在数量级差距。这样,在后续处理过程中,依据第一差异合并第一簇和第二簇将产生较大的误差。以例6为例(例7),假设合并策略为:在第一差异大于或等于80,合并第一簇和第二簇。在将第一数量与第二数量之间的差作为第一差异的情况下,待合并簇对1的第一差异为20000,待合并簇对2的第一差异为90。由于20000和90均大于80,将簇a和簇b合并得到簇e,将簇c和簇d合并得到簇f。假设簇a中数据的类别为a,簇b中数据的类别为b,簇c中数据的类别为c,簇d中数据的类别为d,簇e中数据的类别为a,簇f中数据的类别为c。待合并簇对1的合并准确度为:100000/(100000+80000)=55.6%,待合并簇对2的合并准确度为:100/(100+10)=91%。显然,由于待合并簇对1的第一差异与合并策略中的相似度阈值(即本示例中的80)存在数量级差距,待合并簇对1的合并准确度较低。

为提高合并准确度,本实施例依据第一数量、第二数量以及第三数量,得到第一差异。

在一种可能实现的方式中,确定第一数量与第二数量的乘积,得到第四数量。确定第一值与第三数量的平方的乘积,得到第五数量,其中,第一值为实数。确定第四数量与第五数量的商,得到第一差异。通过第四数量与第五数量的商作为第一差异,可将第一差异的取值归一化至0至1之间。以例7为例,假设第一值为1。在待合并簇对1中,第一数量与第二数量的乘积为:100000×80000=8000000000,即第四数量为8000000000,第三数量的平方为:1800002=32400000000,即第五数量为32400000000,第四数量与第五数量的商为:8000000000/32400000000=0.24,即为待合并簇对1的第一差异。在待合并簇对2中,第一数量与第二数量的乘积为:100×10=1000,即第四数量为1000,第三数量的平方为:1102=12100,即第五数量为12100,第四数量与第五数量的商为:1000/12100=0.08,即为待合并簇对2的第一差异。

在另一种可能实现的方式中,确定第一数量的平方,得到第六数量。确定第二数量的平方,得到第七数量。确定第六数量与第七数量的乘积,得到第八数量。确定第七值与第三数量的4次方的乘积,得到第九数量,其中,第七值为实数。确定第八数量与第九数量的商,得到第一差异。通过第八数量与第九数量的商作为第一差异,可将第一差异的取值归一化至0至1之间。以例7为例,假设第一值为1。在待合并簇对1中,第一数量的平方为:1010,即第六数量为1010,第二数量的平方为:6.4×109,即第七数量为6.4×109,第六数量与第七数量的乘积为:6.4×1019,即第四数量为6.4×1019,第三数量的4次平方为:1800004=1.04976×1021,即第九数量为1.04976×1021,第八数量与第九数量的商为:6.4×1019/1.04976×1021=0.06,即为待合并簇对1的第一差异。在待合并簇对2中,第一数量的平方为:10000,即第六数量为10000,第二数量的平方为:100,即第七数量为100,第六数量与第七数量的乘积为:1000000,即第四数量为1000000,第三数量的4次平方为:1104=1.4641×108,即第九数量为1.4641×108,第八数量与第九数量的商为:1000000/1.4641×108=0.007,即为待合并簇对2的第一差异。

在又一种可能实现的方式中,确定第一数量与第二数量的乘积,得到第四数量。确定第一值与第三数量的平方的乘积,得到第五数量,其中,第一值为实数。确定第四数量与第五数量的商,得到第十数量。确定第十数量的1/2次方,得到第一差异。通过第四数量与第五数量的商的1/2次方作为第一差异,可将第一差异的取值归一化至0至1之间。在待合并簇对1中,第一数量与第二数量的乘积为:100000×80000=8000000000,即第四数量为8000000000,第三数量的平方为:180000^2=32400000000,即第五数量为32400000000,第四数量与第五数量的商为:8000000000/32400000000=0.24,即第十数量为0.24,第十数量的1/2次方位:即为待合并簇对1的第一差异。在待合并簇对2中,第一数量与第二数量的乘积为:100×10=1000,即第四数量为1000,第三数量的平方为:1102=12100,即第五数量为12100,第四数量与第五数量的商为:1000/12100=0.08,即为第十数量,第十数量的1/2次方位:即为待合并簇对2的第一差异。通过该种方式确定的第一差异越大,表征第一数量与第二数量之间的差的绝对值越大。

本实施依据第一数量、第二数量以及第三数量,得到第一差异,实现将第一差异归一化至0至1之间。这样,可减小不同待合并簇对中存在的数量级差距对第一差异的影响,进而可提高合并准确度。

在数据量急剧扩增的时代,通过对数据进行分类可分析得到数据之间隐藏的关联和信息。因此,如何高效、准确的对数据分类具有非常重要的意义。例如,随着移动终端(如手机、平板电脑)的拍照功能越来越强大,越来越多的用户使用移动终端拍摄各种各样的图像,但随着图像的数量的增加,如何高效管理移动终端里的图像就变得非常有意义。

通过对移动终端里的图像进行聚类处理,实现对移动终端里的图像的分类可有效管理移动终端里的图像。基于本申请实施例提供的技术方案,可提高对移动终端里的图像的分类准确度。

请参阅图3,图3是本申请实施例提供的一种基于本申请实施例提供的技术方案对人脸图像进行聚类的流程示意图。

301、获取至少两张人脸图像。

本实施中,数据处理装置为移动终端,即本实施例的执行主体为移动终端。

本实施例中,人脸图像指包含人脸区域的图像。

移动终端获取至少两张人脸图像的方式可以是通过移动终端的摄像头采集获得。移动终端获取至少两张人脸图像的方式也可以是接收用户通过输入组件输入的至少两张人脸图像,其中,输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器等。移动终端获取至少两张人脸图像的方式还可以是接收通信终端发送的至少两张人脸图像,其中,通信终端包括手机、计算机、服务器、平板电脑等。

在一种可能实现的方式中,移动终端通过摄像头采集获得第一人脸图像和第二人脸图像,得到上述至少两张人脸图像。

302、对上述至少两张人脸图像进行特征提取处理,得到至少两个特征数据。

本实施例中,特征提取处理可通过预先训练好的神经网络实现,也可通过特征提取模型实现,本申请对此不作限定。通过特征提取处理得到的特征数据均包含用于识别人脸图像中的人物的身份的信息。

通过对人脸图像进行特征提取处理得到特征数据可以理解为人脸图像的更深层次的语义信息。在一些可能的实现方式中,通过多层任意堆叠的卷积层对人脸图像逐层进行卷积处理完成对人脸图像的特征提取处理,其中,每个卷积层提取出的特征内容及语义信息均不一样,具体表现为,特征提取处理一步步地将人脸图像的特征抽象出来,同时也将逐步去除相对次要的特征数据,因此,越到后面提取出的特征数据越小,内容及语义信息就越浓缩。通过多层卷积层逐级对人脸图像进行卷积处理,并提取相应的特征数据,这样,可在获得人脸图像主要内容信息(即人脸图像的特征数据)的同时,将人脸图像尺寸缩小,减小系统的计算量,提高运算速度。在一种可能实现的方式中,卷积处理的实现过程如下:卷积层对人脸图像做卷积处理,即利用卷积核在人脸图像上滑动,并将人脸图像上的像素与对应的卷积核上的数值相乘,然后将所有相乘后的值相加作为卷积核中间像素对应的图像上像素值,最终滑动处理完人脸图像中所有的像素,并提取得到特征数据。

通过对至少两张人脸图像中的每一张人脸图像分别进行特征提取处理,得到每一张人脸图像的特征数据。

303、对上述至少两个特征数据进行聚类处理,得到至少两个簇。

本实施例中,可采用任意聚类算法实现上述聚类处理,如:k均值聚类算法(k-meansclusteringalgorithm)、均值漂移聚类算法、凝聚层次聚类算法。

如步骤301所述,每个特征数据中均包含用于识别人脸图像中的人物的身份的信息,聚类算法可依据该信息对至少两个特征数据进行聚类,得到至少两个簇。

304、从上述至少两个簇中确定上述第一簇,从上述至少两个簇中除第一簇之外的簇中确定上述第二簇。

将上述至少两个簇中的任意一个簇作为第一簇,将上述至少两个簇中除第一簇之外的任意一个簇作为第二簇。

举例来说,至少两个簇包含:簇a、簇b和簇c,可将簇a作为第一簇,将簇b作为第二簇。也可将簇a作为第一簇,将簇c作为第二簇。还可将簇b作为第一簇,将簇a作为第二簇。还可将簇b作为第一簇,将簇c作为第二簇。还可将簇c作为第一簇,将簇a作为第二簇。还可将簇c作为第一簇,将簇b作为第二簇。

这样,第一簇中的点和第二簇中的数据均为一个特征数据。举例来说,至少两张人脸图像集包含3张人脸图像,分别为:人脸图像a、人脸图像b和人脸图像c。分别对每一张人脸图像进行特征提取处理,可得到人脸图像a的特征数据a、人脸图像b的特征数据b以及人脸图像c的特征数据c。通过对特征数据a、特征数据b和特征数据c进行聚类处理,得到两个簇,分别为簇a和簇b,其中,簇a包括特征数据a和特征数据b,簇b包括特征数据c。将簇a作为第一簇,将簇b作为第二簇。

依据本申请实施例提供的技术方案可确定是否执行合并第一簇和第二簇的操作,进而实现对至少两张人脸图像的管理。

由于至少两张人脸图像中可能存在噪声图像,而噪声图像的存在将导致合并准确度低。可选的,在对至少两张人脸图像进行特征提取处理之前,可依据图像质量评价指标确定每一张人脸图像的质量评分,并依据人脸图像的质量评分确定人脸图像是否为噪声图像,以达到去除至少两张人脸图像中的噪声图像的效果。

本实施例中,图像质量评价指标包括以下至少一个:图像中包含的人脸的数量、图像中人脸区域的清晰度、图像中人脸区域的遮挡情况。

由于后续将对人脸图像中的人脸区域进行特征提取处理,因此人脸图像中的人脸区域的清晰度越高表征人脸图像的质量越高,人脸图像中被遮挡的人脸区域越小也表征人脸图像的质量越高。此外,由于需要依据人脸图像中的人脸的身份对人脸进行分类,人脸图像中的人脸的数量越多,对人脸图像的分类的难度越大,例如,人脸图像1中包含3个人脸,分别为:人脸a、人脸b、人脸c,其中,人脸a的身份为a,人脸b的身份为b,此时将人脸图像1划分为身份为a的簇中或将人脸图像1划分为身份为b的簇中均不合理。因此,还需确定人脸图像中人脸的数量,且人脸图像中的人脸数量有且仅有一张时表征人脸图像的质量高,反之,人脸图像中的人脸数量大于一张时表征人脸图像的质量低。

在一种可能实现的方式中,依据上述图像质量评价指标可对人脸图像的质量进行评分,如:若人脸图像中包含有至少两个人脸,则质量评分减2分。人脸图像中的人脸区域被遮挡的区域越大,质量评分减分越多,如:被遮挡的区域的面积小于或等于15%质量评分减0.5分,被遮挡的区域的面积大于15%小于或等于40%质量评分减1分,被遮挡的区域的面积大于40%小于或等于70%质量评分减2分,被遮挡的区域的面积大于70%质量评分减3.5分。还可依据人脸图像中人脸区域的清晰度获得相应的质量评分。可选的,可通过任意图像清晰度算法确定人脸图像中人脸区域的清晰度,如:灰度方差函数、灰度方差乘积函数、能量梯度函数,对此本申请不做具体限定。

本实施例将质量评分小于第六阈值的人脸图像视为噪声图像,进而可对至少两张人脸图像集中质量评分大于或等于第六阈值的人脸图像进行特征提取处理得到至少两个特征数据。后续可对至少两个特征数据进行聚类处理得到第一簇和第二簇。这样,第一簇和第二簇中将不包含噪声图像的特征数据,达到去除噪声图像的效果。

在数据量急剧扩增的时代,通过对数据进行分类可分析得到数据之间隐藏的关联和信息。因此,如何高效、准确的对数据分类具有非常重要的意义。

依据簇中数据之间的关联(数据之间的关联包括:数据之间相似度信息),可构建与数据集对应的邻接图。使用gcn对邻接图进行处理,可得到簇的特征数据。簇的特征数据包括:簇中数据的特征信息,数据与数据之间的相似度信息。例如,簇a包括:数据a、数据b。簇a的特征包括:数据a的特征信息、数据b的特征信息、数据a与数据b之间的相似度信息。依据数据a的特征信息,可确定数据a的类别为苹果的概率为80%,数据a的类别为西瓜的概率为20%。依据数据b的特征信息,可确定数据b的类别为苹果的概率为70%,数据a的类别为西瓜的概率为30%。依据数据a与数据b之间的相似度信息,可确定数据a与数据b属于同一类别的概率为80%。

使用gcn对待合并簇对中的簇分别进行处理,可得到待合并簇对中每个簇的特征数据。依据不同簇的特征数据,可得到待合并簇对的聚类结果,即是否将待合并簇对中的簇合并。

将基于本申请实施例提供的技术方案得到的第一差异和/或第一相似度称为全局特征数据。基于本申请实施例提供的技术方案对包含第一簇和第二簇的目标待合并簇对进行处理,可得到目标全局特征数据。可选的,在使用gcn对目标待合并簇对进行处理,得到第一簇的特征数据和第二簇的特征数据之后,可对第一簇的特征数据、第二簇的特征数据以及目标全局特征数据进行拼接处理,得到目标特征数据。依据目标特征数据得到目标待合并簇对的聚类结果。

在一种对第一簇的特征数据、第二簇的特征数据以及目标全局特征数据进行拼接处理,得到目标特征数据的实现方式中,对第一簇的特征数据和第二簇的特征数据进行通道维度上的拼接处理,得到第一中间特征数据。对第一中间特征数据和目标全局特征数据进行通道维度上的拼接处理,得到目标特征数据。

在另一种对第一簇的特征数据、第二簇的特征数据以及目标全局特征数据进行拼接处理,得到目标特征数据的实现方式中,对第一簇的特征数据和第二簇的特征数据在通道维度上做差,得到第二中间特征数据。对第二中间特征数据和目标全局特征数据进行通道维度上的拼接处理,得到目标特征数据。

在又一种对第一簇的特征数据、第二簇的特征数据以及目标全局特征数据进行拼接处理,得到目标特征数据的实现方式中,对第一簇的特征数据和第二簇的特征数据在通道维度上相乘,得到第三中间特征数据。对第三中间特征数据和目标全局特征数据进行通道维度上的拼接处理,得到目标特征数据。

本申请实施例通过对全局特征数据与第一簇的特征数据以及第二簇的特征数据进行融合处理,得到目标特征数据。依据目标特征数据得到目标待合并簇对的聚类结果,可利用全局特征数据携带的第一差异的信息和/或第一相似度的信息,从而提高聚类结果的准确度。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。

请参阅图4,图4为本申请实施例提供的一种数据处理装置的结构示意图,该装置1包括:获取单元11、第一确定单元12、处理单元13、第二确定单元14以及质量评分单元15,其中:

获取单元11,用于获取第一簇和第二簇,所述第一簇中数据的类别相同,所述第二簇中数据的类别相同,且所述第一簇中数据的类别与所述第二簇中数据的类别不同;

第一确定单元12,用于确定所述第一簇中数据的第一数量和所述第二簇中数据的第二数量之间的差异,得到第一差异;

处理单元13,用于依据所述第一差异合并所述第一簇和所述第二簇。

结合本申请任一实施方式,所述第一确定单元12,用于:

确定所述第一簇中包含的数据的数量,得到第一数量;

确定所述第二簇中包含的数据的数量,得到第二数量;

确定所述第一数量与所述第二数量的和,得到第三数量;

依据所述第一数量、所述第二数量以及所述第三数量,得到所述第一差异。

结合本申请任一实施方式,所述第一确定单元12,用于:

确定所述第一数量与所述第二数量的乘积,得到第四数量;

确定第一值与所述第三数量的平方的乘积,得到第五数量;

确定所述第四数量与所述第五数量的商,得到所述第一差异。

结合本申请任一实施方式,所述装置1还包括:

第二确定单元14,用于在所述依据所述第一差异合并所述第一簇和所述第二簇之前,确定所述第一簇与所述第二簇之间的相似度,得到第一相似度;

所述处理单元13,用于在所述第一相似度大于或等于第一阈值的情况下,执行所述依据所述第一差异合并所述第一簇和所述第二簇的步骤。

结合本申请任一实施方式,所述第二确定单元14,用于:

确定所述第一簇中的数据与所述第二簇中的数据的之间的相似度,得到相似度集;

依据所述相似度集中的最小值,得到所述第一相似度。

结合本申请任一实施方式,所述处理单元13,用于:

在所述第一差异小于或等于第二值的情况下,合并所述第一簇和所述第二簇。

结合本申请任一实施方式,所述获取单元11,用于:

获取至少两张人脸图像;

对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据;

对所述至少两个特征数据进行聚类处理,得到至少两个簇;

从所述至少两个簇中确定所述第一簇,从所述至少两个簇中除第一簇之外的簇中确定所述第二簇。

结合本申请任一实施方式,所述装置1还包括:

质量评分单元15,用于在所述对所述至少两张人脸图像进行特征提取处理,得到至少两个特征数据之前,依据预先设定的图像质量评价指标,得到所述至少两张人脸图像的质量评分;所述图像质量评价指标包括以下至少一个:图像中包含的人脸的数量、图像中人脸区域的清晰度、图像中人脸区域的遮挡情况;

所述获取单元11,用于:

对质量评分大于或等于第二阈值的人脸图像进行特征提取处理,得到所述至少两个特征数据。

本实施通过确定第一簇中数据的数量与第二簇中数据的数量之间的差异,得到可用于表征参考差异的第一差异。依据第一差异合并第一簇和第二簇,可提高合并准确度。

在一些实施例中,本申请实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。

图5为本申请实施例提供的一种数据处理装置的硬件结构示意图。该数据处理装置2包括处理器21,存储器22,输入装置23,输出装置24。该处理器21、存储器22、输入装置23和输出装置24通过连接器相耦合,该连接器包括各类接口、传输线或总线等等,本申请实施例对此不作限定。应当理解,本申请的各个实施例中,耦合是指通过特定方式的相互联系,包括直接相连或者通过其他设备间接相连,例如可以通过各类接口、传输线、总线等相连。

处理器21可以包括是一个或多个处理器,例如包括一个或多个中央处理器(centralprocessingunit,cpu),在处理器21是一个cpu的情况下,该cpu可以是单核cpu,也可以是多核cpu。

处理器21用于调用该存储器中的程序代码和数据,执行上述方法实施例中的步骤。具体可参见方法实施例中的描述,在此不再赘述。

存储器22用于存储网络设备的程序代码和数据。

存储器22包括但不限于是随机存储记忆体(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)、可擦除可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、或便携式只读存储器(compactdiscread-onlymemory,cd-rom),该存储器用于相关指令及数据。

输入装置23用于输入数据和/或信号,以及输出装置24用于输出数据和/或信号。输出装置24和输入装置23可以是独立的器件,也可以是一个整体的器件。

可以理解的是,图5仅仅示出了数据处理装置的简化设计。在实际应用中,数据处理装置还可以分别包含必要的其他元件,包含但不限于任意数量的输入/输出装置、处理器、存储器等,而所有可以实现本申请实施例的数据处理装置都在本申请的保护范围之内。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。所属领域的技术人员还可以清楚地了解到,本申请各个实施例描述各有侧重,为描述的方便和简洁,相同或类似的部分在不同实施例中可能没有赘述,因此,在某一实施例未描述或未详细描述的部分可以参见其他实施例的记载。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digitalversatiledisc,dvd))、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器(read-onlymemory,rom)或随机存储存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可存储程序代码的介质。

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