CN113988148A - 一种数据聚类的方法、***、计算机设备和存储介质 - Google Patents
一种数据聚类的方法、***、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113988148A CN113988148A CN202010663897.1A CN202010663897A CN113988148A CN 113988148 A CN113988148 A CN 113988148A CN 202010663897 A CN202010663897 A CN 202010663897A CN 113988148 A CN113988148 A CN 113988148A
- Authority
- CN
- China
- Prior art keywords
- data
- clustering
- category
- similarity
- merged
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种数据聚类的方法、***、计算机设备和存储介质,属于数据处理领域。该方法包括获取原始数据的第一相似度矩阵,并对第一相似度矩阵进行连通域分析,结合相似度的分布统计分析,得到第一聚类结果,同时得到第一聚类结果中潜在待合并的类别的关系;根据潜在待合并的类别的关系,对第一聚类结果中待合并类别进行合并,得到第二聚类结果;对第二聚类结果进行强连通分量分析,根据分析的结果,对所第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。本申请提供的技术方案可以快速地从原始数据中获得一个经过聚类处理的高准确度数据集,用于模型训练。
Description
技术领域
本发明涉及数据处理领域,具体关于一种数据聚类的方法、***、计算机设备和存储介质。
背景技术
近年来,深度学习在各个领域都取得了令人瞩目的进步。在人工智能领域,使用深度学习训练或者调整一个模型需要收集、处理大量的数据。特别是针对特定的场景任务时,在没有公开数据集的情况下,往往只能自行收集、预处理、人工纠错获得相应的数据集。这个过程往往耗费大量时间与资源,极大的限制了深度学习运用的实际场景。
在一种可行的现有技术中,获取原始数据的相似度矩阵,挑选出K个数据作为起始分组,再使用K-split分块聚类算法,将剩余的数据聚类到选出的K个数据中,得到聚类的K个分组。如果相似度矩阵的均值小于预设阈值,则对每一组数据重复上述步骤,直到没个分组的相似度矩阵的均值大于等于设定阈值。但是使用K-split分块算法时,难以确定合适的K值,另外从数据集中取出K个最不相关的数据时,存在获取到“噪声”数据的情况,会增加K-split算法***次数,导致聚类速度与效率下降。
发明内容
本申请实施例提供一种数据聚类的方法、***、计算机设备和存储介质,能够快速从原始数据中获得一个经过聚类处理的高准确度数据集,可以提高模型训练的效率和速度。
第一方面,提供了一种数据聚类的方法,包括:
获取原始数据的第一相似度矩阵,并对第一相似度矩阵进行连通域分析,和相似度的分布统计分析,得到第一聚类结果,以及第一聚类结果中潜在待合并的类别的关系;
根据潜在待合并的类别的关系,对第一聚类结果中待合并类别进行合并,得到第二聚类结果;
对第二聚类结果进行强连通分量分析,对第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。
通过该数据聚类的方法,具备不同场景的自适应能力,可以提升原始数据的聚类速度和准确性,并有效的减少计算复杂度。
第一方面的第一个可行的实现方式中,获取第一聚类结果包括:获取第一中心数据对应第一相似度矩阵的列向量,通过统计分析列向量的相似度分布,获得连通域最强的n个待聚类到新的聚类类别的数据a(n),组成数据集N,按照规则选取数据集N中的数据a(n)加入新的聚类类别,得到第一聚类结果。通过该方法,可以对加入到新的聚类类别中的数据,进行两次过滤,保证新的聚类类别中的数据之间的相似度,得到高准确度的数据集。
第一方面的第二个可行的实现方式中,获取第一中心数据包括:按列取第一相似度矩阵中每列相似度的最大值,组成一个列表,对列表进行降序排序,得到数据索引,按照数据索引的顺序,将未被聚类的数据作为第一中心数据。通过该方法,可以保证相似度最高的数据,优先进行聚类,从而减少计算量。
第一方面的第三个可行的实现方式中,以第一中心数据作为初始数据,创建一个新的聚类类别。通过这种方式,创建新的聚类类别,不用人工设置新的聚类类别数量,从而针对不同的原始数据,有不同数量的聚类类别,达到自适应的效果。
第一方面的第四个可行的实现方式中,规则包括:数据a(n)和第一中心数据的相似度高于一个阈值,则将数据a(n)加入到新的聚类类别。通过该方法,让相似度值高于一个阈值的数据能够直接进入到同一个聚类类别中,从而保证聚类的准确性,并减少计算量。
第一方面的第五个可行的实现方式中,规则包括:以数据a(n)作为第二中心数据,从原始数据中选取m个连通域最强的数据b(m),组成数据集M,在数据集M中,与数据a(n)相似度最高的数据b(m)已在新的聚类类别中,将数据a(n)加入到新的聚类类别。通过该方法,对待聚类到新类别中的数据,进行二次过滤,提升聚类的准确性。
第一方面的第六个可行的实现方式中,规则还包括:找出数据集M中与新的聚类类别中的数据重合的部分,组成重合数据集,计算数据a(n)与重合数据集中的数据的相似度,最后取均值,当均值大于第一阈值的时候,将数据a(n)加入到新的聚类类别。
第一方面的第七个可行的实现方式中,规则还包括:重合数据集的数据数量超过第二阈值的时候,则将数据a(n)加入到新的聚类类别。
第一方面的第八个可行的实现方式中,获得第二聚类结果的方法包括:
获取第一待合并类别和第二待合并类别的第二相似度矩阵,并判断第二相似度矩阵的元素中超过第三阈值的比例;
如果比例超过第三比例,将第一待合并类别和第二待合并类别进行合并;
如果比例没有超过第三比例,对第一待合并类别和第二待合并类别内部满足相似度要求规则的数据进行移动。
通过该方法,将两个相似度较高的聚类类别进行合并,可以减少聚类类别的数量,减少计算量,提高聚类准确度。
第一方面的第九个可行的实现方式中,相似度要求规则包括:
挑选第一待合并类别中的数据,依次和第二待合并类别中的所有数据进行相似度计算,如果相似度超过第四阈值的比例高于第四比例,或超过第四阈值的数据数量超过第一待合并类别中的数据数量,将第一待合并类别中的数据移动到第二待合并类别。通过该方法,可以在第一待合并类别和第二待合并类别不满足合并的条件下,对待合并类别中的数据进行再次处理,移动到更符合该数据所属的类别中,提高待合并类别的聚类准确度。
第一方面的第十个可行的实现方式中,获取第三聚类结果的方法,包括:获取第二聚类结果的数据的第三相似度矩阵,并对第三相似度矩阵中超过第五阈值的分量划分为强连通分量,对强连接分量组成的最长连接通路内的数据进行保留,删除连接通路外的数据,得到第三聚类结果。通过该方法,可以将第二聚类结果的数据进行噪声过滤,将噪声数据删除,从而提高聚类的准确度,得到第三聚类结果。
第一方面的第十一个可行的实现方式中,原始数据包括图片和视频抽帧,来源包括终端设备、摄像头、离线数据和互联网公开数据。原始数据的种类和来源不做限制,
第一方面的第十二个可行的实现方式中,获取原始数据的相似度矩阵,针对相似度矩阵中相似度大于第六阈值的数据对,删除相似度大于第六阈值的数据对中的一个数据。
第一方面的第十三个可行的实现方式中,其特征在于,获取原始数据的相似度矩阵的方法包括:从原始数据中提取特征向量,根据特征向量得到相似度矩阵。
第二方面,提供了一种数据聚类的***,***包含第一聚类处理模块、第二聚类处理模块和第三聚类处理模块,
第一聚类处理模块用于,获取原始数据的第一相似度矩阵,并对第一相似度矩阵进行连通域分析,结合相似度的分布统计分析,得到第一聚类结果,以及第一聚类结果中潜在待合并的类别的关系;
第二聚类处理模块用于,根据潜在待合并的类别的关系,对第一聚类结果中待合并类别进行合并,得到第二聚类结果;
第三聚类处理模块用于,对第二聚类结果进行强连通分量分析,根据分析的结果,对第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。
第二方面的第一个可行的实现方式中,第一聚类处理模块,还用于执行第一方面的第二至8个可行的实现方式中任一项方法。
第二方面的第二个可行的实现方式中,第二聚类处理模块,还用于执行第一方面的第九至十个可行的实现方式中任一项方法。
第二方面的第三个可行的实现方式中,第三聚类处理模块,还用于执行第一方面的第十一个可行的实现方式中任一项方法。
第三方面,提供了一种计算机存储介质,计算机存储介质内存储有计算机程序,计算机程序被处理器执行时实现第一方面或第一方面的第二至十三个可行的实现方式中任一项数据聚类的方法。
第四方面,提供了一种计算机设备,其特征在于,计算机设备包括:处理器和存储器,存储器中存储有程序,处理器用于执行存储器中存储的程序以实现第一方面或第一方面的第二至十三个可行的实现方式中任一项数据聚类的方法。
第五方面,提供了一种计算机程序产品,其特征在于,计算机程序产品包括计算机程序代码,当计算机程序代码被计算机设备执行时,计算机设备执行第一方面或第一方面的第二至十三个可行的实现方式中任一项数据聚类的方法。
附图说明
图1是本领域相关现有技术的方法流程示意图;
图2是本申请实施例提供的***拓扑示意图;
图3是本申请实施例提供***的方法流程示意图;
图4是本申请实施例提供的第一聚类处理模块的方法流程示意图;
图5是本申请实施例提供的第二聚类处理模块的方法流程示意图;
图6是本申请实施例提供的第三聚类处理模块的方法流程示意图;
图7是本申请实施例提供的计算机设备硬件架构拓扑示意图;
图8是本申请实施例提供的第一聚类处理模块的连通域分析方法示意图。
具体实施方式
在人工智能领域,训练或者调整一个模型需要收集和处理大量的数据,但是一些特定的场景下,没有公开完整的数据集可用于训练或者调整一个模型,例如一个路口的人脸识别***,有A类人群会固定经过这个路口,形成固定的人脸数据集,同时会有新增人群B从该路口路过,B类人群的人脸数据对于这个路口的人脸识别***来说是新增数据,且不被***识别,这种新增人群每天均会出现。因此***往往只能自行收集处理并获得相应的数据集,但是这个过程会耗费大量的时间和资源,极大的限制了深度学习运用的实际场景。
针对这个问题,一种可行的现有技术如图1所示。
依据流程102:获取原始数据,提取特征向量Feature,并计算相似度矩阵Similarity;
依据流程104:根据预设的K-split分块聚类算法对上述原始数据进行聚类,得到第一聚类结果。根据相似度矩阵Similarity,挑选出K个数据作为起始分组数据,组成K个分组,上述的K个数据是从相似度来看最不相关的K个数据。然后使用K-split分块聚类算法将剩余的数据分类到上述K个分组中,得到第一聚类结果。
依据流程106:利用预设连通域分析方法确定上述第一聚类结果中各类之间的连通域。
依据流程108:根据所确定的连通域对上述第一聚类结果中的各类进行合并,得到第二聚类结果。
现有技术主要的问题是使用K-split分块算法时,难以确定合适的K值,如果使用了偏小的K值,则所建立的聚类数据库的错误率过高;如果使用了偏大的K值,会显著影响后续的模型训练和调优。另外从数据集中取出K个最不相关的数据时,存在获取到“噪声”数据的情况,会增加K-split算法***次数,导致聚类速度与效率下降。
针对上述问题,本申请提供一个可行的技术方案,如图2所示为本申请一实施例的***200的示意图,上述***200包含:原始数据搜集模块202、第一聚类处理模块204、第二聚类处理模块206、第三聚类处理模块208和聚类结果输出模块210。
原始数据搜集模块202用于搜集获取用于训练或调整模型的原始数据,并进行预处理,原始数据包含图片、视频抽帧和声音等等数据,这些数据来源包括终端设备、摄像头、离线数据和互联网公开数据等等。
第一聚类处理模块204用于对原始数据进行预处理,提取原始数据的特征向量Feature,获取原始数据的第一相似度矩阵,根据第一相似度矩阵的连通域分析和第一相似度矩阵的分布统计分析,得到第一聚类结果,同时还有第一聚类结果中潜在的待合并的类别关系Relations。
第二聚类处理模块206用于根据第一聚类结果中潜在的待合并的类别关系Relations,对待合并的类别进行合并,得到第二聚类结果。
第三聚类处理模块208用于对第二聚类结果进行强连通分量分析,根据上述分析的结果,对上述第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。
聚类结果输出模块210用于输出第三聚类结果作为最终的聚类好的数据集。
如图3所示为本申请的一实施例的***200的工作流程示意图300。
依据流程302,原始数据搜集模块202搜集获取用于训练或调整模型的原始数据,并进行预处理。例如,如果原始数据是图片,目标是针对人脸数据进行自动聚类,生成聚类好的人脸数据集。本实施例中预处理的内容包括使用多任务检测模型对原始数据进行人脸检测,保存为112*112分辨率的人脸图片,作为输入到第一聚类处理模块204的原始数据。下文中上述原始数据是指经过预处理的原始数据。
依据流程304,第一聚类处理模块204提取原始数据的特征向量Feature,获取原始数据的第一相似度矩阵,根据第一相似度矩阵的连通域分析和第一相似度矩阵的分布统计分析,得到第一聚类结果,以及第一聚类结果中潜在的待合并的类别关系Relations。例如,以上述112*112分辨率的人脸图片A1、A2、A3…Ak作为第一聚类模块204的输入原始数据,提取人脸图片的512维的特征向量a1、a2、a3…ak,计算相似度矩阵,获取到原始数据的相似度矩阵Similarity,如下所示:
其中,axy元素的值代表着x图片和y图片之间的相似度值。
当一个对相似度矩阵中元素值大于第六阈值的图片对,选择删除其中的一张,并删除相似度矩阵中该图片对应的行向量与列向量,以保证进入下一步操作前,数据集中不存在重复图片,其中第六阈值的取值接近1,例如取值为0.99。例如,如果相似度矩阵Similarity中的元素a32大于第六阈值,则删除对应的图片对A32中的一张图片,例如是A2图片,并且删除相似度矩阵中A2图片对应的行向量和列向量,对更新后的相似度矩阵,如下所示:
通过这种方法,可以减少重复图片,减少计算量。
接下来对连通域分析进行详细解释。按照每列或者每行相似度的最大值组成一个新的列表,对新列表进行降序排序得到待聚类算法中的图片聚类顺序,排序的目的是保证拥有最大的相似度值的图片,能够优先进行聚类。例如,用a(x,max)表示上述新的列表中的数据,其中x=1,2,3,…k。对a(x,max)进行降序排序,得到索引顺序Index_list=down[a(x,max)]。
按照索引顺序Index_list,对未被聚类的图片依次进行聚类,已经聚类过的图片跳过,减少计算量。创建一个新类别,将上述图片做新类别的初始中心图片。
围绕新类别的中心图片进行聚类,获取新类别的中心图片对应的相似度列向量的连通域,选择与中心图片连接权重高于一个阈值的若干图片。
图片选取数量的规则,依据对应的中心图片与原始数据相似度分布进行动态选择。当该相似度分布较为集中时,可选取数量较大;当相似度分布较稀疏时,选取数量较小。相似度的分布统计分析办法,如图8所示,纵坐标是相似度值,横坐标是数据编号,展示了10000个数据和中心数据之间的相似度分布情况,这里的数据可以包含图片。
对上述选中的若干图片,进行规则匹配,判断是否加入到新类别中。本实施例中匹配规则是:
规则1:如果选择与待加入到新类别的图片相似度最高的图片已经在新类别中,那么该图片加入到新类别中;
规则2:如果不在新类别中,那么该照片如果与初始中心图片的相似度高于某个阈值,则加入到新类别中;
规则3:如果规则1和2均不满足,则要求该图片自身相似度向量中最高且已经加入新类别的若干图片,与该图片相似度的平均值大于第一阈值的时候,则将该照片加入到新类别中;或者上述该照片自身相似度向量中最高且已经加入到新类别的若干图片的数量超过第二阈值,则该照片也加入到新类别中。
以新加入此类别中的其他图片依次作为中心图片,递归进行重复上述流程,进一步聚集相似度最高若干张照片,确保仅聚类高相似的图片,直到不再加入新的图片,完成一个类别的图片的聚类。
此过程位上述的对原始数据的相似度矩阵进行连通域分析和相似度的分布统计分析。
重复上述流程,直到遍历整个上述新列表,并得到所有的新类别。
如果某个图片满足匹配规则,试图加入某个类别A,但是该图片已经在先前的聚类步骤中被归为其他的类别B,则不再移动图片,仅标记类别A与类别B,作为潜在待合并类别关系对,用来表示这两个类别后续需要进一步的对比,作为类间清洗的输入。
依据流程306,第二聚类处理模块206根据第一聚类结果中潜在的待合并的类别关系Relations,对待合并的类别进行合并,得到第二聚类结果。例如对潜在待合并类别关系对的上述类别A和类别B进行第二相似度矩阵计算:
similarityAB=FeatureA*FeatureB
其中FeatureA是类别A的特征向量,FeatureB是类别B的特征向量,similarityAB是类别A和类别B的第二相似度矩阵。如果第二相似度矩阵中相似度值超过第三阈值的元素数量,除以矩阵的元素总量,得到超过第三阈值的图片对占所有图片对的比例,如果该比例超过第三比例,则认为类别A和类别B其实是同一个类别,将类别A和类别B进行合并。
如果该比例低于第三比例,则需要对类别内的图片进行比较。选取图片较少的类别,假如类别A中的图片较少,则遍历类别A中的图片,如果图片与另一类别即类别B中的图片的相似度值超过第四阈值的比例高于第四比例,或者超过第四阈值的图片数量超过类别A中的图片数量,则认为该图片与类别B是属于同一个类别,将该图片移动到类别B中。否则,就不移动。最终得到第二聚类结果。
依据流程308,第三聚类处理模块208对于第二聚类结果进行强连通分量分析,根据分析的结果,对第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。例如,对上述得到的第二聚类结果中的每个图片类别内部进行第三相似度矩阵计算,例如类别C,获取类别C的的第三相似度矩阵,获取矩阵中超过第五阈值的元素索引对,作为连通关系对,用矩阵中的下标作为表示,例如索引对为(a,b)、(b,c)、(c,d)、(a,f)、(e,g)、(e,i),则这些索引对即为连通关系对。
对所有的连通关系对计算连接通路,保留最长的连接通路内的图片,作为类别C的第三类聚类结果,并删除连接通路外的图片。例如,在连通关系对(a,b)、(b,c)、(c,d)、(a,f)、(e,g)、(e,i)中,有两条连接通路(a,b,c,d,f)和(e,g,i),第一连接通路长度为5,第二连接通路为3,则保留第一连接通路中的索引对应的图片,删除其他的图片,最后得到类别C的第三聚类结果,其中(e,g,i)为噪声数据。
针对所有的新的类别的第二聚类结果重复流程308,直至遍历完所有的新的类别。得到最后的第三聚类结果。
依据流程310,聚类结果输出模块210输出第三聚类结果作为最终聚类结果。例如输出上述实施例中的图片数据的第三聚类结果,作为最终的人脸数据库,用于人脸识别模型的训练和调整。
需要说明的是本实施例中的图片数据仅仅是原始数据中的一种,原始数据还可以包括:声音数据、红外影像数据和CT影像数据等等所有需要聚类分类的原始数据。均可以采用上述***200和工作流程300来完成数据的分类聚类,用于人工智能识别模型的训练和调整。另外上述实施例中的列向量,也可以是行向量。本申请所说的相似度值和相似度代表同一个意思,相似度值是相似度的一个数字度量,1代表完全相同,0代表完全不相同。
下面对***的工作流程示意图300中的流程进行详细的解释,流程304的一实施例如图4所示,进一步解释对原始数据的第一相似度矩阵进行连通域分析和相似度的分布统计分析方法:
依据流程402,第一聚类模块204接收到原始数据搜集模块202发送过来的待聚类分类的原始数据,该数据包括:图片、视频抽帧、声音、红外影像和CT影像等所有待分类聚类的数据。第一聚类模块204开始启动第一聚类流程。
依据流程404,第一聚类模块204获取原始数据的特征向量,然后通过计算原始数据的特征向量,得到所有原始数据的第一相似度矩阵,第一相似度矩阵中每一个元素代表着一对原始数据的相似度值,当相似度值大于第六阈值的时候,则删除这一对原始数据中的一个,通过这种办法删除原始数据中的重复数据,减少计算量,其中第六阈值接近1,例如0.99。获取删除重复数据之后的第一相似度矩阵,对第一相似度矩阵的列向量按照其最大值进行排序,获取索引数据Index_list,如流程304中上述方法,此时流程304中上述的图片A1、A2、A3…Ak可以是非图片类型的其他数据。需要说明的是上述实施例中的列向量,也可以是行向量。
依据流程406,根据索引数组Index_list,按顺序分析索引号对应数据,对每一个数据进行处理。
依据流程410,判断是否遍历完索引数组Index_list,如果是,则跳回流程406,直到遍历完Index_list索引数组中的每个数据a(x,max);如果否,则跳到流程412。
依据流程412,判断该数据a(x,max)是否已经被聚类,如果是,则跳回流程406;如果否,则跳到流程414。
依据流程414,以该数据a(x,max)作为第一中心数据,创建一个新的聚类类别,进行聚类。
依据流程416,分析a(x,max)对应第一相似度矩阵的列向量[ax1,ax2,ax3,…axk],通过统计分析该列向量的相似度分布,获得连通域最强n个待聚类到该类别的候选数据a(n),组成数据集N。获得连通域最强的方式如图8所示,图8为该列向量的相似度分布坐标图,纵坐标指示相似度值,图中k值取10000为例。从图8中可以看到相似度分布会有一个断裂点,断裂点横坐标记做x0,获取n的方式:
n=max(min(x0,最大保留数),最小保留数)
该方法称为获得连通域最强n个待聚类到该类别的候选数据。
依据流程418,以上述数据a(n)作为第二中心数据,从上述删除重复数据之后的原始数据中选取m个连通域最强的数据b(m),称为数据集M,其中a(n)是数据集N中的任意一个数据。选取m个连通域最强的数据b(m)的方式如流程416上述方式。
依据流程420,判断在上述数据集M中,与上述数据a(n)相似度最高的数据b(m)已在新的聚类类别中,即最相似的数据在该类已经聚类好的数据,如果是,则跳转到流程431;如果否,则跳转到流程422。
依据流程422,判断a(n)与第一中心数据的相似度是否高于一个阈值,如果是,则跳转到流程431;如果否,则跳转到流程424。
依据流程424,找出数据集M中与新的聚类类别中的数据重合的部分,称为重合数据集,计算数据a(n)与重合数据集中的数据的相似度,最后取均值。
依据流程426,判断该均值是否大于第一阈值,如果是,则跳转到流程431;如果否,则跳转到流程428。
依据流程428,判断重合数据集中的数据数量是否超过第二阈值,如果是,则跳转到流程431;如果否,则跳转到流程430。
依据流程430,对该a(n)不进行聚类,放回待聚类数据中。其中待聚类数据是指除去已经聚类的数据以外的原始数据。
依据流程434,判断是否已经遍历完数据集N中所有的a(n),如果是,则跳到流程406,经过流程406,流程410、流程412和流程414,选择一个新的中心数据,进行下一个聚类流程。如果否,则n=n+1,然后流程跳转到流程418,对数据集N中的下一个a(n)进行聚类流程,直至遍历数据集N中所有的a(n)。
依据流程431,判断a(n)是否在已有的聚类类别中,如果是,则跳到流程433,将新的聚类类别和已有的聚类类别加入到潜在待合并关系对,a(n)还是保留在已有的聚类类别中;如果否,则跳到流程432,将a(n)加入到新的聚类类别中。其中潜在待合并关系对即是潜在待合并的类别的关系。
接下来对流程306所描述的第二聚类模块的工作流程进行详细的解释。如图5所示的流程图为流程306的详细解释。
依据流程502,根据潜在待合并关系对,确定待合并的类别,例如类别Class_A和类别Class_B。Class_A的数据数量为t1,Class_B的数据数量为t2,获取Class_A和Class_B中的数据的特征向量FeatureA和FeatureB,并计算得到Class_A和Class_B之间的第二相似度矩阵similarityAB,矩阵大小为t1*t2。
similarityAB=FeatureA*FeatureB
依据流程504,确定在第二相似度矩阵中,相似度超过第三阈值的元素的比例。
依据流程506,判断该比例是否超过了第三比例,如果是,则跳到流程508,将Class_A和Class_B进行合并,变成一个类别;如果否,则跳到流程510。
依据流程510,对类别内部满足相似度要求规则的数据进行移动。例如,首先挑选类别Class_A和类别Class_B中数据数量小的类别,比如Class_A中的数据数量较小,则挑选Class_A中的数据,依次和Class_B中的所有数据进行相似度计算,如果相似度超过第四阈值的比例高于第四比例,或者超过第四阈值的数据数量超过了Class_A的数据数量,则将该数据移动到Class_B中。遍历Class_A中的所有数据,依次按照流程510进行处理,得到最终移动的结果。
依据流程512,遍历所有的潜在待合并类别,将符合上述规则的潜在待合并类别进行合并,或者是类别间数据进行移动,最后得到第二聚类类别。
接下来对***流程示意图300的流程308所描述的第三聚类处理模块的工作流程进行详细的解释,如图6所示。
依据流程602,依次获取第二聚类结果中的类别内数据的第三相似度矩阵。例如Class_T代表第二聚类结果中的类别,Class_T(t)代表类别中的已聚类好的数据,获取Class_T内数据的第三相似度矩阵,对第三相似度矩阵进行强连通分量分析。
依据流程604,对第三相似度矩阵中超过第五阈值的相似度的元素索引对,作为连通关系对揭露。如上述实施例上述,记录连通关系对为(a,b)、(b,c)、(c,d)、(a,f)、(e,g)、(e,i)。
依据流程606,在连通关系中,对组成的最长连接通路内的数据进行保留,删除之外的数据,例如,在上述连通关系对中,有两条连接通路(a,b,c,d,f)和(e,g,i),第一连接通路长度为5,第二连接通路为3,则保留第一连接通路中的索引对应的数据,删除其他的数据,获得Class_T的第三聚类结果。通过这种方法,可以有效清理类别中的噪声数据。
本申请还提供了一种如图7所示的计算机设备700,计算机设备700包含处理器702、存储器704、通信接口706和通信总线708,处理器702从存储器704读取一组计算机指令以执行前述的数据聚类的方法。
本申请实施例所描述的原始数据搜集模块、第一聚类处理模块、第二聚类处理模块、第三聚类处理模块和聚类结果输出模块,可以通过图7所示的计算机设备执行计算机指令,实现各个模块所描述的功能。
本申请实施例提供了一种计算机存储介质,该计算机存储介质内存储有计算机程序,该计算机程序被处理器执行时实现前述的数据聚类方法的全部或部分步骤。
本申请实施例提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行时实现前述的数据聚类方法的全部或部分步骤。
应理解,本申请不对上述模块的各部分功能的划分进行限制性的限定,也不对上述模块具体部署在哪个环境进行限制性的限定。实际应用时可根据各计算设备的计算能力或具体应用需求进行适当的功能划分调整以及适应性的部署。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、模块和方法,可以通过其它的方式实现。例如,以上所描述的模块实施例仅仅是示意性的,例如,上述模块的划分,仅仅为一种逻辑功能划分,实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块或模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
上述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的部分步骤。而前述的存储介质可以为可读取的非易失性存储介质,包括:移动硬盘、只读存储器(英文:Read-Only Memory,简称ROM)、随机存取存储器(英文:Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的保护范围。
Claims (18)
1.一种数据聚类的方法,其特征在于,包括:
获取原始数据的第一相似度矩阵,并对所述第一相似度矩阵进行连通域分析,和相似度的分布统计分析,得到第一聚类结果,以及所述第一聚类结果中潜在待合并的类别的关系;
根据所述潜在待合并的类别的关系,对所述第一聚类结果中待合并类别进行合并,得到第二聚类结果;
对所述第二聚类结果进行强连通分量分析,对所述第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。
2.根据权利要求1所述的方法,其特征在于,获取所述第一聚类结果包括:获取第一中心数据对应所述第一相似度矩阵的列向量,通过统计分析所述列向量的相似度分布,获得连通域最强的n个待聚类到新的聚类类别的数据a(n),组成数据集N,按照规则选取所述数据集N中的所述数据a(n)加入所述新的聚类类别,得到所述第一聚类结果。
3.根据权利要求2所述的方法,其特征在于,获取所述第一中心数据包括:按列取所述第一相似度矩阵中每列相似度的最大值,组成一个列表,对所述列表进行降序排序,得到数据索引,按照所述数据索引的顺序,将未被聚类的数据作为所述第一中心数据。
4.根据权利要求2所述的方法,其特征在于,以所述第一中心数据作为初始数据,创建所述新的聚类类别。
5.根据权利要求2所述的方法,其特征在于,所述规则包括:所述数据a(n)和所述第一中心数据的相似度高于一个阈值,将所述数据a(n)加入到所述新的聚类类别。
6.根据权利要求2所述的方法,其特征在于,所述规则包括:以所述数据a(n)作为第二中心数据,从所述原始数据中选取m个连通域最强的数据b(m),组成数据集M,在所述数据集M中,与所述数据a(n)相似度最高的所述数据b(m)已在所述新的聚类类别中,将所述数据a(n)加入到所述新的聚类类别。
7.根据权利要求2-6任一项所述的方法,其特征在于,所述规则包括:找出所述数据集M中与所述新的聚类类别中的数据重合的部分,组成重合数据集,计算所述数据a(n)与所述重合数据集中的数据的相似度,最后取均值,当所述均值大于第一阈值的时候,将所述数据a(n)加入到所述新的聚类类别。
8.根据权利要求7所述的方法,其特征在于,所述方法包括:所述重合数据集的数据数量超过第二阈值的时候,将所述数据a(n)加入到所述新的聚类类别。
9.根据权利要求1所述的方法,其特征在于,获得所述第二聚类结果包括:
获取第一待合并类别和第二待合并类别的第二相似度矩阵,并判断所述第二相似度矩阵的元素中超过第三阈值的比例;
如果比例超过第三比例,将所述第一待合并类别和所述第二待合并类别进行合并;
如果比例没有超过所述第三比例,对所述第一待合并类别和所述第二待合并类别内部满足相似度要求规则的数据进行移动。
10.根据权利要求9任一项所述的方法,其特征在于,所述相似度要求规则包括:
挑选所述第一待合并类别中的数据,依次和所述第二待合并类别中的所有数据进行相似度计算,如果相似度超过第四阈值的比例高于第四比例,或超过所述第四阈值的数据数量超过所述第一待合并类别中的数据数量,将所述第一待合并类别中的数据移动到所述第二待合并类别。
11.根据权利要求1所述的方法,其特征在于,获取所述第三聚类结果,包括:获取所述第二聚类结果的数据的第三相似度矩阵,并对所述第三相似度矩阵中超过第五阈值的分量划分为强连通分量,对所述强连接分量组成的最长连接通路内的数据进行保留,删除连接通路外的数据,得到所述到第三聚类结果。
12.一种数据聚类的***,其特征在于,所述***包含第一聚类处理模块、第二聚类处理模块和第三聚类处理模块,
所述第一聚类处理模块用于,获取原始数据的第一相似度矩阵,并对所述第一相似度矩阵进行连通域分析,结合相似度的分布统计分析,得到第一聚类结果,以及所述第一聚类结果中潜在待合并的类别的关系;
所述第二聚类处理模块用于,根据所述潜在待合并的类别的关系,对所述第一聚类结果中待合并类别进行合并,得到第二聚类结果;
所述第三聚类处理模块用于,对所述第二聚类结果进行强连通分量分析,根据所述分析的结果,对所述第二聚类结果进行类别内部噪声数据清洗,得到第三聚类结果。
13.根据权利要求12所述的***,其特征在于,所述第一聚类处理模块,还用于执行权利要求2-8任一项所述方法。
14.根据权利要求12所述的***,其特征在于,所述第二聚类处理模块,还用于执行权利要求9-10任一项所述方法。
15.根据权利要求12所述的***,其特征在于,所述第三聚类处理模块,还用于执行权利要求11所述方法。
16.一种计算机存储介质,其特征在于,所述计算机存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至11任一所述的数据聚类的方法。
17.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器中存储有程序,所述处理器用于执行所述存储器中存储的程序以实现权利要求1至11任一所述的数据聚类的方法。
18.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码被计算机设备执行时,所述计算机设备执行权利要求1至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010663897.1A CN113988148A (zh) | 2020-07-10 | 2020-07-10 | 一种数据聚类的方法、***、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010663897.1A CN113988148A (zh) | 2020-07-10 | 2020-07-10 | 一种数据聚类的方法、***、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113988148A true CN113988148A (zh) | 2022-01-28 |
Family
ID=79731275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010663897.1A Pending CN113988148A (zh) | 2020-07-10 | 2020-07-10 | 一种数据聚类的方法、***、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113988148A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114708003A (zh) * | 2022-04-27 | 2022-07-05 | 西南交通大学 | 一种异常数据检测方法、装置、设备及可读存储介质 |
CN116433990A (zh) * | 2023-06-12 | 2023-07-14 | 恒超源洗净科技(深圳)有限公司 | 基于视觉检测的超声波清洗机反馈调节*** |
-
2020
- 2020-07-10 CN CN202010663897.1A patent/CN113988148A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114708003A (zh) * | 2022-04-27 | 2022-07-05 | 西南交通大学 | 一种异常数据检测方法、装置、设备及可读存储介质 |
CN114708003B (zh) * | 2022-04-27 | 2023-11-10 | 西南交通大学 | 一种异常数据检测方法、装置、设备及可读存储介质 |
CN116433990A (zh) * | 2023-06-12 | 2023-07-14 | 恒超源洗净科技(深圳)有限公司 | 基于视觉检测的超声波清洗机反馈调节*** |
CN116433990B (zh) * | 2023-06-12 | 2023-08-15 | 恒超源洗净科技(深圳)有限公司 | 基于视觉检测的超声波清洗机反馈调节*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110941594B (zh) | 一种视频文件的拆分方法、装置、电子设备及存储介质 | |
CN104679818B (zh) | 一种视频关键帧提取方法及*** | |
CN109472193A (zh) | 人脸检测方法及装置 | |
US20230401833A1 (en) | Method, computer device, and storage medium, for feature fusion model training and sample retrieval | |
CN112487207A (zh) | 图像的多标签分类方法、装置、计算机设备及存储介质 | |
CN110096617B (zh) | 视频分类方法、装置、电子设备及计算机可读存储介质 | |
CN110175249A (zh) | 一种相似图片的检索方法及*** | |
CN111783712A (zh) | 一种视频处理方法、装置、设备及介质 | |
CN112926429B (zh) | 机审模型训练、视频机审方法、装置、设备及存储介质 | |
CN111639230B (zh) | 一种相似视频的筛选方法、装置、设备和存储介质 | |
CN112528058B (zh) | 基于图像属性主动学习的细粒度图像分类方法 | |
CN113569895A (zh) | 图像处理模型训练方法、处理方法、装置、设备及介质 | |
CN113988148A (zh) | 一种数据聚类的方法、***、计算机设备和存储介质 | |
CN111432206A (zh) | 基于人工智能的视频清晰度处理方法、装置及电子设备 | |
CN110751191A (zh) | 一种图像的分类方法及*** | |
CN114078223A (zh) | 视频语义识别方法及设备 | |
CN113850311A (zh) | 一种基于分组和多样性增强的长尾分布图像识别方法 | |
Shi et al. | Segmentation quality evaluation based on multi-scale convolutional neural networks | |
CN113392867A (zh) | 一种图像识别方法、装置、计算机设备及存储介质 | |
CN116485743A (zh) | 一种无参考图像质量评价方法、***、电子设备及存储介质 | |
CN115830342A (zh) | 检测框的确定方法、装置、存储介质及电子装置 | |
CN115661618A (zh) | 图像质量评估模型的训练方法、图像质量评估方法及装置 | |
CN115982634A (zh) | 应用程序分类方法、装置、电子设备及计算机程序产品 | |
CN114972965A (zh) | 一种基于深度学习的场景识别方法 | |
CN109815911B (zh) | 基于深度融合网络的视频运动物体检测***、方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |