论文部分内容阅读
随着大量的数据被用于提供服务和支持决策,数据质量越来越受到人们的关注。然而,用户的录入错误、企业的合并、从互联网上抽取信息等等都可能产生“脏数据”,从而影响数据质量,解决这些问题的过程被称为数据清洗过程。传统的数据清洗方法通过填补缺失数据、检测并删除错误数据等方式提升数据质量,但它们通常需要提供完整性约束、函数依赖、专家知识等特定的领域知识。对于缺少领域知识的情况,传统的方法并不奏效。因此,在缺少领域知识的情况下,如何对“脏数据”进行清洗就成为当今数据质量管理的一个挑战。值得关注的是,缺失数据或错误数据等“脏数据”在数据库中所占比例一般不会太大,所以数据库中的正确数据基本上能够反映整体数据之间的依赖关系。如果能够获取这些依赖关系,就可以利用它们对“脏数据”进行清洗。贝叶斯网络作为一种最重要、最流行的概率图模型,被广泛用于表示数据之间的依赖关系。利用贝叶斯网络表示不完整数据库中各属性间的依赖关系,就可以通过贝叶斯网络的推理计算出缺失数据可能值的概率分布。贝叶斯网络还可以表示数据库中查询的输入数据、查询过程产生的中间数据及输出数据之间的依赖关系。在已知查询结果不正确的情况下,可以通过构建该查询对应的贝叶斯网络来检测输入数据中包含的错误。本文将针对缺少领域知识条件下的数据质量管理问题,研究基于概率图模型的数据清洗方法,主要研究内容可概括如下:(1)扩展了传统的利用依赖分析来学习贝叶斯网络的方法,以适应包含缺失数据的数据库,提出一个从不完整数据库中学习贝叶斯网络的方法。(2)提出了一个基于吉布斯采样的贝叶斯网络近似推理算法,用于计算缺失数据的可能值的概率分布,并利用该概率分布清洗缺失数据。(3)针对数据库中输出结果异常的查询,提出了一个构建用于表示输入数据、查询过程产生的中间数据、输出数据之间的依赖关系的贝叶斯网络的方法。(4)借鉴因果关系中的Responsibility&B1ame,制订了一个度量贝叶斯网络中各个节点对查询结果贡献大小的标准,然后利用它来检测错误数据。(5)实现了本文所提出的算法,并进行了初步的实验,验证了本文所提方法的有效性及可行性。