CN103336771A - 基于滑动窗口的数据相似检测方法 - Google Patents
基于滑动窗口的数据相似检测方法 Download PDFInfo
- Publication number
- CN103336771A CN103336771A CN2013101142448A CN201310114244A CN103336771A CN 103336771 A CN103336771 A CN 103336771A CN 2013101142448 A CN2013101142448 A CN 2013101142448A CN 201310114244 A CN201310114244 A CN 201310114244A CN 103336771 A CN103336771 A CN 103336771A
- Authority
- CN
- China
- Prior art keywords
- record
- attribute
- vector
- variable
- formation
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于滑动窗口的数据相似检测方法,包括:S1、采用等级法计算属性的经验向量G;S2、采用数理统计法计算属性的统计向量C;S3、综合经验向量G和统计向量C,计算出最终的权重向量W;S4、计算可变窗口大小的队列的窗口上界;S5、根据属性的个数创建多个线程;S6、在每个线程中,顺序扫描记录集,计算当前记录与可变队列中记录的相似度;S7、合并各线程检测出的重复记录集。本发明采用基于多线程并发的检测算法代替多轮检测,提高了检测效率,节省了检测时间。
Description
技术领域
本发明涉及数据清洗技术领域,尤其涉及一种海量数据下基于滑动窗口的数据相似检测方法。
背景技术
数据相似检测就是检测数据库中的相似重复记录,以剔除冗余数据。相似重复记录为同一个现实实体在数据集合中不同的表现形式,由于它们在格式、拼写等方面的差异,导致数据库管理***不能正确识别,进而影响对数据的正确处理。相似重复记录检测的衡量指标包括查全率、查准率及时间效率等,三者之间往往是相互制约的。海量数据下的数据检测在查全率和时间效率上尤为突出。需从多方面对检测算法进行优化算法,以提高检测效果和检测效率。
目前已有的检测算法主要包括字段匹配算法、编辑距离算法、聚类算法以及基于滑动窗口的检测算法。其中尤以基于滑动窗口的算法较为有效。该算法在对记录集进行排序,依据相似记录邻近原理,将检测记录的比较记录数限制在有限的窗口数目内,从而可大大提高检测效率。经典的基于滑动窗口的相似检测的优点是算法简单,有限的比较量。但也存在问题:①没有考虑记录的各不同属性对检测效果的影响差异,平等对待各个属性;②窗口的大小设置没有统一的标准。由此国内外研究学者提出了一些优化方法,如《数据仓库中的相似重复记录检测方法[J]》提出可根据记录属性对于记录的影响不同,采用等级法对属性进行加权并采用简单的多轮次检测技术提高查全率。《An adaptive and efficient algorithmfor detecting approximately duplicate database records》用一个动态形成的相似记录集队列(实际为可变的队列)来代替固定大小的滑动窗口,可变队列中的每一个记录代表的是不同相似程度的记录集,而不是一条记录,提高了查全率。
针对以上方法,本文对海量数据下的数据相似检测做了进一步的优化。①科学地计算属性的权重向量,权重计算的科学性保证了按照不同属性对记录集进行排序时,相似重复记录邻近。②确定存放相似重复记录集的可变窗口大小的队列的窗口上界,使得记录的比对次数大大降低,减少比对时间。③采用多线程代替多轮次的相似重复检测,减少检测时间,提高检测效率。
发明内容
本发明提出了一种海量数据下基于滑动窗口的数据相似检测方法,其采用综合用户经验和数理统计方法的综合赋权法,计算出能表征记录特征的属性权重向量;计算存放相似重复记录集的可变窗口大小的队列的窗口上界;依据各属性进行多线程并发执行检测算法,检测过程中,使用可变窗口大小的队列依次检测记录集,最后合并各线程的检测结果。
为了实现上述目的,本发明实施案例提供的技术方案如下:
一种基于滑动窗口的数据相似检测方法,所述方法包括:
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;然后确定存放相似重复记录集的可变窗口大小的队列的窗口上界,在多次选取的记录中,计算两条相似重复记录的距离(相似重复记录间的记录条数);最后使用多线程代替简单的多轮次相似重复检测,根据属性的个数创建多线程,在每个线程中检测相似重复记录,最后合并各线程中检测出的重复记录集。其具有以下特点:
采用综合赋权法计算属性的向量空间;
采用可变窗口大小的队列技术。
与现有技术相比,本发明综合主观用户经验和客观的数理统计两方面计算属性的权重代替主观的等级加权计算;相似检测的过程中采用可变窗口(确定的窗口上限)大小的优先队列代替固定窗口大小的滑动窗口依次扫描数据集,检测每一条记录。同时采用基于多线程并发的检测算法代替多轮检测,提高了检测效率,节省了检测时间。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于滑动窗口的数据相似检测方法,其特征在于,所述方法包括:
S1、采用等级法计算属性的经验向量G;
S2、采用数理统计法计算属性的统计向量C;
S3、综合经验向量G和统计向量C,计算出最终的权重向量W;
S4、计算可变窗口大小的队列的窗口上界;
S5、根据属性的个数创建多个线程;
S6、在每个线程中,顺序扫描记录集,计算当前记录与可变队列中记录的相似度;
S7、合并各线程检测出的重复记录集。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1具体为:
根据用户经验,采用等级法为每一个属性赋予相应的等级,然后通过均值法计算出代表记录属性特征的等级向量G。
3.根据权利要求1所述的方法,其特征在于,所述步骤S2具体为:
多次随即抽取指定数目的记录,计算每一属性取值的变化种数,作为客观描述属性对记录的重要性,使用均值法计算出每个属性的取值种类数,生成属性统计向量C。
4.根据权利要求1所述的方法,其特征在于,所述经验向量G的计算公式为:
其中,Gi表示第i个属性的最终统一等级,m表示用户的个数,s表示第s个操作用户。
5.根据权利要求4所述的方法,其特征在于,所述统计向量C的计算公式为:
其中,Cij表示第i次第j个属性的取值种类数目,Cj表示第j个属性的最终种类数,m表示选取的次数。
6.根据权利要求4所述的方法,其特征在于,所述权重向量W的计算公式为:
其中,Wi表示第i个属性的权重向量,Gi表示第i个属性的最终统一等级,Ci表示第i个属性的最终种类数。
7.根据权利要求1所述的方法,其特征在于,所述步骤S6中“在每个线程中,顺序扫描记录集”之前还包括:
在每个线程中根据属性值对数据集进行排序。
8.根据权利要求1所述的方法,其特征在于,所述步骤S6中“计算当前记录与可变队列中记录的相似度”具体为:
当前记录与可变队列中的第一个记录进行相似检测;
若当前记录与可变队列中的第一个记录相似,把当前记录添加到相思重复记录集中,然后,把当前记录添加到可变队列的第一个记录中,查看可变队列是否已满,如果可变队列已满,先剔除可变队列中最后一条记录,然后再把当前记录添加到可变队列;如果优先队列不满,则直接添加记录到可变队列中;
若当前记录与可变队列中的第一个记录不相似,继续与可变队列的其他记录进行比对。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310114244.8A CN103336771B (zh) | 2013-04-02 | 2013-04-02 | 基于滑动窗口的数据相似检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310114244.8A CN103336771B (zh) | 2013-04-02 | 2013-04-02 | 基于滑动窗口的数据相似检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103336771A true CN103336771A (zh) | 2013-10-02 |
CN103336771B CN103336771B (zh) | 2016-12-28 |
Family
ID=49244938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310114244.8A Expired - Fee Related CN103336771B (zh) | 2013-04-02 | 2013-04-02 | 基于滑动窗口的数据相似检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103336771B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750682A (zh) * | 2013-12-25 | 2015-07-01 | 任子行网络技术股份有限公司 | 一种海量日志的缓冲量分配方法 |
CN104794318A (zh) * | 2014-01-17 | 2015-07-22 | 无锡华润上华半导体有限公司 | 用于建立半导体器件统计模型的数据处理方法 |
CN105989061A (zh) * | 2015-02-09 | 2016-10-05 | 中国科学院信息工程研究所 | 一种滑动窗口下多维数据重复检测快速索引方法 |
CN106484915A (zh) * | 2016-11-03 | 2017-03-08 | 国家电网公司信息通信分公司 | 一种海量数据的清洗方法和*** |
CN106528705A (zh) * | 2016-10-26 | 2017-03-22 | 桂林电子科技大学 | 一种基于rbf神经网络的重复记录检测方法和*** |
CN108268876A (zh) * | 2016-12-30 | 2018-07-10 | 广东精点数据科技股份有限公司 | 一种基于聚类的近似重复记录的检测方法及装置 |
CN109753496A (zh) * | 2018-11-27 | 2019-05-14 | 天聚地合(苏州)数据股份有限公司 | 一种用于大数据的数据清洗方法 |
CN111104398A (zh) * | 2019-12-17 | 2020-05-05 | 智慧航海(青岛)科技有限公司 | 针对智能船舶近似重复记录的检测方法、消除方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794719A (zh) * | 2005-12-31 | 2006-06-28 | 西安交大捷普网络科技有限公司 | 一种基于权重关键字的Web过滤方法 |
CN101071419A (zh) * | 2007-05-31 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 在网络上判断文章重要性的方法和***、及滑动窗口 |
CN101667197A (zh) * | 2009-09-18 | 2010-03-10 | 浙江大学 | 基于滑动窗口的数据流关联规则挖掘方法 |
-
2013
- 2013-04-02 CN CN201310114244.8A patent/CN103336771B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1794719A (zh) * | 2005-12-31 | 2006-06-28 | 西安交大捷普网络科技有限公司 | 一种基于权重关键字的Web过滤方法 |
CN101071419A (zh) * | 2007-05-31 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 在网络上判断文章重要性的方法和***、及滑动窗口 |
CN101667197A (zh) * | 2009-09-18 | 2010-03-10 | 浙江大学 | 基于滑动窗口的数据流关联规则挖掘方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750682A (zh) * | 2013-12-25 | 2015-07-01 | 任子行网络技术股份有限公司 | 一种海量日志的缓冲量分配方法 |
CN104750682B (zh) * | 2013-12-25 | 2018-04-06 | 任子行网络技术股份有限公司 | 一种海量日志的缓冲量分配方法 |
CN104794318A (zh) * | 2014-01-17 | 2015-07-22 | 无锡华润上华半导体有限公司 | 用于建立半导体器件统计模型的数据处理方法 |
CN104794318B (zh) * | 2014-01-17 | 2017-11-21 | 无锡华润上华科技有限公司 | 用于建立半导体器件统计模型的数据处理方法 |
CN105989061A (zh) * | 2015-02-09 | 2016-10-05 | 中国科学院信息工程研究所 | 一种滑动窗口下多维数据重复检测快速索引方法 |
CN105989061B (zh) * | 2015-02-09 | 2019-11-26 | 中国科学院信息工程研究所 | 一种滑动窗口下多维数据重复检测快速索引方法 |
CN106528705A (zh) * | 2016-10-26 | 2017-03-22 | 桂林电子科技大学 | 一种基于rbf神经网络的重复记录检测方法和*** |
CN106484915A (zh) * | 2016-11-03 | 2017-03-08 | 国家电网公司信息通信分公司 | 一种海量数据的清洗方法和*** |
CN108268876A (zh) * | 2016-12-30 | 2018-07-10 | 广东精点数据科技股份有限公司 | 一种基于聚类的近似重复记录的检测方法及装置 |
CN109753496A (zh) * | 2018-11-27 | 2019-05-14 | 天聚地合(苏州)数据股份有限公司 | 一种用于大数据的数据清洗方法 |
CN111104398A (zh) * | 2019-12-17 | 2020-05-05 | 智慧航海(青岛)科技有限公司 | 针对智能船舶近似重复记录的检测方法、消除方法 |
CN111104398B (zh) * | 2019-12-17 | 2023-08-29 | 智慧航海(青岛)科技有限公司 | 针对智能船舶近似重复记录的检测方法、消除方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103336771B (zh) | 2016-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103336771A (zh) | 基于滑动窗口的数据相似检测方法 | |
CN102346829B (zh) | 基于集成分类的病毒检测方法 | |
CN106845717B (zh) | 一种基于多模型融合策略的能源效率评价方法 | |
CN104573130B (zh) | 基于群体计算的实体解析方法及装置 | |
CN102629305B (zh) | 一种面向snp数据的特征选择方法 | |
CN102929906B (zh) | 基于内容特征和主题特征的文本分组聚类方法 | |
CN107330477A (zh) | 一种针对非均衡数据分类的改进smote再抽样方法 | |
CN105389480A (zh) | 多类不平衡基因组学数据迭代集成特征选择方法及*** | |
CN106599230A (zh) | 一种分布式数据挖掘模型评估的方法与*** | |
CN102012915A (zh) | 一种文档共享平台的关键词推荐方法及*** | |
CN106326913A (zh) | 一种洗钱账户的确定方法及装置 | |
CN107145895A (zh) | 基于k‑means算法的公安犯罪类案研判方法 | |
CN107291895A (zh) | 一种快速的层次化文档查询方法 | |
CN104361109B (zh) | 确定图片筛选结果的方法和装置 | |
CN109635010A (zh) | 一种用户特征及特征因子抽取、查询方法和*** | |
CN106934410A (zh) | 数据的分类方法及*** | |
CN103761286B (zh) | 一种基于用户兴趣的服务资源检索方法 | |
CN109257383A (zh) | 一种bgp异常检测方法及*** | |
CN107577792A (zh) | 一种企业数据自动聚类的方法及其*** | |
CN103714154A (zh) | 一种确定最佳聚类数的方法 | |
CN107133335A (zh) | 一种基于分词与索引技术的重复记录检测方法 | |
CN109284409A (zh) | 基于大规模街景数据的图片组地理定位方法 | |
CN116226468B (zh) | 基于网格化终端业务数据存储管理方法 | |
Peng et al. | An integrated feature selection and classification scheme | |
CN104778202B (zh) | 基于关键词的事件演化过程的分析方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20161228 Termination date: 20170402 |
|
CF01 | Termination of patent right due to non-payment of annual fee |