一种基于互联网信息的数据清洗系统的制作方法

文档序号:6628173阅读:425来源:国知局
一种基于互联网信息的数据清洗系统的制作方法
【专利摘要】本发明公开了一种基于互联网信息的数据清洗系统,包括数据质量问题检测模块,对脏数据进行检测,干净元组直接送入清洗后的数据库,正确元组送入关键字生成模块,存在空缺值、错误值、冲突值的错误元组送入可行元组检测模块;关键字生成模块;网络模式获取模块;可行元组检测模块;数据清洗模块,利用模式在互联网上进行搜索,即可找到推荐值或错误值对应的正确值,并放入清洗后的数据库中;其他策略清洗模块;和清洗后的数据库。本发明的系统能从数据中发现错误数据,并且能够从互联网中发现和这些数据相关的信息加以提取,从而获得用于数据清洗的数据,大大提高了数据清洗的准确度,而且去除人的反馈,无需用户参与,降低了成本。
【专利说明】一种基于互联网信息的数据清洗系统

【技术领域】
[0001] 本发明涉及一种数据清洗系统,具体涉及一种基于互联网信息的数据清洗系统。

【背景技术】
[0002] 当海量的数据聚集之后,当前的信息系统无法保证其制造或者收集到的数据的质 量能满足用户的需求。一些因素如:内容过时、输入错误、重复输入、属性值冲突等严重影响 着数据的质量。而数据的质量又严重影响着用户的分析与决策,因此这一问题值得引起数 据为中心应用的重视。为了克服种种因数据的质量所引发的问题,数据清洗技术至关重要。 数据清洗技术当前尚没有公认的准确定义,但从字面上就可以看出它的目标是希望把"脏" 数据"清洗"干净,以提高数据的质量。
[0003] 文献 FanW. Dependencies revisited for improving data quality[C]// Proceedings of the twenty-seventh ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems. ACM, 2008:159-170 中的方法清洗的过程当中,若系统 遭遇到无法处理的情况时,需要向人来报告,然后通过人的反馈操作进行下一步的清洗过 程。这种方法的优点是由于人的参与准确性会大大提高,但算法的时间消耗可能会很巨 大,而且对依赖关系的规则和不同的人的主观判断的依赖性过强。文献考明军,张炜,高 宏.冲突数据中的真值发现算法[J].计算机研究与发展,2010, 47:188-192中的方法去掉 了在数据清洗当中的用户的反馈,而改用机器学习的方法,即在清洗过程之前先让机器学 习对的清洗操作,然后在后续的清洗过程不,不断累积的学习,此方法去除了人的反馈,提 升了算法的时间效率,但精确率有所下降,对清洗过程中所使用的依赖关系的依赖依然很 强。


【发明内容】

[0004] 针对现有技术存在的不足,本发明目的是提供一种去除人的反馈,无需用户参与, 准确率高,成本低的基于互联网信息的数据清洗系统。
[0005] 为了实现上述目的,本发明是通过如下的技术方案来实现:
[0006] 本发明的一种基于互联网信息的数据清洗系统,包括
[0007] 数据质量问题检测模块,用于对脏数据进行检测得到干净元组、正确元组和错误 元组,对于干净元组送入清洗后的数据库,对于正确元组送入关键字生成模块,对于存在空 缺值、错误值、冲突值的错误元组送入可行元组检测模块;
[0008] 关键字生成模块,用于生成需要向互联网进行查询的查询语句集合,然后将所述 查询语句集合发给网络模式获取模块;
[0009] 网络模式获取模块,用于与互联网进行交互获取文本依赖关系,所述文本依赖关 系即模式,并将所述模式发送到数据清洗模块;
[0010] 可行元组检测模块,用于对错误元组进行判定,判断出可行元组,问题元组中除去 可行元组即为不可行元组;对于可行元组送入数据清洗模块,对于不可行元组送入其他策 略清洗模块; toon] 数据清洗模块,利用模式在互联网上进行搜索,即可找到推荐值或错误值对应的 正确值,并放入清洗后的数据库中;
[0012] 其他策略清洗模块,通过自动数据修复方法对不可行元组进行清洗,然后送入清 洗后的数据库中;
[0013] 和清洗后的数据库。
[0014] 上述关键字生成模块生成查询语句集合的方法如下:
[0015] (la)对获取的正确元组分层抽样获取部分正确元组数据;
[0016] (2a)对步骤(la)抽样出来的正确元组数据,将其属性两两进行拼加,得到拼装出 来的查询语句集合Query。
[0017] 上述网络模式获取模块获取模式具体包括以下几个步骤:
[0018] (lb)将步骤(2a)得到的查询语句集合Query放到搜索引擎中;
[0019] (2b)对搜索引擎给出的返回结果Results集合进行断句操作,利用最优模糊匹配 进行挖掘即可获得模式。
[0020] 步骤(2b)中,最优模糊匹配的算法具体包括以下几个步骤:
[0021] 首先将一个目标字符串X中的每一个汉字插入到哈希表CharcHash中,然后遍历 字符串集合Y的每一个字符串y,若通过哈希比较发现字符串y中含有目标字符串X中的汉 字,记录字符串y中出现的第一个和最后一个X中的汉字的位置start\end ;
[0022] 然后将start到end这一区间插入到另一个哈希表Dictionary中,并记录出现次 数,再将此区间依次向左向右扩张而成的字符串分别插入到哈希表Dictionary中;
[0023] 在插入结束后,将哈希表Dictionary中的所有元素按次数排序,再从次数最多的 元素中做包含比较,找到不被包含的短句即是最优模糊匹配。
[0024] 步骤(2b)中,模式的挖掘具体包括以下几个步骤:
[0025] 首先设置一个全局的记录出现次数的哈希表PatternHashTable,所述哈希表 PatternHashTable中存放所有的模式;
[0026] 然后将步骤(2b)得到的最优模糊匹配进行变形,将属性值用标识代替;
[0027] 最后将变形后的值插入到哈希表PatternHashTable中,以此类推,直到所有的变 形后的值都插入到此哈希表PatternHashTable中,接着将哈希表PatternHashTable内所 有的值按出现的顺序进行排序,即得到出现次数最多的Top-K个模式。
[0028] 在所述可行元组检测模块中,基于以下几点因素选择可行元组:
[0029] (lc)可通过正确元组从网络上挖掘到模式集合S ;
[0030] (2c)在模式集合S中选择存在问题的属性有对应的修复模式;
[0031] (3c)在模式集合S中过滤掉属性同时错误的模式;
[0032] (4c)在模式集合S中过滤掉可使用函数依赖进行清洗的模式;
[0033] (4c)在模式集合S中过滤掉可使用真值发现算法进行清洗的模式;
[0034] 以上几点必须同时成立时,即可通过正确元组从网络上挖掘到模式、存在问题的 属性有对应的修复模式、模式中的属性不能同时错误、无法使用函数依赖进行清洗、无法使 用真值发现算法进行清洗时才可使用所述数据清洗模块对元组进行数据清洗。
[0035] 对于存在空缺值的错误元组,所述数据清洗模块的清洗方法如下:
[0036] (Id)对于给定的属性值和模式,将其组合内容进行搜索,找到搜索结果中包含当 前所要清洗的属性值的任意文字的短句并记录其出现次数;
[0037] (2d)通过最优模糊匹配找到最优模糊匹配短句;
[0038] (3d)利用给定的属性值和模式进行拆分即可找到推荐值。
[0039] 对于存在错误值的错误元组,所述数据清洗模块的清洗方法如下:
[0040] (le)对于关系模式R,A = {Attrl, Attr2,…AttrK}为R的所有属性 值的集合,对于给定的属性值Attrl、Attr2和它们的相关网络模式Pattern,将 Attrl+Pattern+( Σ A_Attr2)和 Attr2+Pattern+( Σ A-Attrl)这两个 Query 语句进行搜 索,对分别得到的Resultsl和Results2进行并集操作得到集合Results ;
[0041] (2e)分别挖掘Results中的关于Attrl+Pattern和Attr2+Pattern的最优模糊匹 配 Sentencel 和 Sentence2 ;
[0042] (3e)选择其中出现次数最多的做为最终的最优模糊匹配短句Sentence ;
[0043] (4e)依据选择的模式进行拆分,得到需要清洗的错误值对应的正确值。
[0044] 对于存在冲突值的错误元组,所述数据清洗模块的清洗方法如下:
[0045] (If)对于关系模式R,A = {Attrl, Attr2,…AttrK}为R的所有属性值的集合, 已经通过元组匹配和聚类的方法找到指代同一真实世界实体的元组集合T = {tl,t2,… ,tK},对于给定的属性值Attrl、Attr2和它们的相关网络模式知识Pattern,需要对T集合 中的所有元组的属性Attrl的所有不同表述进行清洗;
[0046] (2f)对 Attr2+Pattern+( Σ A_Attr2)的 Query 语句进行搜索;
[0047] (3f)对分别得到的Resultsl,Results2,…,ResultsK进行并集操作得到集合 Results ;
[0048] (4f)挖掘Results中的关于Attr2+Pattern的最优模糊匹配Sentence ;
[0049] (5f)然后依据选择的模式进行拆分,可得到需要清洗的错误值对应的正确值。
[0050] 上述自动数据修复方法包括自动真值发现和匹配函数依赖的最小化修改、数据填 充。
[0051] 本发明的系统能从数据中发现错误数据,并且能够从互联网中发现和这些数据相 关的信息加以提取,从而获得用于数据清洗的数据,进行有效的数据清洗,大大提高了数据 清洗的准确度,而且去除人的反馈,无需用户参与,降低了成本。

【专利附图】

【附图说明】
[0052] 图1为本发明的系统原理框图;
[0053] 图2为本发明的网络模式获取模块工作流程图;
[0054] 图3为本发明的在存在空缺值的情况下数据清洗模块的工作流程图。

【具体实施方式】
[0055] 为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合

【具体实施方式】,进一步阐述本发明。
[0056] 空缺值:属性值是空缺的。这种情况需要清洗算法来填补空白。
[0057] 错误值:属性值存在,但被认定是错误的。这种错误可以由FD/CFD算法来认定。 这种情况需要清洗算法来修正错误值。
[0058] 冲突值:属性值有多个可能的值,但是只有一个值是正确的。这种错误可以通过实 体识别的方法来找到那些指向同一真实世界实体的元组集合,如果这一集合中的同一位置 的属性值有所不同,那么就出现了冲突。这种情况需要清洗算法来选择或者制造一个真实 的属性值,消除冲突。
[0059] 数据清洗:对数据的空缺值进行填补,对数据的错误值进行修正,对数据的冲突值 进行消除的过程叫做数据清洗。
[0060] 参见图1,框架共分为三大部分,第一部分是数据质量问题的检测,第二部分是模 式的获取部分,最后一部分是清洗部分。这两大部分之间的联系为模式的获取部分最终将 其获取得到的模式传递给清洗部分,用以支持其进行基于模式的数据清洗。这两个部分只 共用一个模块,那就是数据质量问题检测模块。除此以外,两个部分的运行在时间上存在先 后关系,即模块的获取部分其实是在在数据清洗部分开始之间就已经完成,以下将分别介 绍两大部分的内部具体流程。
[0061] 模式获取部分内的数据流依次如下。首先对一个脏的数据源进行数据质量问题检 测模块,对于其正确的元组流向关键字生成模块,此时关键字生成模块生成需要向网络进 行查询的关键字,然后将关键字发给模式获取模块,模式获取模块利用与互联网的交互,挖 掘得到文本依赖关系,即模式。
[0062] 清洗部分内的数据流依次如下。首先也是对脏数据源进行检测,对正确的元组直 接送入清洗后的数据库中,而对存在"空缺值、错误值、冲突值"这三种错误的元组送入可行 元组检测模块。在可行元组检测模块对存在错误的元组进行判定,若适合使用基于网络的 数据清洗技术进行清洗,则利用之间挖掘的模式和已知的所有信息在互联网上进行搜索, 获得正确的值后,放入清洗后的数据库中;对于不适合使用基于网络的数据清洗技术进行 清洗的元组,使用其它策略对其进行清洗后,放入清洗后的数据库中。
[0063] 下面依次对各个模块进行介绍:
[0064] 一、关键字生成
[0065] 但如果是海量的数据需要进行处理,利用整个输入文件用于模式知识搜索代价很 高,而且部分文件中即可找到所需求的模式知识,我们使用分层抽样获取部分元组数据。 [0066] 对于抽样出来的元组数据,我们将其属性两两进行拼加,如对于元组"哈尔滨 工业大学I王树国I黑龙江省哈尔滨市1150001",其拼装出来的查询语句集合为Query ={ "哈尔滨工业大学+王树国","哈尔滨工业大学+黑龙江省哈尔滨市","哈尔滨工业 大学+150001","王树国+黑龙江省哈尔滨市","王树国+150001","黑龙江省哈尔滨市 +150001"}。然后就完成了查询语句的拼装,紧接着是将各个查询语句放到互联网中进行检 索,来获取模式。
[0067] 在关键字生成的模块中,我们将通过数据质量检测的正确元组进行抽样,然后对 抽样出来的元组的属性值进行组装,然后组装成的Query语句将会传递给下一个部分用来 从网络上获取模式。
[0068] 二、模式获取
[0069] 基于网络的模式的获取部分是算法中非常核心的一步。在我们得到了 Query语句 之后,我们将其放到互联网上进行搜索,在搜索结果中挖掘出文本依赖模式,这便是模式的 获取过程。
[0070] 与网络上的资源进行交互是模式获取中的第一步。将组装好的Query语句发送到 的搜索引擎,然后对搜索引擎给出的返回结果进行解析,将所有结果存储起来,为之后的模 式挖掘提供数据基础。参见图2,下面介绍一个使用此方法的例子。使用HTTP REQUEST的 方式向百度发出搜索请求"http://www. baidu. com/s ? wd =哈尔滨工业大学+王树国+ 黑龙江省哈尔滨市+150001fcn = 100",然后百度返回的结果是关于此搜索的前100个搜 索结果,此结果以HTML文件流的形式传过来。将此文件解析成为Result的集合,其中每个 Result的数据结构包含以下四个变量:title (标题),brief (简介),date (网页日期), link(网页地址),如下图中所示为Query = "哈尔滨工业大学+王树国"的检索结果中的 Results集合中的一个合法项。
[0071] Result: {
[0072] title: "王树国-哈尔滨工业大学校长" brief: "王树国,1958年10月生,河北献县人,哈工大博士、教 授、博导^现为国家「863」...1999年任黑龙江省科技厅厅长,2002年 任哈尔滨工业大学校长。1987年至1989年他曾..." date: "2013-5-9" link : uhttp://www.maigoo.com/maigoociTis/2010/0123/dxky wsg.html }
[0073] 为了更加高效的进行模式挖掘,需要将检索后的title和brief的内容进行断句 操作。然后在之后的步骤当中,以断开的句子为单位。汉语中的断句操作较为简单,只需要 在逗号,句号,问号,感叹号(,。?!)出现的位置进行断开操作即可。
[0074] 在与互联网信息进行交互之后,可以得到各个Query语句查询所得的Results集 合,接下来从这些Results集合中挖掘出模式。
[0075] 在得到Results集合并在其中进行过断句操作之后,我们利用最优模糊匹配的思 想,以模糊匹配为工具,进行模式的挖掘。
[0076] 最优模糊匹配算法的目的是给定一个目标字符串X、一个字符串集合Y和一个给 定的编辑距离的阈值Κ,在Υ中寻找X的最优模糊匹配。最优模糊匹配的算法如下:首先将 X中的每一个汉字插入到哈希表CharcHash中,然后遍历字符串集合Υ的每一个字符串y, 若通过哈希比较发现y中含有X中的汉字,刚记录y中出现的第一个和最后一个X中的汉 字的位置start\end,然后将start到end这一区间插入到另一个哈希表Dictionary中, 并记录出现次数,再将此区间依次向左向右扩张而成的字符串分别插入到Dictionary中。 在插入结束后,将Dictionary中的所有元素按次数排序,再从次数最多的元素中做包含比 较,找到不被包含的短句即是最优模糊匹配。
[0077] 首先模式的挖掘是以所有的元组的挖掘为基础的,需要设置一个全局的记录出现 次数的哈希表PatternHashTable,这个哈希表中存放一切可能的模式。在对一个元组的所 有Query语句进行最优模糊匹配之后,将得到的最优模糊匹配进行变形,将属性值用标识 代替。例如,假设搜索的Query ={"哈尔滨工业大学+王树国","哈尔滨工业大学+黑龙江省 哈尔滨市","哈尔滨工业大学+150001","王树国+黑龙江省哈尔滨市","王树国+150001", "黑龙江省哈尔滨市+150001"},得到了一个模糊匹配为"哈尔滨工业大学校长王树国",将 其变形为"[属性0]校长[属性1] ",然后将变形后的值插入到PatternHashTable中,依次 类推,直到所有的变形后的值都插入到此表中。接着将表内所有的值按出现的顺序进行排 序,这时就能得到出现次数最多的Top-K个模式。
[0078] 三、可行元组的选择
[0079] 可行元组的选择是指选择出那些适用于基于网络模式的数据清洗技术的已经确 定存在数据质量问题的元组。在这一个模块当中,程序的输入是所有错误的元组,输出为适 用于基于网络模式的数据清洗技术的那些元组。我们基于如下几点因素选择可行元组:
[0080] (1)可通过正确的元组从网络上挖掘到模式。
[0081] (2)存在问题的属性有对应的修复模式。
[0082] (3)模式中的属性不能同时错误。
[0083] (4)无法使用函数依赖进行清洗。
[0084] (5)无法使用真值发现算法进行有效的清洗。
[0085] 以上几点必须同时成立时,即可通过正确的元组从网络上挖掘到模式、存在问题 的属性有对应的修复模式、模式中的属性不能同时错误、无法使用函数依赖进行清洗、无法 使用真值发现算法进行有效的清洗时才可使用基于网络模式的数据清洗技术对元组进行 数据清洗。
[0086] 四、基于网络模式的清洗
[0087] 对于需要使用基于网络模式的清洗技术的元组,我们以其质量存在的问题为标准 分为三种情况,分别是空缺值、错误值、冲突值,技术细节如下:
[0088] 空缺值清洗:对于给定的属性值Attrl和模式知识Pattern,将其组合内容进行搜 索,找到搜索结果中包含当前所要清洗的属性值的任意文字的短句并记录其出现次数,通 过排序、模糊匹配和包含比较,找到最优模糊匹配短句Sentence,再利用给定的属性值和模 式知识进行拆分即可找到推荐值。
[0089] 参见图3,例如,给定值为"X1 =哈尔滨工业大学",给定模式为"X1校长X2",组 合成" Query =哈尔滨工业大学校长",进行搜索,对结果进行解析、过滤、最优模糊匹配后, 可得到" Sentence =哈尔滨工业大学校长王树国",再利用给定的值和模式进行拆分,可得 到推荐值为"X2 =王树国"。
[0090] 错误值清洗
[0091] 对于函数依赖可以修复的错误值情况,应直接使用其进行修复。但若函数依赖只 能检测出错误,无法对其进行修改的情况,我们可以使用基于网络模式的数据清洗技术对 其进行清洗。
[0092] 函数依赖只能检测出错误,无法对其进行修改的情况一般为函数依赖中定义的约 束以属性值检测中出现冲突的情况,即我们可以根据约束1和属性1修改属性2,也可以根 据约束2和属性2修改属性1的情况。对于这种情况,我们使用如下的基于网络模式的数 据清洗技术。
[0093] 假设对于关系模式R,A = {Attrl, Attr2,…AttrK}为R的所有属性值 的集合,对于给定的属性值Attrl、Attr2和它们的相关网络模式知识Pattern, 将"六1:1:1'1+?31^61'11+(1六-六1:1^2)"和"六1:1^2+?31^61'11+(1六-六1:1:1'1)"这两个( >)116^语句 进行搜索,对分别得到的Resultsl和Results2进行并集操作得到集合Results。分别挖 掘 Results 中的关于"Attrl+Pattern" 和"Attr2+Pattern" 的最优模糊匹配 Sentencel 和 Sentence2,选择其中出现次数最多的做为最终的最优模糊匹配短句Sentence,然后依据选 择的模式进行拆分,可得到需要清洗的错误值的对应的正确值
[0094] 冲突值清洗
[0095] 对于真值发现可以修复得很好的冲突情况,应该直接使用冲突发现的算法对其进 行清洗。但若真值发现的算法无法有效的进行清洗,我们可以使用基于网络模式的数据清 洗技术。
[0096] 假设对于关系模式R,A = {Attrl, Attr2, --?AttrK}为R的所有属性值的集合,已经 通过元组匹配和聚类的方法找到指代同一真实世界实体的元组集合T = {tl,t2,…,tK}, 对于给定的属性值Attr 1、Attr2和它们的相关网络模式知识Pattern,需要对T集合中的 所有元组的属性八1:1:1'1的所有不同表述进行清洗,将"41:1^2+?31^61'11+(14-41:1^2)"( >)116巧 语句进行搜索,对分别得到的Resultsl, Results2,…,ResultsK进行并集操作得到集合 Results。挖掘Results中的关于"Attr2+Pattern"的最优模糊匹配Sentence,然后依据选 择的模式进行拆分,可得到需要清洗的错误值的对应的正确值。
[0097] 对于输入的实体集合,将其所有的元组的所有内容分别进行搜索,找到搜索结果 中包含当前所要清洗的属性值的任意文字的短句并记录其出现次数,通过排序、包含比较 等操作,找到最优模糊匹配,再对最优模糊匹配的短句按出现的频次进行比较,只保留最大 的频次项,对此项进行拆分,即可得到当前实体当前属性值的清洗结果。此清洗为相似性清 洗,可以找到与当前属性值不同的属性,如搜索"哈尔滨工大+王树国+哈尔滨+150001"和 "哈工大+王树国+哈尔滨+150001",当前要清洗的为第一个属性,最有可能得到的出现次 数最多且不被其它短句包含的值应为"哈尔滨工业大学",其中"业"、"学"这两个字并没有 在候选属性值中出现。
[0098] 以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术 人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本 发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变 化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其 等效物界定。
【权利要求】
1. 一种基于互联网信息的数据清洗系统,其特征在于,包括 数据质量问题检测模块,用于对脏数据进行检测得到干净元组、正确元组和错误元组, 对于干净元组送入清洗后的数据库,对于正确元组送入关键字生成模块,对于存在空缺值、 错误值、冲突值的错误元组送入可行元组检测模块; 关键字生成模块,用于生成需要向互联网进行查询的查询语句集合,然后将所述查询 语句集合发给网络模式获取模块; 网络模式获取模块,用于与互联网进行交互获取文本依赖关系,所述文本依赖关系即 模式,并将所述模式发送到数据清洗模块; 可行元组检测模块,用于对错误元组进行判定,判断出可行元组,问题元组中除去可行 元组即为不可行元组;对于可行元组送入数据清洗模块,对于不可行元组送入其他策略清 洗模块; 数据清洗模块,利用模式在互联网上进行搜索,即可找到推荐值或错误值对应的正确 值,并放入清洗后的数据库中; 其他策略清洗模块,通过自动数据修复方法对不可行元组进行清洗,然后送入清洗后 的数据库中; 和清洗后的数据库。
2. 根据权利要求1所述的基于互联网信息的数据清洗系统,其特征在于,所述关键字 生成模块生成查询语句集合的方法如下: (la) 对获取的正确元组分层抽样获取部分正确元组数据; (2a)对步骤(la)抽样出来的正确元组数据,将其属性两两进行拼加,得到拼装出来的 查询语句集合Query。
3. 根据权利要求2所述的基于互联网信息的数据清洗系统,其特征在于, 所述网络模式获取模块获取模式具体包括以下几个步骤: (lb) 将步骤(2a)得到的查询语句集合Query放到搜索引擎中; (2b)对搜索引擎给出的返回结果Results集合进行断句操作,利用最优模糊匹配进行 挖掘即可获得模式。
4. 根据权利要求3所述的基于互联网信息的数据清洗系统,其特征在于, 步骤(2b)中,最优模糊匹配的算法具体包括以下几个步骤: 首先将一个目标字符串X中的每一个汉字插入到哈希表CharcHash中,然后遍历字符 串集合Y的每一个字符串y,若通过哈希比较发现字符串y中含有目标字符串X中的汉字, 记录字符串y中出现的第一个和最后一个X中的汉字的位置start\end ; 然后将start到end这一区间插入到另一个哈希表Dictionary中,并记录出现次数, 再将此区间依次向左向右扩张而成的字符串分别插入到哈希表Dictionary中; 在插入结束后,将哈希表Dictionary中的所有元素按次数排序,再从次数最多的元素 中做包含比较,找到不被包含的短句即是最优模糊匹配。
5. 根据权利要求4所述的基于互联网信息的数据清洗系统,其特征在于, 步骤(2b)中,模式的挖掘具体包括以下几个步骤: 首先设置一个全局的记录出现次数的哈希表PatternHashTable,所述哈希表 PatternHashTable中存放所有的模式; 然后将步骤(2b)得到的最优模糊匹配进行变形,将属性值用标识代替; 最后将变形后的值插入到哈希表PatternHashTable中,以此类推,直到所有的变形后 的值都插入到此哈希表PatternHashTable中,接着将哈希表PatternHashTable内所有的 值按出现的顺序进行排序,即得到出现次数最多的Top-K个模式。
6. 根据权利要求5所述的基于互联网信息的数据清洗系统,其特征在于, 在所述可行元组检测模块中,基于以下几点因素选择可行元组: (lc) 可通过正确元组从网络上挖掘到模式集合S ; (2c)在模式集合S中选择存在问题的属性有对应的修复模式; (3c)在模式集合S中过滤掉属性同时错误的模式; (4c)在模式集合S中过滤掉可使用函数依赖进行清洗的模式; (4c)在模式集合S中过滤掉可使用真值发现算法进行清洗的模式; 以上几点必须同时成立时,即可通过正确元组从网络上挖掘到模式、存在问题的属性 有对应的修复模式、模式中的属性不能同时错误、无法使用函数依赖进行清洗、无法使用真 值发现算法进行清洗时才可使用所述数据清洗模块对元组进行数据清洗。
7. 根据权利要求6所述的基于互联网信息的数据清洗系统,其特征在于,对于存在空 缺值的错误元组,所述数据清洗模块的清洗方法如下: (ld) 对于给定的属性值和模式,将其组合内容进行搜索,找到搜索结果中包含当前所 要清洗的属性值的任意文字的短句并记录其出现次数; (2d)通过最优模糊匹配找到最优模糊匹配短句; (3d)利用给定的属性值和模式进行拆分即可找到推荐值。
8. 根据权利要求6所述的基于互联网信息的数据清洗系统,其特征在于,对于存在错 误值的错误元组,所述数据清洗模块的清洗方法如下: (le) 对于关系模式R,A = {Attrl,Attr2,…AttrK}为R的所有属性值的集合,对于给 定的属性值Attrl、Attr2和它们的相关网络模式Pattern,将Attrl+Pattern+( Σ A_Attr2) 和Attr2+Pattern+( Σ A-Attrl)这两个Query语句进行搜索,对分别得到的Resultsl和 Results2进行并集操作得到集合Results ; (2e)分别挖掘Results中的关于Attrl+Pattern和Attr2+Pattern的最优模糊匹配 Sentencel和 Sentence2 ; (3e)选择其中出现次数最多的做为最终的最优模糊匹配短句Sentence ; (4e)依据选择的模式进行拆分,得到需要清洗的错误值对应的正确值。
9. 根据权利要求6所述的基于互联网信息的数据清洗系统,其特征在于,对于存在冲 突值的错误元组,所述数据清洗模块的清洗方法如下: (lf) 对于关系模式R,A = {Attrl, Attr2,…AttrK}为R的所有属性值的集合,已经通 过元组匹配和聚类的方法找到指代同一真实世界实体的元组集合T = {tl,t2,…,tK},对 于给定的属性值Attrl、Attr2和它们的相关网络模式知识Pattern,需要对T集合中的所 有元组的属性Attrl的所有不同表述进行清洗; (2f)对 Attr2+Pattern+( Σ A_Attr2)的 Query 语句进行搜索; (3f)对分别得到的Resultsl, Results2,…,ResultsK进行并集操作得到集合 Results ; (4f)挖掘Results中的关于Attr2+Pattern的最优模糊匹配Sentence ; (5f)然后依据选择的模式进行拆分,可得到需要清洗的错误值对应的正确值。
10.根据权利要求1所述的基于互联网信息的数据清洗系统,其特征在于, 所述自动数据修复方法包括自动真值发现和匹配函数依赖的最小化修改、数据填充。
【文档编号】G06F17/30GK104268216SQ201410495234
【公开日】2015年1月7日 申请日期:2014年9月24日 优先权日:2014年9月24日
【发明者】王宏志, 王飞, 秦谦, 宋阳秋 申请人:江苏名通信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1