一种重复数据的数据质量检测方法及装置的制造方法

xiaoxiao2021-2-28  205

一种重复数据的数据质量检测方法及装置的制造方法
【技术领域】
[0001] 本发明涉及数据质量监控技术领域,具体涉及一种重复数据的数据质量检测方法 及装置。
【背景技术】
[0002] 信息技术的快速发展使得数据逐渐成为实现企业业务价值最重要的资源之一。然 而随着数据量的不断增大,数据质量问题也随之而来。数据缺失、错误、不一致等问题使企 业对其的应用受到阻碍,严重的甚至会导致企业做出错误决策,损失重要价值进而引发信 任危机。
[0003] 针对这些脏数据,许多数据质量检测和清洗方案应运而生。而重复数据在其中则 是比较难以检测的一种数据质量问题。因为如今企业面对的数据重复问题不单单是数据完 全的重复,还包括部分重复。比如某个社交网站拥有数以千万的用户,但这些用户可能有重 复注册的情况,这些重复注册的用户可能只有某些信息出现了微小的差异。如何识别这些 重复的用户信息对于维护网站质量至关重要。
[0004]目前比较有代表性的数据重复检查方案有的根据每条记录的内容计算唯一的哈 希码和检查码,然后根据哈希码和检查码是否相同来判断数据是否重复,特点是准确性高、 效率高,但只适用于记录完全重复的情况;有的方案基于机器学习对重复检测模型进行训 练,特点是灵活性高,不把各种情景的重复检测限制在一种方法之下,但每两条数据都要计 算重复可能性,效率低,且准确性仍有待提升。
[0005] 鉴于上述缺陷,本发明创作者经过长时间的研究和试验终于提出了一种重复数据 的数据质量检测方法及装置。

【发明内容】

[0006] 本发明的目的在于提供一种重复数据的数据质量检测方法及装置,用以克服上述 技术缺陷,解决如何准确、快速检测到部分重复数据以及完全重复数据的问题。
[0007] 为实现上述目的,本发明采用的技术方案在于:首先提供一种重复数据的数据质 量检测方法,其包括:
[0008] 步骤b,对包含多条记录的训练样本的数据值进行分析,生成模型训练集;
[0009] 步骤c,分析所述模型训练集中的各个组合对,并通过人工或算法将所述组合对对 应的两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续则重新确定所 述训练样本并返回步骤b,否则进入步骤d;
[0010] 步骤d,计算一个或多个字段重复则记录重复的概率,并筛选出概率较大的字段组 合作为样本字段组合;
[0011] 步骤e,对待检测数据的值进行分析,输出每个字段的每个不同值对应的记录编 号;
[0012] 步骤f,根据所述样本字段组合对分析过的所述待检测数据进行重复检测,筛选出 所有重复字段满足所述样本字段组合的记录组合。
[0013] 较佳的,所述数据质量检测方法还包括:
[0014] 步骤a,从所述待检测数据源提取所述训练样本;所述步骤a在所述步骤b之前。
[0015] 较佳的,所述数据质量检测方法还包括:
[0016] 步骤g,输出保留的所述记录组合以及所述记录组合重复的概率,所述步骤g在所 述步骤f之后。
[0017] 较佳的,所述步骤b包括:
[0018] 步骤b2,对所述训练样本的数据值进行分析,统计每个字段的每个不同值对应的 所述记录编号;
[0019] 步骤b3,对每个字段的每个不同值对应的所述记录编号进行处理,生成所述模型 训练集。
[0020] 较佳的,所述步骤b3包括:
[0021] 步骤b31,统计字段一的对应两条记录的值,每个值对应的两条记录为一个所述组 合对,将该组合对记录并在字段一添加字段重复标记;
[0022] 步骤b32,统计字段一的对应三条或三条以上记录的值,每个值对应的记录两两组 合为一个所述组合对,将该组合对记录并在字段一添加所述字段重复标记;
[0023] 步骤b33,统计字段二的对应两条或两条以上记录的值,每个值对应的记录两两组 合为一个所述组合对,若该组合对与已记录的所述组合对相同,则在所述已记录的所述组 合对的字段二添加所述字段重复标记;若该组合对与已记录的所述组合对不同,则将该组 合对记录并在字段二添加所述字段重复标记;
[0024]步骤b34,按照步骤b33对其他字段进行处理,形成的所有所述组合对构成所述模 型训练集。
[0025]较佳的,所述步骤d包括:
[0026]步骤dl,以某一字段标记字段重复的所述组合对数目为除数,以该字段标记字段 重复的组合对中同时标记所述记录重复的数目为被除数,以商为该字段重复则记录重复的 概率,计算所述字段重复则记录重复的概率;
[0027]步骤d2,根据所述字段重复则记录重复的概率计算多个字段重复则记录重复的概 率;
[0028] 步骤d3,设置阈值,筛选记录重复概率大于等于该阈值的字段组合作为样本字段 组合。
[0029] 较佳的,所述多个字段重复则记录重复的概率的计算公式为:
[0031]式中,p(l,2,···,!〇为字段1,2,…,k重复则记录重复的概率;pi ji^pi^pik分别为 字段i、il、i2、ik重复则记录重复的概率;il、i2分别表示字段1,2,…,k中任意两个字段的 序号;ik表不字段k的序号。
[0032]较佳的,所述步骤f包括:
[0033] 步骤Π ,确定所述样本字段组合中各组合字段数目的最小值N;
[0034] 步骤f2,搜索所述待检测数据的两条记录中至少有N个字段相同的所述记录组合, 检测并保留在所述样本字段组合内的所述记录组合;
[0035] 步骤f3,在保留的所述记录组合内根据已知n-1条记录至少有N个字段相同的所述 记录组合,查找η条记录至少有N个字段相同的所述记录组合;查找不到则结束;
[0036] 步骤f4,检测并保留在所述样本字段组合内η条记录的所述记录组合,同时在n-1 条记录的所述记录组合中删除保留的所述η条记录的所述记录组合的所有有n-1条记录的 子集;返回步骤f 3。
[0037] 较佳的,所述步骤f3中,所述查找必须满足的条件为:
[0038] 所述η条记录的所述记录组合由所述n-Ι条记录的所述记录组合两两结合而成,该 两个所述n-Ι条记录的所述记录组合中有n-2条记录是相同的;
[0039] 新组合而成的所述η条记录的所述记录组合的每一个有n-Ι条记录的子集都在所 述n-Ι条记录至少有N个字段相同的所述记录组合中。
[0040] 其次提供一种与所述的数据质量检测方法对应的重复数据的数据质量检测装置, 其包括:
[0041]训练集生成单元,对包含多条记录的训练样本的数据值进行分析,生成模型训练 集;
[0042] 样本记录标重单元,分析所述模型训练集中的各个组合对,并通过人工或算法将 所述组合对对应的两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续 则重新确定所述训练样本并返回所述训练集生成单元,否则进入样本组合筛选单元;
[0043] 样本组合筛选单元,计算一个或多个字段重复则记录重复的概率,并筛选出概率 较大的字段组合作为样本字段组合;
[0044] 检测数据分析单元,对待检测数据的值进行分析,输出每个字段的每个不同值对 应的记录编号;
[0045] 检测数据筛选单元,根据所述样本字段组合对分析过的所述待检测数据进行重复 检测,筛选出所有重复字段满足所述样本字段组合的记录组合。
[0046] 与现有技术比较本发明的有益效果在于:提供了一种重复数据的数据质量检测方 法及装置,这样,相比一般重复检测方法记录两两之间都要进行检测的方式,本通过对字段 组合进行重复可能性的计算,将记录之间的检测转变为对应字段组合内相同记录组合的检 测,无需比较任意两条记录的重复可能性,缩短了时间,提高了检测效率;同时,该方法不限 于检测两条数据完全相同的情况,也可以检测两条数据部分相同的情况,通过对其重复的 概率的计算,根据阈值确定其是否重复;本方法中,数据质量分析者可自行定义两条记录是 否相同的判断条件;本方法可以通过训练样本的选择自动为不同字段添加权重,提供了一 定的灵活性;通过公式可以迅速计算出多字段重复则记录重复的概率,提高了判断速度,节 省了时间,提升了数据质量检测效率,且公式简单,节省了系统资源;生成模型训练集后,可 以将对记录的分析转换为对记录的相同字段的分析,提高后续处理速度;可以消除误差,提 高对重复数据判断的准确性;从待检测数据源提取训练样本,由于训练样本和待检测数据 同源,可以提高对重复数据的判定的准确度。
【附图说明】
[0047] 图1为本发明重复数据的数据质量检测方法的流程图;
[0048] 图2为本发明重复数据的数据质量检测方法中步骤b的流程图;
[0049] 图3为本发明重复数据的数据质量检测方法中步骤b3的流程图;
[0050] 图4为本发明重复数据的数据质量检测方法中步骤d的流程图;
[0051] 图5为本发明重复数据的数据质量检测方法概率计算示意图一;
[0052]图6为本发明重复数据的数据质量检测方法概率计算示意图二;
[0053]图7为本发明重复数据的数据质量检测方法中步骤e的流程图;
[0054]图8为本发明重复数据的数据质量检测方法中步骤f的流程图;
[0055] 图9为本发明重复数据的数据质量检测方法实施例一的流程图;
[0056] 图10为本发明重复数据的数据质量检测方法实施例二的流程图;
[0057] 图11为本发明重复数据的数据质量检测方法实施例三的流程图;
[0058] 图12为本发明重复数据的数据质量检测方法实例部分待检测数据表;
[0059] 图13为本发明重复数据的数据质量检测方法实例部分不同值对应记录编号表;
[0060] 图14为本发明重复数据的数据质量检测方法实例部分组合对字段重复标记表;
[0061] 图15为本发明重复数据的数据质量检测方法实例部分组合对记录重复标记表;
[0062] 图16为本发明重复数据的数据质量检测方法实例保留字段组合;
[0063] 图17为本发明重复数据的数据质量检测装置的结构图;
[0064] 图18为本发明重复数据的数据质量检测装置训练集生成单元的结构图;
[0065] 图19为本发明重复数据的数据质量检测装置记录编号处理模块的结构图;
[0066] 图20为本发明重复数据的数据质量检测装置样本组合筛选单元的结构图;
[0067] 图21为本发明重复数据的数据质量检测装置检测数据分析单元的结构图;
[0068] 图22为本发明重复数据的数据质量检测装置检测数据筛选单元的结构图;
[0069] 图23为本发明重复数据的数据质量检测装置实施例六的结构图;
[0070] 图24为本发明重复数据的数据质量检测装置实施例七的结构图;
[0071] 图25为本发明重复数据的数据质量检测装置实施例八的结构图。
【具体实施方式】
[0 072] 以下结合附图,对本发明上述的和另外的技术特征和优点作更详细的说明。
[0073] 如图1所示,其为本发明重复数据的数据质量检测方法的流程图;其中,所述重复 数据的数据质量检测方法包括:
[0074] 步骤b,对训练样本的数据值进行分析,生成模型训练集;
[0075] 训练样本中有多条记录,每条记录都有对应的编号,为记录编号;记录编号按顺序 排列,依次递增;每条记录都分为多个字段:字段1,字段2,字段3,字段4,···,这样相同字段 在每条记录中都有一个值,有多少条记录,则每个字段就有多少个值(这里的值有相同的, 也有不同的),且字段的值的编号与记录的编号对应;这里,字段1的第一个值与第一条记录 的字段1是同一个,其值自然相同。
[0076] 所述训练样本可以为数据分析员根据具体情况编写的,也可以从待检测数据中提 取的。
[0077]如图2所示,其为本发明重复数据的数据质量检测方法中步骤b的流程图;其中,所 述步骤b包括:
[0078] 步骤b2,对训练样本的数据值进行分析,统计每个字段的每个不同值对应的记录 编号;
[0079] 同一字段有多个值,这些值中有相同的,也有不同的;将相同的值进行合并,并添 加合并的记录编号,这样同一字段有多个不同值,每个值后面都标注有至少一个记录编号;
[0080] 根据上述方法统计所有字段,得出每个字段的每个不同值对应的记录编号。
[0081] 步骤b3,对每个字段的每个不同值对应的记录编号进行处理,生成模型训练集;
[0082] 所述模型训练集为任意两条有重复字段的记录及其重复字段的标记。上述统计的 每个字段的每个不同值对应的记录编号,若值对应的记录编号为两个,则此两条记录为一 组合对,且在组合对的该字段处添加字段重复标记;若值对应的记录编号为三个或三个以 上,则将此值对应的记录编号两两组合为一组合对,且在组合对的对应字段处添加字段重 复标记;将相同的组合对合并,合并的组合对的字段重复标记为合并前的字段重复标记的 之和,最终生成模型训练集。
[0083] 若值对应的记录编号为两个,则得到一个组合对;若值对应的记录编号为三个,则 三个记录两两组合得到三个组合对;若值对应的记录编号为四个,则四个记录两两组合得 到六个组合对;若值对应的记录编号为N个,则N个记录两两组合得到Cg个组合对。
[0084] 生成模型训练集后,可以将对记录的分析转换为对记录的相同字段的分析,提高 后续处理速度。
[0085] 如图3所示,其为本发明重复数据的数据质量检测方法中步骤b3的流程图;其中, 所述步骤b3具体步骤可以为:
[0086] 步骤b31,统计字段一的对应两条记录的值,每个值对应的两条记录为一组合对, 将该组合对记录并在字段一添加字段重复标记;
[0087] 步骤b32,统计字段一的对应三个或三个以上记录的值,每个值对应的记录两两组 合为一组合对,将该组合对记录并在字段一添加字段重复标记;
[0088] 步骤b33,统计字段二的对应两条或两条以上记录的值,每个值对应的记录两两组 合为一组合对,若该组合对与已记录的组合对相同,则在所述已记录的组合对的字段二添 加字段重复标记;若该组合对与已记录的组合对不同,则将该组合对记录并在字段二添加 字段重复标记;
[0089]步骤b34,按照步骤b33对其他字段进行处理,形成的所有组合对构成模型训练集。
[0090] 步骤b31_b34仅为生成模型训练集的其中一种方法,这种方法可以在快速生成模 型训练集的同时,避免遗漏或重复某个组合对。
[0091] 步骤c,分别所述模型训练集的各个组合对,并通过人工或算法将所述组合对对应 的两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续则重新确定所述 训练样本并返回步骤b,否则进入步骤d;
[0092] 模型训练集中的组合对分别对应两条记录,通过输出组合对,对比这两条记录的 实际数据,确认其是否相同,若相同则标记为记录重复,不相同则标记为记录不重复。这里 判断组合对对应的两条记录是否重复,可以由质量分析员通过观察两条记录的具体数据进 行判断,也可以根据算法计算两者相似度来确定。
[0093] 然后可以根据输出组合对的对比情况确定是否需要继续训练或重复训练,若需要 则重新确定所述训练样本并返回步骤b,然后确定新的所有组合对的两条记录是否重复,后 续分析时综合几次训练的结果,以提高判断的准确率;不需要则进行步骤d。
[0094] 步骤d,计算一个或多个字段重复则记录重复的概率,并筛选出概率较大的字段组 合作为样本字段组合;
[0095] 如图4所示,其为本发明重复数据的数据质量检测方法中步骤d的流程图;其中,所 述步骤d包括:
[0096] 步骤dl,以某一字段标记字段重复的组合对数目为除数,以该字段标记字段重复 的组合对中同时标记记录重复的数目为被除数,以商为该字段重复则记录重复的概率,计 算字段重复则记录重复的概率;
[0097] 首先计算所有被标记的组合对中各个字段重复的数目X以及各个字段重复的组合 对被标记为重复的数目y,计算每个字段对应的y/x值,解释为:该字段相同的记录重复的概 率。
[0098]模型训练集中的每个组合对都有多个字段,为字段一,字段二,字段三,字段 四,…,每个组合对都至少有一个字段重复。同时,每个字段都有多个组合对,其至少在一个 组合对中重复。
[0099] 每个组合对都对应两条记录;每个组合对都有一个记录重复标记或记录不重复标 记;这样,每个组合对至少有一个字段重复,且同时有一个记录重复标记或者记录不重复标 记。
[0100] 这样,每个字段都有多个在该字段标记为字段重复的组合对,而这些组合对中一 部分被标记为记录重复;后者除以前者,为该字段重复则记录重复的可能性(概率)。
[0101] 如所有的组合对中字段一重复的为X个,这X个组合对中被标记为记录重复的组合 对的数目为y个,则该字段重复则记录重复的概率为y/χ。
[0102] 步骤d2,根据字段重复则记录重复的概率计算多个字段重复则记录重复的概率;
[0103] 多个字段重复则记录重复的概率的计算公式为:
[0105] 式中,ρ(1,2,···,1〇为字段1,2,…,k重复则记录重复的概率,其意为若两条记录中 字段l,2,~,k重复,那么此两条记录重复的可能性为?(1,2,~,1〇;? 1、?11、?12、?11{分别为字 段i、il、i2、ik重复则记录重复的概率;il、i2分别表示字段1,2,…,k中任意两个字段的序 号;ik表不字段1,2,…,k中第k个字段的序号。
[0106] 公式的思路为:对要计算的概率的k个字段,从中取出一个,则有k种取法,每种取 法对应的数值为单个的概率p1;从中取出两个,则有(?个取法,每种取法对应的数值为两个 概率的乘积PliPl2;···;从中取出k个,则有(?个取法,每种取法对应的数值为k个概率的乘 积PiiPi2…Pik ;每种取法的多个值之和的系数由所取的字段数量决定,从中取出奇数个,则 系数为+1;从中取出偶数个,则系数为-1;这样将这些带有系数的和相加,得到最终的k个字 段重复则记录重复的概率。
[0107] 当k为2时,
[0108] p(l ,2) =ρι+ρ2~ριρ2
[0109] 如图5所示,其为本发明重复数据的数据质量检测方法概率计算示意图一;其中, P1P2为圆pi、P2|3tl重复区域,需要减去,才得到总面积p( 1,2)。
[0110] 当 k为3时,PW2P3
[0111] p( 1,2,3) =P1+P2+P3-P1P2-P1P3-P2P3+P1P2P3
[0112] 如图6所示,其为本发明重复数据的数据质量检测方法概率计算示意图二;其中, P1P2为圆P1、P2的重复区域,P1P3为圆P1、P3的重复区域,P2P3为圆P2、P3的重复区域,需要减去; P1P2P3为圆P1、P2、P3的重复区域,已经多次减去,需要加上,才得到总面积P( 1,2,3)。
[0113] 有益效果:这样,通过公式可以迅速计算出多字段重复则记录重复的概率,提高了 判断速度,节省了时间,提升了数据质量检测效率,且公式简单,节省了系统资源。
[0114] 步骤d3,设置阈值,筛选记录重复概率大于等于该阈值的字段组合作为样本字段 组合。
[0115] 对步骤d2中计算得到的多个字段重复则记录重复的概率,需要设定一个阈值对其 进行筛选,阈值可以由人工根据实际情况确定,也可以由计算装置经过严密计算后确定或 经过大量数据统计对比后得出。
[0116]阈值的大小与本发明对重复数据的数据质量检测的准确度有关,阈值越大,本发 明的数据质量检测的准确度就越高。
[0117] 假设待检测数据有η个字段,则其中l〈k< η。设置阈值后,保留重复可能性大于该 阈值的字段组合。这些被保留的字段组合作为样本字段组合用于后续重复检测。
[0118] 通过公式,将对不同记录的重复判断转换为对重复的概率的计算,从而避免了对 记录的两两重复分别判断,只需要通过对符合规则的组合对进行概率计算,大大提高了判 断的效率。
[0119] 步骤e,对待检测数据的值进行分析,输出每个字段的每个不同值对应的记录编 号;
[0120] 此步骤与步骤b相似,不同之处仅在于步骤b处理的为训练样本,本步骤处理的为 待检测数据。
[0121] 待检测数据中有多条记录,每条记录都有对应的编号,为记录编号;记录编号按顺 序排列,依次递增;每条记录都分为多个字段:字段1,字段2,字段3,字段4,···,这样相同字 段在每条记录中都有一个值,有多少条记录,则每个字段就有多少个值(这里的值有相同 的,也有不同的),且字段的值的编号与记录的编号对应;这里,字段1的第一个值与第一条 记录的字段1是同一个,其值自然相同。
[0122] 如图7所示,其为本发明重复数据的数据质量检测方法中步骤e的流程图;其中,所 述步骤e包括:
[0123] 步骤el,对待检测数据的同一字段中的值计算相似度,并将相似度达到或超过阈 值的相似值作为相同值;
[0124] 在这里对各字段中的某些非常相近的值采用某种算法计算相似度,并由数据质量 分析员定义阈值确定相似度达到何种水平时将这些值作为相同值处理。
[0125] 计算相似度的算法为Levenshtein算法,最长公共子序列算法等算法,具体算法可 以根据实际需要进行选择。
[0126] 步骤e2,对待检测数据的数据值进行分析,统计每个字段的每个不同值对应的记 录编号;
[0127] 同一字段有多个值,这些值中有相同的,也有不同的;将相同的值进行合并,并添 加合并的记录编号,这样同一字段有多个不同值,每个值后面都标注有至少一个记录编号;
[0128] 根据上述方法统计所有字段,得出每个字段的每个不同值对应的记录编号。
[0129] 步骤f,根据所述样本字段组合对分析过的所述待 检测数据进行重复检测,筛选出 所有重复字段满足所述样本字段组合的记录组合;
[0130] 本步骤进行重复检测。首先根据步骤d的分析结果检测两条记录的重复字段是否 满足所述的样本字段组合,然后根据得到的满足条件的两条记录组合生成三条记录组合, 继续检测三条记录的重复字段是否满足重述的样本字段组合。重复上述过程直到找不到满 足述的样本字段组合的记录组合。
[0131] 这样,相比一般重复检测方法记录两两之间都要进行检测的方式,本方法通过对 字段组合进行重复可能性的计算,将记录之间的检测转变为对应字段组合内相同记录组合 的检测,无需比较任意两条记录的重复可能性,缩短了时间,提高了检测效率;同时,该方法 不限于检测两条数据完全相同的情况,也可以检测两条数据部分相同的情况,通过对其重 复的概率的计算,根据阈值确定其是否重复;本方法中,数据质量分析者可自行定义两条记 录是否相同的判断条件。
[0132] 另外,本方法可以通过训练样本的选择自动为不同字段添加权重,提供了一定的 灵活性。
[0133] 如图8所示,其为本发明重复数据的数据质量检测方法中步骤f的流程图;其中,所 述步骤f包括:
[0134] 步骤Π ,确定所述样本字段组合中各组合字段数目的最小值N;
[0135] -般情况下,有重复字段的记录组合的数目会随着重复字段数目的增加而减少, 因此需要确定所述样本字段组合中各组合字段数目的最小值N,这样就不需要再搜索重复 字段小于N的记录组合,减少了需要搜索的记录组合的数目,提高了搜索效率。
[0136] 例如,样本字段组合中最少都有4个字段重复的话,则只需要搜索至少有4个字段 重复的记录组合,这样就提高了搜索效率。
[0137] 步骤f2,搜索所述待检测数据的两条记录中至少有N个字段相同的记录组合,检测 并保留在所述样本字段组合内的所述记录组合;
[0138] 所述样本字段组合中各组合字段数目的最小值N,在所述待检测数据的记录组合 中,若记录组合的相同字段数目小于N,则此记录组合一定不在样本字段组合中,因此只搜 索至少有N个字段相同的记录组合,可以减少搜索时间,提高搜索效率。
[0139] 步骤f3,在保留的所述记录组合内根据已知n-Ι条记录至少有N个字段相同的所述 记录组合,查找η条记录至少有N个字段相同的所述记录组合;查找不到则结束;
[0140] 本步骤中,根据已知n-Ι条记录至少有Ν个字段相同的所述记录组合,查找η条记录 至少有Ν个字段相同的所述记录组合,其中必须满足的条件为:
[0141] 1)η条记录组合由n-Ι条记录组合两两结合而成,这两个n-Ι条记录组合中有η-2条 记录是相同的;
[0142] 2)新组合而成的η条记录组合的每一个有n-Ι条记录的子集都在n-Ι条记录至少有 Ν个字段相同的所述记录组合中。
[0143] 这些条件中,条件1)是说η条记录组合是必须由两个包含n-Ι条记录且η-2条记录 相同的组合结合成的,比如说4条记录组合必须是有两个3条记录的组合结合成的,且这两 个3条记录中有2条记录是相同的,这样结合而成的组合中才有4条记录。
[0144] 条件2)是说组合成的η条记录组合有Cr1个有n-1条记录的子集,每一个子集都 可以在之前的n-1条记录的记录组合中找到,也就是说只有在n-1条记录的记录组合中存在 η条记录组合的Cf1个有n-1条记录的子集,才认为可以组成η条记录组合,比如说4条记录 组合(1,2,3,4)有 4个 3 条记录组合的子集((1,2,3),(1,2,4),(1,3,4),(2,3,4)),这4个3条 记录组合都可以在之前的3条记录的组合中找到。
[0145] 3条记录的记录组合中都是至少有Ν个字段相同的记录组合,由其结合而成的4条 记录的记录组合才可能至少有Ν个字段相同;如果4条记录的记录组合(例如1,2,3,4)的其 中一个子集(例如1,2,3)只有Ν-1个字段相同(即不在3条记录至少有Ν个字段相同的记录组 合中),那么此4条记录的记录组合(1,2,3,4)就不可能有Ν个字段相同,最多也就有Ν-1个字 段相同,而且这Ν-1个字段肯定就是子集(1,2,3)的Ν-1个相同字段。因此条件2)是必须成立 的。
[0146] 只有条件1)和条件2)同时成立的情况下,才是需要查找η条记录至少有Ν个字段相 同的所述记录组合。
[0147] 步骤f4,检测并保留在所述样本字段组合内η条记录的所述记录组合,同时在η-1 条记录的所述记录组合中删除保留的η条记录的所述记录组合的所有有η-1条记录的子集; 返回步骤f3。
[0148] 检测步骤f3中查找到的η条记录的所述记录组合,若其相同字段的字段组合在所 述样本字段组合内,则表示这η条记录相同,保留此记录组合;若不在所述样本字段组合内, 则表示这η条记录不相同,删除此记录组合。
[0149] 另外,η条记录的记录组合相同,与其个有η-1条记录的子集中每个子集的η-1条记录都相同,其所表示的含义均相同,均为:这η条记录重复。表达相同含义的只需要保 留一个即可,也即是.qr1个有η-1条记录的记录组合共同结合成了一个有η条记录的记录 组合;因此在保留η条记录的所述记录组合的情况下,需要删除其对应的Cnn^个有η-1条记 录的记录组合。
[0150] 例如,4条记录的组合(1,2,3,4)中相同字段在所述样本字段组合内,则保留组合 (1,2,3,4),并删除其对应的3条记录的4个组合(1,2,3),(1,2,4),(1,3,4),(2,3,4)。
[0151] 通过步骤fl_f4,可以通过逐步计算统计所有可能的字段组合,避免对记录可能的 遗漏。
[0152] 实施例一
[0153] 如上述所述的重复数据的数据质量检测方法,本实施例与其不同之处在于,如图9 本发明重复数据的数据质量检测方法实施例一的流程图所示;所述的数据质量检测方法还 包括:
[0154] 步骤g,输出保留的所述记录组合以及所述记录组合重复的概率,所述步骤g在所 述步骤f之后。
[0155] 本步骤中的输出可以采用不同形式,可以以可视化形式展现,也可以输出检测结 果便于合并记录;其可以输出保留的所有的所述记录组合以及所述记录组合重复的概率, 也可以输出保留的部分的所述记录组合以及所述记录组合重复的概率。
[0156] 实施例二
[0157] 如上述所述的重复数据的数据质量检测方法,本实施例与其不同之处在于,如图 10本发明重复数据的数据质量检测方法实施例二的流程图所示;所述的步骤b还包括:
[0158] 步骤bl,对训练样本的同一字段中的值计算相似度,并将相似度达到或超过阈值 的相似值作为相同值,所述步骤bl在所述步骤b2之前。
[0159] 在这里对各字段中的某些非常相近的值采用某种算法计算相似度,并由数据质量 分析员定义阈值确定相似度达到何种水平时将这些值作为相同值处理。
[0160] 计算相似度的算法为Levenshtein算法,最长公共子序列算法等算法,具体算法可 以根据实际需要进行选择。
[0161] 训练样本中的数据可能会因为误差发生细微的变化,这就使得两条记录的同一个 字段的值很相似但不相同,本步骤的添加可以消除此种误差,提高对重复数据判断的准确 性。
[0162] 实施例三
[0163] 如上述所述的重复数据的数据质量检测方法,本实施例与其不同之处在于,如图 11本发明重复数据的数据质量检测方法实施例三的流程图所示;所述的数据质量检测方法 还包括:
[0164]步骤a,从待检测数据源提取训练样本;所述步骤a在所述步骤b之前;
[0165] 带检测数据源中有多条记录,每条记录都有对应的编号,为记录编号;记录编号按 顺序排列,依次递增;每条记录都分为多个字段:字段1,字段2,字段3,字段4,···,这样相同 字段在每条记录中都有一个值,有多少条记录,则每个字段就有多少个值(这里的值有相同 的,也有不同的),且字段的值的编号与记录的编号对应;这里,字段1的第一个值与第一条 记录的字段1是同一个,其值自然相同。
[0166] 提取的记录数目可以由数据质量分析员自己确定,也可以根据实际需要确定。
[0167] 从待检测数据源提取训练样本,由于训练样本和待检测数据同源,可以提高对重 复数据的判定的准确度。
[0168] 实施例四
[0169] 如上述所述的重复数据的数据质量检测方法,本实施例为其对具体数据的质量检 测实例,具体为:
[0170] S1:该实例部分待检测数据如图12。从待检测数据源提取训练样本,所述样本包含 的记录数由数据质量分析员事先定义,假设为1000。
[0171] S2:对训练样本的数据值进行分析,输出每个字段的每个不同值对应的记录编号, 部分结果如图13所不。
[0172] S2.1:其中字段中的某些值可能非常相近,只是有个别字符不一致,如Col 1中的 laaaa和laaab。可以采取某种方法计算出这些值的相似度,由数据质量分析员设定阈值来 判断这些值是否相同,这里假设laaaa和laaab被判定为相同。
[0173] S2.2:对上述结果进行分析,从每个拥有记录数为2或2以上的值输出组合对,部分 结果如图14所示。该过程具体如下:
[0174] S2 · 2 · 1: Col 1中,laaaa/laaab,lbbbb,leeee三个值有2条记录,可以形成3个组合 对(1,2)、(3,5)和(6,7)。每个组合对为一条记录,并将0)11重复标记置为1,其余标记置为 0〇
[0175] S2.2.2:Col2中,2aaaa和2eeee可以形成两个组合对(1,2)和(6,7),这两个组合对 已经在先前形成的组合对中,则将已经形成的组合对的C 〇12重复标记置为1,表明这些组合 对在Col2重复。2bbbb可以形成三个组合对(3,4),(3,5)和(4,5),其中(3,5)已经在先前形 成的组合对中,处理方式如前。(3,4)和(4,5)是新产生的组合对,形成新的纪录,并将C 〇12 重复标记置为1,其余标记置为0。
[0176] S2.2.3:Col3~Col5如上述方式处理。形成的所有组合对构成重复模型训练集。
[0177] S3:对上述训练集随机输出,同时数据质量分析员开始模型训练过程。具体训练方 法为:每次输出一定数目的组合对及其对应数据,数据质量分析员根据组合对记录的内容 对这些组合对进行标记,即重复或不重复。
[0178] S4:当完成对输出的组合对的标记后,数据质量分析员可以选择是否继续训练模 型。如选是将回到S1重复上述过程,如选否则进行如下过程。
[0179] S5:对几次模型训练标记的组合对进行处理。假设标记过的部分组合对如图15所 示。其中是否重复表示该组合对最终是否被标记为重复记录,其余字段与图14含义相同。
[0180] S5.1:首先计算所有被标记的组合对中各个字段重复的数目X以及各个字段重复 的组合对被标记为重复的数目y。如图15中Co 1 1重复的组合对数目为3,被标记为重复的也 为3Χ〇14重复的组合对数目为7,被标记为重复的为3,依次类推。计算每个字段对应的y/x 值,解释为:字段k相同的记录重复的可能性有多大。假设经过计算最终Coll~C〇15对应的 y/x值依次为〇.4、0.4、0.4、0.3、0.3(因为图中的数据只是训练样本数据中的一部分,因此 无法通过图中的数据计算出准确的值,只能假设以保证后续步骤的顺利进行,不过这样会 使得最后的结果与正确结果相差很大)。
[0181 ] S5.2:数据质量分析员设定阈值,定义记录重复的可能性为多大时判断该记录为 重复记录,假定这个阈值为0.75。接着计算有k个字段相同的记录是同一记录的可能性有多 大,并将这个值与所述阈值比较,高于该阈值的字段组合被留下,如图16所示。
[0182] 以上为重复模型训练过程,接下来利用训练好的模型进行重复检测。
[0183] S6:接收待检测数据和最终留下的字段组合。然后对待检测数据值进行分析,输出 每个字段的每个不同值对应的记录编号,部分结果如图13所示。其中字段中的某些值可能 非常相近,只是有个别字符不一致,如Coll中的laaaa和laaab。可以采取某种方法计算出这 些值的相似度,由数据质量分析员设定阈值来判断这些值是否相同,这里假设laaaa和 laaab被判定为相同。
[0184] S7:进行重复检测。具体过程如下:
[0185] S7.1:由于最终留下的字段组合至少有三个字段,因此最后检测出的重复记录也 至少要有三个字段内容相同。首先搜索两条记录至少有三个字段相同的组合。结果为{(1, 2),3},{(3,5),4},{(6,7),5},{(3,4),4},{(4,5),3},其中小括号外花括号内的数字表示 有几个字段重复。
[0186] S7.2:检测以上记录组合中相同字段组合是否在重复判定条件生成单元14最终留 下的字段组合内,如果不在则删除该记录组合,则K4,5),3}被删除。
[0187] S7.3:在剩余记录组合内查找η条记录至少有三个字段相同的组合,已知前一步n-1条记录至少有三个字段相同的组合。然后检查这些新组合是否至少有三个字段相同。
[0188] S7.4:检测以上η条记录组合中相同字段组合是否在最终留下的字段组合内,如果 不在则删除该记录组合。如果在,不仅要保留该组合,还要在前一步η-1条记录至少有三个 字段相同的组合中删除该组合每一个有η-1条记录的子集。
[0189] S7.5:当检查不到η条记录至少有三个字段相同的组合时,检测过程结束,否则回 至 IJS7.3。
[0190] 在本实施例中,检测步骤终止在S7.2。
[0191] S8:输出检测结果,可以以可视化形式展现,也可以输出检测结果便于合并记录。
[0192] S8.1:可以输出S7步骤保留的所有3条以上记录至少有三个字段相同的组合以及 这些组合可能是重复记录的概率,以及组合中的记录两两之间可能重复的概率。
[0193] S8.2:可以输出S8.1没有输出的S7步骤保留的2条记录至少有三个字段相同的组 合,及这些组合可能是重复记录的概率。
[0194] 如本实施例将输出(1,2),(3,5),(6,7),(3,4)组合对的记录内容(这个结果是通 过中间数据的假设来实现的,因此这个结果和实际应该的结果相差很大),以及这些记录重 复的可能性。
[0195] 实施例五
[0196] 如上述所述的重复数据的数据质量检测方法,本实施例为与其对应的重复数据的 数据质量检测装置。
[0197] 如图17所示,其为本发明重复数据的数据质量检测装置的结构图;其中,所述重复 数据的数据质量检测装置包括:
[0198] 训练集生成单元2,对训练样本的数据值进行分析,生成模型训练集;
[0199] 如图18所示,其为本发明重复数据的数据质量检测装置训练集生成单元的结构 图;其中,所述训练集生成单元2包括:
[0200] 记录编号统计模块22,对训练样本的数据值进行分析,统计每个字段的每个不同 值对应的记录编号;
[0201] 记录编号处理模块23,对每个字段的每个不同值对应的记录编号进行处理,生成 丰吴型训练集
[0202] 生成模型训练集,可以将对记录的分析转换为对记录的相同字段的分析,提高后 续处理速度。
[0203] 如图19所示,其为本发明重复数据的数据质量检测装置记录编号处理模块的结构 图;其中,所述记录编号处理模块23包括:
[0204] 字段一双值标重子模块231,统计字段一的对应两条记录的值,每个值对应的两条 记录为一组合对,将该组合对记录并在字段一添加字段重复标记;
[0205]字段一多值标重子模块232,统计字段一的对应三个或三个以上记录的值,每个值 对应的记录两两组合为一组合对,将该组合对记录并在字段一添加字段重复标记;
[0206]字段二标重子模块233,统计字段二的对应两条或两条以上记录的值,每个值对应 的记录两两组合为一组合对,若该组合对与已记录的组合对相同,则在所述已记录的组合 对的字段二添加字段重复标记;若该组合对与已记录的组合对不同,则将该组合对记录并 在字段二添加字段重复标记;
[0207] 多字段标重子模块234,按照字段二标重子模块233对其他字段进行处理,形成的 所有组合对构成模型训练集。
[0208] 字段一双值标重子模块231_b34仅为生成模型训练集的其中一种装置,这种装置 可以在快速生成模型训练集的同时,避免遗漏或重复某个组合对。
[0209] 样本记录标重单元3,分析所述模型训练集的各个组合对,并通过人工或算法将所 述组合对对应的两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续则 重新确定所述训练样本并返回训练集生成单元2,否则进入样本组合筛选单元4。
[0210] 模型训练集中的组合对分别对应两条记录,通过输出组合对,对比这两条记录的 实际数据,确认其是否相同,若相同则标记为记录重复,不相同则标记为记录不重复。这里 判断组合对对应的两条记录是否重复,可以由质量分析员通过观察两条记录的具体数据进 行判断,也可以根据算法计算两者相似度来确定。
[0211] 然后可以根据输出组合对的对比情况确定是否需要继续训练或重复训练,若需要 则重新确定所述训练样本并返回训练集生成单元2,然后确定新的所有组合对的两条记录 是否重复,后续分析时综合几次训练的结果,以提高判断的准确率;不需要则进行样本组合 筛选单元4。
[0212] 样本组合筛选单元4,计算一个或多个字段重复则记录重复的概率,并筛选出概率 较大的字段组合作为样本字段组合;
[0213] 如图20所示,其为本发明重复数据的数据质量检测装置样本组合筛选单元的结构 图;其中,所述样本组合筛选单元4包括:
[0214] 单字段重复计算模块41,以某一字段标记字段重复的组合对数目为除数,以该字 段标记字段重复的组合对中同时标记记录重复的数目为被除数,以商为该字段重复则记录 重复的概率,计算字段重复则记录重复的概率;
[0215] 首先计算所有被标记的组合对中各个字段重复的数目X以及各个字段重复的组合 对被标记为重复的数目y,计算每个字段对应的y/x值,解释为:该字段相同的记录重复的概 率。
[0216] 多字段重复计算模块42,根据字段重复则记录重复的概率计算多个字段重复则记 录重复的概率;
[0217] 多个字段重复则记录重复的概率的计算公式为:
[0219] 式中,ρ(1,2,···,1〇为字段1,2,…,k重复则记录重复的概率,其意为若两条记录中 字段l,2,~,k重复,那么此两条记录重复的可能性为?(1,2,~,1〇;? 1、?11、?12、?11{分别为字 段i、il、i2、ik重复则记录重复的概率;il、i2分别表示字段1,2,…,k中任意两个字段的序 号;ik表示字段1,2,…,k中第k个字段的序号,即为字段k的序号。
[0220] 公式的思路为:对要计算的概率的k个字段,从中取出一个,则有k种取法,每种取 法对应的数值为单个的概率Pi;从中取出两个,则有(?个取法,每种取法对应的数值为两 个概率的乘积PiiPi2;…;从中取出k个,则有<^个取法,每种取法对应的数值为k个概率的乘 积PiiPi2 ··· Pik ;每种取法的多个值之和的系数由所取的字段数量决定,从中取出奇数个,则 系数为+1;从中取出偶数个,则系数为-1;这样将这些带有系数的和相加,得到最终的k个字 段重复则记录重复的概率。
[0221] 有益效果:这样,通过公式可以迅速计算出多字段重复则记录重复的概率,提高了 判断速度,节省了时间,提升了数据质量检测效率,且公式简单,节省了系统资源。
[0222] 阈值筛选组合模块43,设置阈值,筛选记录重复概率大于等于该阈值的字段组合 作为样本字段组合。
[0223] 对多字段重复计算模块42中计算得到的多个字段重复则记录重复的概率,需要设 定一个阈值对其进行筛选,阈值可以由人工根据实际情况确定,也可以由计算装置经过严 密计算后确定或经过大量数据统计对比后得出。
[0224]阈值的大小与本发明对重复数据的数据质量检测的准确度有关,阈值越大,本发 明的数据质量检测的准确度就越高。
[0225] 通过公式,将对不同记录的重复判断转换为对重复的概率的计算,从而避免了对 记录的两两重复分别判断,只需要通过对符合规则的组合对进行概率计算,大大提高了判 断的效率。
[0226] 检测数据分析单元5,对待检测数据的值进行分析,输出每个字段的每个不同值对 应的记录编号;
[0227] 此单元与训练集生成单元2相似,不同之处仅在于训练集生成单元2处理的为训练 样本,本单元处理的为待检测数据。
[0228] 如图21所示,其为本发明重复数据的数据质量检测装置检测数据分析单元的结构 图;其中,所述检测数据分析单元5包括:
[0229] 数据相似度计算模块51,对待检测数据的同一字段中的值计算相似度,并将相似 度达到或超过阈值的相似值作为相同值。
[0230] 数据记录统计模块52,对待检测数据的数据值进行分析,统计每个字段的每个不 同值对应的记录编号;
[0231] 检测数据筛选单元6,根据所述样本字段组合对分析过的所述待检测数据进行重 复检测,筛选出所有重复字段满足所述样本字段组合的记录组合;
[0232] 本单元进行重复检测。首先根据样本组合筛选单元4的分析结果检测两条记录的 重复字段是否满足所述的样本字段组合,然后根据得到的满足条件的两条记录组合生成三 条记录组合,继续检测三条记录的重复字段是否满足重述的样本字段组合。重复上述过程 直到找不到满足述的样本字段组合的记录组合。
[0233] 这样,相比一般重复检测记录两两之间都要进行检测的方式,本装置通过对字段 组合进行重复可能性的计算,将记录之间的检测转变为对应字段组合内相同记录组合的检 测,无需比较任意两条记录的重复可能性,缩短了时间, 提高了检测效率;同时,该装置不限 于检测两条数据完全相同的情况,也可以检测两条数据部分相同的情况,通过对其重复的 概率的计算,根据阈值确定其是否重复;本装置中,数据质量分析者可自行定义两条记录是 否相同的判断条件。
[0234] 另外,本装置可以通过训练样本的选择自动为不同字段添加权重,提供了一定的 灵活性。
[0235] 如图22所示,其为本发明重复数据的数据质量检测装置检测数据筛选单元的结构 图;其中,所述检测数据筛选单元6包括:
[0236] 字段数目确认模块61,确定所述样本字段组合中各组合字段数目的最小值N;
[0237] -般情况下,有重复字段的记录组合的数目会随着重复字段数目的增加而减少, 因此需要确定所述样本字段组合中各组合字段数目的最小值N,这样就不需要再搜索重复 字段小于N的记录组合,减少了需要搜索的记录组合的数目,提高了搜索效率。
[0238] 例如,样本字段组合中最少都有4个字段重复的话,则只需要搜索至少有4个字段 重复的记录组合,这样就提高了搜索效率。
[0239] 双记录组合检测模块62,搜索所述待检测数据的两条记录中至少有N个字段相同 的记录组合,检测并保留在所述样本字段组合内的所述记录组合;
[0240] 所述样本字段组合中各组合字段数目的最小值N,在所述待检测数据的记录组合 中,若记录组合的相同字段数目小于N,则此记录组合一定不在样本字段组合中,因此只搜 索至少有N个字段相同的记录组合,可以减少搜索时间,提高搜索效率。
[0241] 多记录组合查找模块63,在保留的所述记录组合内根据已知n-Ι条记录至少有N个 字段相同的所述记录组合,查找η条记录至少有N个字段相同的所述记录组合;查找不到则 结束;
[0242] 本模块中,根据已知n-Ι条记录至少有Ν个字段相同的所述记录组合,查找η条记录 至少有Ν个字段相同的所述记录组合,其中必须满足的条件为:
[0243] 1)η条记录组合由n-Ι条记录组合两两结合而成,这两个n-Ι条记录组合中有η-2条 记录是相同的;
[0244] 2)新组合而成的η条记录组合的每一个有n-Ι条记录的子集都在n-Ι条记录至少有 Ν个字段相同的所述记录组合中。
[0245] 多记录组合检测模块64,检测并保留在所述样本字段组合内η条记录的所述记录 组合,同时在n-Ι条记录的所述记录组合中删除保留的η条记录的所述记录组合的所有有η-1条记录的子集;返回多记录组合查找模块63。
[0246] 通过字段数目确认模块61_f4,可以通过逐步计算统计所有可能的字段组合,避免 对记录可能的遗漏。
[0247] 实施例六
[0248] 如上述所述的重复数据的数据质量检测装置,本实施例与其不同之处在于,如图 23本发明重复数据的数据质量检测装置实施例六的结构图所示;所述的数据质量检测装置 还包括:
[0249] 检测结果输出单元7,输出保留的所述记录组合以及所述记录组合重复的概率,所 述检测结果输出单元7在所述检测数据筛选单元6之后。
[0250] 本单元中的输出可以采用不同形式,可以以可视化形式展现,也可以输出检测结 果便于合并记录;其可以输出保留的所有的所述记录组合以及所述记录组合重复的概率, 也可以输出保留的部分的所述记录组合以及所述记录组合重复的概率。
[0251] 实施例七
[0252] 如上述所述的重复数据的数据质量检测装置,本实施例与其不同之处在于,如图 24本发明重复数据的数据质量检测装置实施例七的结构图所示;所述的训练集生成单元2 还包括:
[0253] 样本相似度计算模块21,对训练样本的同一字段中的值计算相似度,并将相似度 达到或超过阈值的相似值作为相同值,所述样本相似度计算模块21在所述记录编号统计模 块22之前。
[0254] 训练样本中的数据可能会因为误差发生细微的变化,这就使得两条记录的同一个 字段的值很相似但不相同,本单元的添加可以消除此种误差,提高对重复数据判断的准确 性。
[0255] 实施例八
[0256] 如上述所述的重复数据的数据质量检测装置,本实施例与其不同之处在于,如图 25本发明重复数据的数据质量检测装置实施例八的结构图所示;所述的数据质量检测装置 还包括:
[0257] 训练样本提取单元1,从待检测数据源提取训练样本;
[0258] 从待检测数据源提取训练样本,由于训练样本和待检测数据同源,可以提高对重 复数据的判定的准确度。
[0259] 以上所述仅为本发明的较佳实施例,对本发明而言仅仅是说明性的,而非限制性 的。本专业技术人员理解,在本发明权利要求所限定的精神和范围内可对其进行许多改变, 修改,甚至等效,但都将落入本发明的保护范围内。
【主权项】
1. 一种重复数据的数据质量检测方法,其特征在于,包括: 步骤b,对包含多条记录的训练样本的数据值进行分析,生成模型训练集; 步骤C,分析所述模型训练集中的各个组合对,并通过人工或算法将所述组合对对应的 两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续则重新确定所述训 练样本并返回步骤b,否则进入步骤d; 步骤d,计算一个或多个字段重复则记录重复的概率,并筛选出概率较大的字段组合作 为样本字段组合; 步骤e,对待检测数据的值进行分析,输出每个字段的每个不同值对应的记录编号; 步骤f,根据所述样本字段组合对分析过的所述待检测数据进行重复检测,筛选出所有 重复字段满足所述样本字段组合的记录组合。2. 根据权利要求1所述的数据质量检测方法,其特征在于,所述数据质量检测方法还包 括: 步骤a,从所述待检测数据源提取所述训练样本;所述步骤a在所述步骤b之前。3. 根据权利要求2所述的数据质量检测方法,其特征在于,所述数据质量检测方法还包 括: 步骤g,输出保留的所述记录组合以及所述记录组合重复的概率,所述步骤g在所述步 骤f之后。4. 根据权利要求1或2或3所述的数据质量检测方法,其特征在于,所述步骤b包括: 步骤b2,对所述训练样本的数据值进行分析,统计每个字段的每个不同值对应的所述 记录编号; 步骤b3,对每个字段的每个不同值对应的所述记录编号进行处理,生成所述模型训练 集。5. 根据权利要求4所述的数据质量检测方法,其特征在于,所述步骤b3包括: 步骤b31,统计字段一的对应两条记录的值,每个值对应的两条记录为一个所述组合 对,将该组合对记录并在字段一添加字段重复标记; 步骤b32,统计字段一的对应三条或三条以上记录的值,每个值对应的记录两两组合为 一个所述组合对,将该组合对记录并在字段一添加所述字段重复标记; 步骤b33,统计字段二的对应两条或两条以上记录的值,每个值对应的记录两两组合为 一个所述组合对,若该组合对与已记录的所述组合对相同,则在所述已记录的所述组合对 的字段二添加所述字段重复标记;若该组合对与已记录的所述组合对不同,则将该组合对 记录并在字段二添加所述字段重复标记; 步骤b34,按照步骤b33对其他字段进行处理,形成的所有所述组合对构成所述模型训 练集。6. 根据权利要求1或2或3所述的数据质量检测方法,其特征在于,所述步骤d包括: 步骤dl,以某一字段标记字段重复的所述组合对数目为除数,以该字段标记字段重复 的组合对中同时标记所述记录重复的数目为被除数,以商为该字段重复则记录重复的概 率,计算所述字段重复则记录重复的概率; 步骤d2,根据所述字段重复则记录重复的概率计算多个字段重复则记录重复的概率; 步骤d3,设置阈值,筛选记录重复概率大于等于该阈值的字段组合作为样本字段组合。7. 根据权利要求6所述的数据质量检测方法,其特征在于,所述多个字段重复则记录重 复的概率的计算公式为:式中,p(l,2,"_,k)为字段1,2,…,k重复则记录重复的概率;Pl、Pll、p l2、plk分别为字段 i、il、i2、ik重复则记录重复的概率;il、i2分别表示字段1,2,…,k中任意两个字段的序号; ik表不字段k的序号。8. 根据权利要求1或2或3所述的数据质量检测方法,其特征在于, 所述步骤f包括:步骤Π,确定所述样本字段组合中各组合字段数目的最小值N; 步骤f2,搜索所述待检测数据的两条记录中至少有N个字段相同的所述记录组合,检测 并保留在所述样本字段组合内的所述记录组合; 步骤f3,在保留的所述记录组合内根据已知n-1条记录至少有N个字段相同的所述记录 组合,查找η条记录至少有N个字段相同的所述记录组合;查找不到则结束; 步骤f4,检测并保留在所述样本字段组合内η条记录的所述记录组合,同时在n-1条记 录的所述记录组合中删除保留的所述η条记录的所述记录组合的所有有n-1条记录的子集; 返回步骤f3。9. 根据权利要求8所述的数据质量检测方法,其特征在于,所述步骤f3中,所述查找必 须满足的条件为: 所述η条记录的所述记录组合由所述n-1条记录的所述记录组合两两结合而成,该两个 所述n-1条记录的所述记录组合中有n-2条记录是相同的; 新组合而成的所述η条记录的所述记录组合的每一个有n-1条记录的子集都在所述n-1 条记录至少有N个字段相同的所述记录组合中。10. -种与权利要求1-9中任一所述的数据质量检测方法对应的重复数据的数据质量 检测装置,其特征在于,包括: 训练集生成单元,对包含多条记录的训练样本的数据值进行分析,生成模型训练集; 样本记录标重单元,分析所述模型训练集中的各个组合对,并通过人工或算法将所述 组合对对应的两条记录标记为记录重复或记录不重复;然后选择是否继续训练,继续则重 新确定所述训练样本并返回所述训练集生成单元,否则进入样本组合筛选单元; 所述样本组合筛选单元,计算一个或多个字段重复则记录重复的概率,并筛选出概率 较大的字段组合作为样本字段组合; 检测数据分析单元,对待检测数据的值进行分析,输出每个字段的每个不同值对应的 记录编号; 检测数据筛选单元,根据所述样本字段组合对分析过的所述待检测数据进行重复检 测,筛选出所有重复字段满足所述样本字段组合的记录组合。
【专利摘要】本发明为一种重复数据的数据质量检测方法及装置,所述方法包括:步骤b,生成模型训练集;步骤c,分析所述模型训练集中的各个组合对,并标记为记录重复或记录不重复;步骤d,计算记录重复的概率,并筛选出概率较大的字段组合作为样本字段组合;步骤e,对待检测数据的值进行分析;步骤f,据进行重复检测,筛选出所有重复字段满足所述样本字段组合的记录组合;所述装置包括与各个步骤相对应的训练集生成单元、样本记录标重单元、样本组合筛选单元、检测数据分析单元和检测数据筛选单元。这样,通过对字段组合进行重复可能性的计算,无需比较任意两条记录的重复可能性,缩短了时间,提高了检测效率;同时也可以检测两条数据部分相同的情况。
【IPC分类】G06F17/30
【公开号】CN105488212
【申请号】CN201510925893
【发明人】许飞月, 李青海, 简宋全, 侯大勇, 邹立斌
【申请人】广州精点计算机科技有限公司
【公开日】2016年4月13日
【申请日】2015年12月11日

最新回复(0)