基于滑动窗口的数据相似检测方法与流程

文档序号:12039481阅读:1352来源:国知局
基于滑动窗口的数据相似检测方法与流程
本发明涉及数据清洗技术领域,尤其涉及一种海量数据下基于滑动窗口的数据相似检测方法。

背景技术:
数据相似检测就是检测数据库中的相似重复记录,以剔除冗余数据。相似重复记录为同一个现实实体在数据集合中不同的表现形式,由于它们在格式、拼写等方面的差异,导致数据库管理系统不能正确识别,进而影响对数据的正确处理。相似重复记录检测的衡量指标包括查全率、查准率及时间效率等,三者之间往往是相互制约的。海量数据下的数据检测在查全率和时间效率上尤为突出。需从多方面对检测算法进行优化算法,以提高检测效果和检测效率。目前已有的检测算法主要包括字段匹配算法、编辑距离算法、聚类算法以及基于滑动窗口的检测算法。其中尤以基于滑动窗口的算法较为有效。该算法在对记录集进行排序,依据相似记录邻近原理,将检测记录的比较记录数限制在有限的窗口数目内,从而可大大提高检测效率。经典的基于滑动窗口的相似检测的优点是算法简单,有限的比较量。但也存在问题:①没有考虑记录的各不同属性对检测效果的影响差异,平等对待各个属性;②窗口的大小设置没有统一的标准。由此国内外研究学者提出了一些优化方法,如《数据仓库中的相似重复记录检测方法[J]》提出可根据记录属性对于记录的影响不同,采用等级法对属性进行加权并采用简单的多轮次检测技术提高查全率。《Anadaptiveandefficientalgorithmfordetectingapproximatelyduplicatedatabaserecords》用一个动态形成的相似记录集队列(实际为可变的队列)来代替固定大小的滑动窗口,可变队列中的每一个记录代表的是不同相似程度的记录集,而不是一条记录,提高了查全率。针对以上方法,本文对海量数据下的数据相似检测做了进一步的优化。①科学地计算属性的权重向量,权重计算的科学性保证了按照不同属性对记录集进行排序时,相似重复记录邻近。②确定存放相似重复记录集的可变窗口大小的队列的窗口上界,使得记录的比对次数大大降低,减少比对时间。③采用多线程代替多轮次的相似重复检测,减少检测时间,提高检测效率。

技术实现要素:
本发明提出了一种海量数据下基于滑动窗口的数据相似检测方法,其采用综合用户经验和数理统计方法的综合赋权法,计算出能表征记录特征的属性权重向量;计算存放相似重复记录集的可变窗口大小的队列的窗口上界;依据各属性进行多线程并发执行检测算法,检测过程中,使用可变窗口大小的队列依次检测记录集,最后合并各线程的检测结果。为了实现上述目的,本发明实施案例提供的技术方案如下:一种基于滑动窗口的数据相似检测方法,所述方法包括:S1、采用等级法计算属性的经验向量G;S2、采用数理统计法计算属性的统计向量C;S3、综合经验向量G和统计向量C,计算出最终的权重向量W;S4、计算可变窗口大小的队列的窗口上界;S5、根据属性的个数创建多个线程;S6、在每个线程中,顺序扫描记录集,计算当前记录与可变队列中记录的相似度;S7、合并各线程检测出的重复记录集。作为本发明的进一步改进,所述步骤S1具体为:根据用户经验,采用等级法为每一个属性赋予相应的等级,然后通过均值法计算出代表记录属性特征的经验向量G。作为本发明的进一步改进,所述步骤S2具体为:多次随机抽取指定数目的记录,计算每一属性取值的变化种数,作为客观描述属性对记录的重要性,使用均值法计算出每个属性的取值种类数,生成属性统计向量C。作为本发明的进一步改进,所述经验向量G的计算公式为:其中,Gi表示第i个属性的最终统一等级,m表示用户的个数,s表示第s个操作用户。作为本发明的进一步改进,所述统计向量C的计算公式为:其中,Cij表示第i次第j个属性的取值种类数目,Cj表示第j个属性的最终种类数,m表示选取的次数。作为本发明的进一步改进,所述权重向量W的计算公式为:其中,Wi表示第i个属性的权重向量,Gi表示第i个属性的最终统一等级,Ci表示第i个属性的最终种类数。作为本发明的进一步改进,所述步骤S6中在每个线程中顺序扫描记录集之前还包括:在每个线程中根据属性值对数据集进行排序。作为本发明的进一步改进,所述步骤S6中“计算当前记录与可变队列中记录的相似度”具体为:当前记录与可变队列中的第一个记录进行相似检测;若当前记录与可变队列中的第一个记录相似,把当前记录添加到相似重复记录集中,然后,把当前记录添加到可变队列的第一个记录中,查看可变队列是否已满,如果可变队列已满,先剔除可变队列中最后一条记录,然后再把当前记录添加到可变队列;如果可变队列不满,则直接添加记录到可变队列中;若当前记录与可变队列中的第一个记录不相似,继续与可变队列的其他记录进行比对。本发明综合主观用户经验和客观的数理统计两方面计算属性的权重代替主观的等级加权计算;相似检测的过程中采用可变窗口(确定的窗口上限)大小的队列代替固定窗口大小的滑动窗口依次扫描数据集,检测每一条记录。同时采用基于多线程并发的检测算法代替多轮检测,提高了检测效率,节省了检测时间。附图说明图1为本发明基于滑动窗口的数据相似检测方法的流程示意图。图2为本发明一具体实施方式中基于滑动窗口的数据相似检测方法的具体流程图。具体实施方式以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。参图1所示,本发明的一种基于滑动窗口的数据相似检测方法,该方法包括:S1、采用等级法计算属性的经验向量G;S2、采用数理统计法计算属性的统计向量C;S3、综合经验向量G和统计向量C,计算出最终的权重向量W;S4、计算可变窗口大小的队列的窗口上界;S5、根据属性的个数创建多个线程;S6、在每个线程中,顺序扫描记录集,计算当前记录与可变队列中记录的相似度;S7、合并各线程检测出的重复记录集。其中步骤S1~S3中的经验向量G、统计向量C和最终的权重向量W具体算法为:综合用户经验和数理统计方法的综合赋权法:数据库中记录的属性描述了实体的特征,各个属性决定实体特征的重要程度各不相同,因此有必要计算每个属性的权重。①主观方面:Gst(1≤s≤m,1≤t≤k)是第s个操作用户根据个人的经验为属性At所指定的等级(从1开始,使用连续正整数表示等级,1表示最高等级,数值越大,等级越低),Gt表示第t个属性的最终统一等级,采用均值法计算出每个属性的最终统一等级。其中,Gi表示第i(1≤i≤k)个属性的最终统一等级,m表示用户的个数。②客观方面:属性的取值若是各不相同,就会很容易区别记录的相似性。客观上采用随机统计法(多次随机选取一定数目的记录)计算每一属性取值的变化种数,作为客观描述属性对记录的重要性。Cij(1≤j≤k)表示第i次第j个属性的取值种类数目,Cj表示第j个属性的最终种类数,使用均值法计算出每个属性的最终取值种类数。其中,Cj表示第j个属性的最终种类数,m表示选取的次数。综合上述两式,计算属性权重向量W=(W1,W2,…,Wk):可变窗口大小的队列窗口上界计算:多次随机选取的一定数目记录,根据各属性启动多线程,每个线程中按照属性关键字排序,然后检测出每个线程中的相似重复记录,计算两条相似重复记录之间的距离(两条记录之间存在几条记录):其中,size表示可变队列的窗口上限,di表示第i次选取的记录中两条相似重复记录的距离,m表示记录的选取次数。参图2所示,本发明的一具体实施方式中海量数据下基于滑动窗口的数据相似检测 方法具体包括:S1、根据用户经验,采用等级法为每一个属性赋予相应的等级,然后通过均值法计算出代表记录属性特征的经验向量G;S2、多次随机抽取指定数目的记录,计算每一属性取值的变化种数,作为客观描述属性对记录的重要性。使用均值法计算出每个属性的取值种类数,生成属性统计向量C;S3、综合以上两个向量,计算出最终的权重向量W;S4、计算可变窗口大小的队列的窗口上界;S5、根据属性的个数创建多个线程;S6、在每个线程中,顺序扫描记录集,计算当前记录与可变队列中记录的相似度。具体为:当前记录与可变队列中的第一个记录进行相似检测;若当前记录与可变队列中的第一个记录相似,把当前记录添加到相似重复记录集中,然后,把当前记录添加到可变队列的第一个记录中,查看可变队列是否已满,如果可变队列已满,先剔除可变队列中最后一条记录,然后再把当前记录添加到可变队列;如果可变队列不满,则直接添加记录到可变队列中;若当前记录与可变队列中的第一个记录不相似,继续与可变队列的其他记录进行比对。;S7、合并各线程检测出的重复记录集。优选地,在步骤S6中“在每个线程中,顺序扫描记录集”之前还包括:在每个线程中根据属性值对数据集进行排序。本发明首先科学地计算属性的权重向量即:采用等级法计算属性的经验向量G;采用数理统计法计算属性的统计向量C;结合经验向量和统计向量计算权重向量W;然后确定存放相似重复记录集的可变窗口大小的队列的窗口上界,在多次选取的记录中,计算两条相似重复记录的距离(相似重复记录间的记录条数);最后使用多线程代替简单的多轮次相似重复检测,根据属性的个数创建多线程,在每个线程中检测相似重复记录,最后合并各线程中检测出的重复记录集。其具有以下特点:采用综合赋权法计算属性的向量空间;采用可变窗口大小的队列技术。与现有技术相比,本发明综合主观用户经验和客观的数理统计两方面计算属性的权重代替主观的等级加权计算;相似检测的过程中采用可变窗口(确定的窗口上限)大小的优先队列代替固定窗口大小的滑动窗口依次扫描数据集,检测每一条记录。同时采用基于多线程并发的检测算法代替多轮检测,提高了检测效率,节省了检测时间。应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个 独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1