大数据环境下面向知识服务的数据清洗研究

时间:2022-10-07 02:37:34

大数据环境下面向知识服务的数据清洗研究

摘 要:大数据既丰富了知识的内涵,也增添了知识显式化的障碍。对大数据进行数据清洗是最终获取知识的有效途径。由大数据的特点对知识服务重新提出要求,不仅要提高数据的使用价值,更要使数据严密的关联,这些要求一方面通过数据清洗满足数据质量的提高,另一方面容忍非清洁数据实现知识服务效率与水平的同步提高。文章给出了数据清洗的基本框架模型及其局限,从而进一步提出非清洁数据的清洁度的机制。

关键词:大数据 知识服务 知识库 数据清洗 非清洁数据 清洁度

中图分类号: G302;TP391 文献标识码: A 文章编号: 1003-6938(2013)05-0016-06

1 引言

随着以微博、社交网络等为代表的新型信息方式的不断涌现,人类社会的数据种类和规模正以前所未有的速度在不断地增加和累积,大数据时代正式到来[1]。在大数据环境下探讨知识服务,不再局限在传统的文献服务,而必须同步数据的爆发式增长与社会化趋势,将视角瞄准大量的碎片化信息、用户行为、用户关系,并将焦点汇聚在由此产生的实时数据、非结构化数据及机器数据。知识服务的内涵,将随着大数据的驱动而深刻发生变化,它将帮助一个组织更好地调用内部、外部以及公共信息,并进行数据分析,做出前瞻性的数据判断。

美通社最新的《大数据市场:2012至2018年全球形势、发展趋势、产业分析、规模、份额和预测》报告指出,2012年全球大数据市场产值为63亿美元,预计2018年该产值将达483亿。2012年,美国政府拨款2亿美元启动“大数据研究和发展倡议”计划。IBM、微软、Google等国外IT巨头早已嗅到了“大数据时代”的商机,这些国际巨头借助自己拥有领先技术和丰富资源,以及稳定的大客户群,实力雄厚,率先涉足。

我国互联网数据中心(IDC)对中国大数据技术和服务市场2012~2016年的预测与分析指出:该市场规模将会从2011年的7760万美元增长到2016年的6.17亿美元,未来5年的复合增长率达51.4%,市场规模增长近7倍。在国内,大数据正在引起越来越多的企业关注。不但阿里巴巴、腾讯等把大数据当成近期的重点项目。作为国内互联网产业的发源地和创新高地,中关村也在抢抓大数据发展机遇,着手布局大数据产业。

学术界、工业界甚至政府机构都已经开始密切关注大数据问题,并对其产生了浓厚的兴趣。大数据是新一代信息技术的集中反映,表现在数据从简单的处理对象转变为一种基础性资源,大数据的规模效应正在给数据存储、管理以及数据分析带来了极大的挑战,知识管理方式上的变革正在酝酿和发生。如何有效存储、管理、组织和更新大规模的数据,如何有效利用存储的数据进行推理获取知识并求解问题,这也是目前图书情报领域一个重要研究课题,正如Google的首席经济学家Hal Varian所说[2],数据是广泛可用的,所缺乏的是从中提取出知识的能力。由此,可以认为数据收集的根本目的是根据需求从数据中提取有用的知识,并将其应用到具体的领域之中。大数据环境下,更需要高效的知识提取手段,使得大数据源源不断提供有用的知识,而非知识被“淹没”在大数据中。在“数据海洋”中对大数据进行知识提取,最有可能的手段是让大数据“缩水”,祛除一些噪声数据,对剩下的那些蕴含所需知识的数据进行提取,这也是进行知识管理的前提,更是知识服务的基础。

而在大数据环境下,要做好数据分析并以此做出数据判断的基础工作是数据清洗。大数据的维度包含了数量、多样性、速度、精确性等,在如此大维度中不可避免的存在着粗糙的、不合时宜的数据,如何将这些非清洁数据有效转化成高质量的干净数据,涉及到知识组织中的数据清理。数据的质量体现出数据的价值,更是知识服务水平的保障。数据清洗的最终目的就是提高数据的质量。

2 相关研究综述

系统科学理论对知识组织研究过程中一些问题和现象进行了科学的阐释和有效地引导。借助控制论(Control Theory)可为实现知识服务提供理论支持,具体而言过程化的控制思想对数据加工处理环节的数据质量控制、加工处理环节的时间、进度等控制,为知识组织工程的时间、进度和质量的控制提供了有效地理论支撑。在系统科学理论的指导下,就可从控制论角度出发采用数据清洗手段解决在知识组织过程中数据的质量控制、数据和知识生产流程控制等难题,并能基于控制论基本原理解决知识组织过程中大量复杂问题。

在数据清洗问题上,王曰芬教授[3]领衔的研究团队就从问题产生的背景和国内外研究现状进行了系统的综述研究,并给出数据清洗的定义和对象且说明了数据清洗的基本原理、模型,以及分析相关算法和工具,进一步给出了数据清洗评估方法。他们的成果对今后数据清洗的研究奠定了基础。曹建军等[4]认为数据清洗是数据质量研究的起点,从数据质量的角度明确数据清洗的作用,并提出了数据清洗的一般系统框架,该框架具备了柔性、可扩展性、交互性好、松耦合的特点。叶焕倬等[5]研究了相似重复数据清理方法,重点对检测和清除算法按照算法类型及相关改进思路进行分类综述,值得注意的是他们的视野已关注到将知识和语义的概念引入到数据清理框架中。王宏志等[6]的研究在一定程度上容忍非清洁数据的存在,侧重研究包含非清洁数据的数据库管理技术,提出了非清洁数据的表示方法,支持非清洁数据的数据操作,这样的非清洁数据模型包括一个以关系操作为核心的操作代数,可以有效地支持非清洁数据的各种该应用。而介于清洁数据与非清洁数据中间的不确定数据,周傲英教授等[7]注意到数据的不确定性普遍存在并且表现形式多种多样,提出了针对不确定数据的数据模型运用排序、剪枝等启发式技术设计新型算法,进一步综述了数据模型、数据预处理与集成、存储与索引、查询处理等方面的工作。张岩等[8]的研究中,给出了衡量数据质量的方法,并且可根据用户对结果质量的需求给出达到一定质量的查询结果。叶鸥等[9]的研究瞄准中文数据清洗问题产生的背景、国内外研究现状与研究热点,突出了中文数据清洗基本原理、模型及算法并着重阐明了中文数据清洗的方法,也总结中文数据清洗研究的不足,并对中文数据清洗的研究及应用进行了展望。

已有的研究成果,对本文展开数据清洗的研究在模型、技术、方法奠定了基础,控制论又从知识服务方向提供了从事数据清洗的理论指导。现阶段,针对数据清洗的研究不多,从知识服务的角度探究数据清洗的研究成果更少。而大数据引来了国内外越来越多的关注,逐渐发展成国民经济中一个重要产业,标志性的特征就是:①数据种类和规模正以前所未有的速度在不断地增加和累积;②数据分析的深度需求与知识服务广泛整合的鸿沟在拉大。在如此大数据的环境下,以知识服务为目的,深入研究数据清洗,将面临的问题:一方面是在知识组织过程中很多非清洁的数据是很难被彻底清洗干净;另一方面,对非清洁数据的清洗可能造成部分知识的丢失或失真;再一方面,知识库中信息更新频繁,要同步执行非清洁数据的辨识与清洗将极大影响知识库系统的效率,以致知识组织的过程低效。

针对面临的问题,本文从容忍非清洁数据存在的研究视角试图解决从包含非清洁数据的知识库中获取满足清洁度要求的查询结果的问题,也就是要给出非清洁数据的清洁度的描述。而非清洁来自两个方面,一方面是数据本身的非清洁,表现特征是数据的错误、不准确、不完整;另一方面是数据间的非清洁,表现特征是数据的重复、冗余、不一致。针对非清洁的两个方面,本文的研究工作将从元组上添加清洁度来描述数据清洁度,以此实现非清洁数据的清洁度的描述。

3 大数据对数据清洗的基础性需求

大数据不仅数量大,而且是异构和多媒体的。在大数据环境下探讨知识服务的解决方案、实现途径和方法,以及实现知识服务涉及到的技术问题。首先在宏观层面明确大数据对实现知识服务的要求,其次在技术实现层面找到支持数据处理、信息分析和知识服务涉及的基础性突破,即数据清洗。

3.1 大数据对知识服务的要求

大数据的价值在于提炼其中隐藏在数据中的规律和有关知识,它对知识服务的要求集中体现在两个方面:首先是大数据环境下的数据整合与规划。大数据不仅仅是容量大、内容丰富,而且其结构是异构的,数据产生的速度也是飞速的,数据中蕴含的知识也是无法衡量的。数据的繁杂、良莠不齐,使数据的利用效率受到影响。通过整合与规划提高数据的利用效率、提升数据的使用价值;其次数据的知识关联与组织。孤立的数据价值低,也只能完成传统的信息服务。针对大数据的知识服务必须将数据进行关联,使之能够为解决问题直接提供知识。通过分析知识组织的关联机制,构建以知识服务为目标的知识地图,确保从传统的信息服务能够上升到知识服务层面。

3.2 知识服务对数据清洗的需求

在知识组织过程中,知识库“吸收”数据且“供给”知识,最终目的是为知识服务提供满足应用所要求的合适的查询结果,数据是知识的基础,数据质量决定了知识的价值,而数据质量问题是由非清洁数据造成的。为此,知识服务若要实现高端的服务水平,基础在于知识组织,瓶颈在于数据清洗。数据清洗的目的是检测数据本身的非清洁和数据间的非清洁,剔除或者改正它们,以提高数据的质量。知识服务不仅需要分析非清洁数据的各种类型不一致、不精确、错误、冗余、过时等的解决方案,更需要追溯非清洁数据的形成源头,如:①数据本身来源不清洁导致的非清洁数据,例如数据采集和录入的精确;②数据模式的不清洁和信息集成中模式不匹配导致的非清洁数据;③数据的查询请求本身是不清洁的,导致获取了非清洁的查询结果。最终结合不同来源与不同类型,反馈修正解决方案使之能配合知识表示效用,以及在提高知识服务水平的同时,保障知识服务的效率。

4 数据清洗的基本框架模型

以一个非清洁数据的片段为例,如表1所示,可以很容易判断:①不完整的数据有:(ID:3、字段:City)“BJ”;②错误的数据有:(ID:6、字段:Name)“Mal-Mart”;③冗余的数据:(ID:1、3、6)表示同一个实体。

对非清洁数据,数据清洗的框架模型分5个部分逐步进行,整个框架如图1所示。

4.1 准备

包括需求分析、大数据类别分析、任务定义、小类别方法定义、基本配置,以及基于以上工作获得数据清洗方案等。通过需求分析明确知识库系统的数据清洗需求,大数据类别分析将大数据归类以便同类数据进行分析,任务定义要明确具体的数据清洗任务目标,小类别方法定义确定某类非清洁数据合适的数据清洗方法,基本配置完成数据接口等的配置,要形成完整的数据清洗方案,并整理归档。上述案例,可以看出表1描述的是超市的相关信息。

4.2 检测

对数据本身及数据间的预处理检测包括相似重复记录、不完整记录、逻辑错误、异常数据等,并且对检测结果进行统计,全面获得的数据质量信息,并将相关信息整理归档。上述案例(表1)检测出存在有:①不完整的数据、②错误的数据、③冗余的数据。

4.3 定位

对检测结果的归档信息进行数据质量进行评估,获得非清洁数据的定位并进行数据追踪分析,分析非清洁数据及由此可能的知识表示的影响,分析产生非清洁的根本原因;进而确定数据质量问题性质及位置,给出非清洁的修正方案,并将相关信息归档。根据定位分析情况,可能需要返回“检测”阶段,进一步定位需要修正数据的位置。上例中非清洁数据片段的位置:(ID:3、字段:City)、(ID:6、字段:Name)、(ID:1、3、6)。

4.4 修正

在定位分析的基础上,对检测出的非清洁数据进行修正,包括非清洁数据标记、不可用数据删除、重复记录合并、缺失数据估计与填充等,并对数据修正过程进行存储管理。上例中在定位后,修正上述三类数据,经过修正后,得到如表2所示数据片断。

4.5 验证

对修正后的数据与任务定义的符合性进行比对验证,如果结果与任务目标不符合,则做进一步定位分析与修正,甚至返回“准备”中调整相应准备工作。表2反映出经过一轮修正后的数据片断,与表1相比部分不完整的数据、错误的数据、冗余的数据得到了清洗,但清洗过后的数据显然还不完美,依然有明显不一致的地方。

5 基本框架模型的局限

实际大数据应用中,前面提出的基本模型具有局限性:首先,大数据通常是异构且碎片化的,多数情况下这些类型的非清洁数据是难以被彻底清洗干净的;其次,对非清洁数据的清洗可能会造成蕴含知识的损失,以致知识的失真;最后,对于知识库频繁更新,同步执行非清洁数据的辨识和清洗将极大地减低系统的效率。

再如上例中,从表1到表2,在一定程度是进行了数据清洗,但深入观察可以发现(ID:6、字段:Name)“Walmart”虽然不存在拼写错误,但表示方式与其他的“Wal-Mart”并不一致,还有(字段:Phn)的表示也不一致,这些不一致的地方阅读者容易理解,而机器很难“理解”。也就是,经过一轮的数据清洗,出现了知识内涵一致的元组(“Walmart”与“Wal-Mart”),却存在表示字符上的差异,这是否意味着需要进一步进行数据清洗?如果由机器进行更细腻的数据清洗,必然将出现一部分信息的丢失或失真,并且带来机器计算上的负担。因此,数据清洗是必要的,但清洗过后,依然存在非清洁数据也是必然的。

从上述分析可以看出,非清洁数据的辨识与清洗很难保证彻底消除非清洁数据,特别大数据的多维度性,给清洗带来了困难,且随着清洗的细腻程度逐步提高,知识库系统的运行性能将逐步降低伴随将逐步丢失数据中蕴藏的信息,不能快速有效地解决非清洁数据带来的问题。为此,大数据的存在,需要在一定程度上容忍非清洁数据的存在。这样,研究管理包含非清洁数据的知识库系统成为了重要的问题,其核心在于如何从包含非清洁数据的知识库中得到满足应用所要求清洁度的查询结果。

6 非清洁数据的清洁度的机制

6.1 清洁度获取

清洁度本质上反应的是数据质量。目前,清洁度定义可以用两种方法描述:一种是概率的方法,即将元组清洁度定义为该元组准确的概率;另一种是相对误差的方法,即定义元组对于真实值的相对误差。其中应用最为广泛的是概率的方法。如表1中,可以判断元组1、3和6表示同一个实体,因此,可以合并这3条元组,根据这个数据片段只能判断“Name”取值更可能为“Wal-Mart”,但机器无法完全排除“Mal-Mart”,为了描述每个可能取值的质量,赋予每个值一个概率值,表示该值的清洁度。如“Wal-Mart”在同一个实体3条元组出现了2次,则清洁度为2/3,从而得出该条实体各元组的清洁度,如表3所示。

在实际应用中,元组的清洁度可以通过人工或者自动的方法获取,主要来源包括:

(1)人工添加。最直接的方法是由用户根据领域知识和数据的来源添加数据的清洁度。这种方法的问题在于,当数据量很大时,需要大量的人力。

(2)属性清洁度组合。由于一些属性的清洁度是可以预知的,比如在科学统计数据库中描述某仪器采回数据的关系,模式为(Time,Value),其中:Value 列来源于数据采集设备,该设备的相对误差是知道的;而 Time列是在采样时由系统添加,可以看成清洁的列。因此,该关系中元组的清洁度定义为 Value 列的清洁度。

(3)模式转换。在信息集成中,在数据之间进行模式转换会产生清洁度的损失,在一些信息集成方法中会给出模式转换时数据的损失,经过归一化以后,该损失可以用作表示数据清洁度。

(4)信息提取。信息提取的过程中,一些技术会根据原始数据的特点或者机器学习的方法求得某数据属于某元组概率或者准确率,这个值可用作数据清洁度的描述。

(5)实体识别。当前,有很多实体识别的方法将数据集合划分成为实体,通过描述同一实体的不同元组之间的不一致性来描述实体的清洁度。

以上多种方法在一些应用中是可以结合使用的,根据本模型的特点,在结合使用时,元组的清洁度应为多来源清洁度的乘积。一方面使得元组的清洁度满足取值在[0,1]之间;另一方面,这样的方法体现了多种清洁度的复合。例如信息提取系统中,首先进行信息提取,然后进行实体识别,则最终结果的清洁度可以定义为信息提取步骤的清洁度与实体识别步骤清洁度的乘积。

6.2 操作的实现策略

通过在每个关系中添加描述清洁度的列(如表3),现有的关系数据库系统可以对本模型所描述的数据进行管理。然而,现有关系数据库中的管理机制不足以支持所有的操作。考虑到随着操作的进行数据清洁度是递减的,因此根据查询的需求,在操作执行的过程中某些环节需要过滤掉清洁度不可能满足查询要求的中间结果,这样可以减小中间结果的数据量,从而加速查询的处理。例如,对于如果查询要求结果中每条元组的清洁度在 0.5 以上,则在查询处理的过程中可以过滤掉清洁度小于 0.5 的中间结果,因为由这些中间结果生成最终结果的清洁度一定小于 0.5。

6.3 基于阀值的相似连接算法

相似连接是在两个元组集合中选择出满足相似性下界(阀值)的元组对。目前已经有很多衡量相似性的方法:编辑距离、Hamming距离、杰卡德相似度以及余弦相似度等。本小节考虑的是基于编辑距离的相似连接。对于给定的两个字符串r和s,r和s的编辑距离ed(r,s)是指从r变为s所需要的最少的编辑操作(包括:删除、插入和替换)次数。如表4中,ed(Wal-Mart,Mal-Mart)=1,ed(80103389,010-80103389)=4。在实体关系数据库中,属性值可能含有多个取值,本书对相似连接算法给出如下定义。

定义1:相似连接。给定两个属性值集合R和S及编辑距离阀值k,R和S的相似连接是指选出所有的属性值组合(r,s),其中r∈R,s∈S,而且r和s满足至少存在一组可能取值r1和s2。它们的编辑距离ed(r1,s2)≤k。

以表4为例,给出两个集合R和S。若编辑距离阀值k设为3,则对应相似连接结果仅为(r1,s1)与(r2,s2),因为ed(Wal-Mart,Mal-Mart)=1≤3,ed(Jerry Strauss,Jerry Strauss)=0≤3。其余相似连接中(r2,s1)、(r1,s2)显然其编辑距离均超过阀值3,表5给出了连接结果。

其中,第二条元组(ID=2),ed(Jerry Smith,Jerry Strauss)>3、ed(Jerry Smith,Jeff Strauss)>3,故第二条元组对应清洁度为1/5*2/5+1/5*3/5=0.2。

在实际关系数据库中,所有可能值都有对应的清洁度,所以,所有相似连接结果也都会有一个清洁度,表示该结果的质量,如表5结果所示,而在实际应用中,我们只对清洁度比较高的结果感兴趣,对于那些较低清洁度的结果可以忽略。

定义2:基于阀值的相似连接。给定两个属性值集合R和S及编辑距离阀值k和清洁度阀值α, R和S的阀值相似连接是指选出所有的属性值组合(r,s),其中r∈R,s∈S,而且r和s连接结果的清洁度不低于α。

上例中,如果清洁度阀值α设为0.3,表5中两个集合R和S的阀值的相似连接结果不再是(r1,s1)与(r2,s2),因为第二条元组对应清洁度为1/5*2/5+1/5*3/5=0.2,该结果不满足清洁度阀值要求。

基于阀值的相似连接算法的特点是当编辑距离阀值k较大且清洁度阀值较小时,连接结果大小将接近于n2(n是连接集合的大小),反之连接结果集比较大。

6.4 清洁度的机制的研究不足

目前关于非清洁数据的清洁度机制的研究成果非常少,汇聚在图书情报领域的成果更少。而事实上,知识来源于数据的提炼,大数据大维度与碎片化中蕴含了丰富的知识内涵。上一节的探讨,只描述了清洁度机制的框架,研究也还停留在数据本身的处理,而清洁度机制是一项复杂的研究,还有深入优化的研究空间。譬如,将清洁度机制与知识的语义距离结合,如ed(Wal-Mart,Mal-Mart)=1,ed(80103389,010-80103389)=4,虽然存在编辑距离,其实它们都是同一个知识点,进一步的研究将涉及到是先进行知识的语义距离计算还是先进行清洁度计算,或者两者并行计算,这将是图书情报领域又一个难点。

7 结语

大数据时代的到来给知识服务带来了变革,迫使其将碎片化信息、社会化的信息提炼成描述用户行为、用户关系,并能解决问题的知识。为此,本文从大数据的研究背景下提出了对知识服务的要求,并面向知识服务数据清洗的过程又是大数据环境下的瓶颈。给出了数据清洗的基本框架模型及其局限性,针对大数据的多维度性,在元组上增加了清洁度的描述,基于此研究了应对大数据环境下的非清洁数据的清洁度机制。

通过研究也发现了不足,下一步针对大数据的数据清洗将从知识的概念层次性入手,能体现知识之间的语义交叉这样更适用于大数据的大维度,根据知识的概念层次,通过消除知识的重复应用,建立原子知识序列,优化了用户的请求,减少了对知识库扫描的次数,从而提高了数据清洗效率。

参考文献:

[1]孟小峰,慈祥.大数据管理:概念、技术与挑战[J].计算机研究与发展,2013,50(1):146-169.

[2]The Economist.Data,data,everywhere-A special report on managing information[EB/OL].[2013-04-26].http:///node/15557443.

[3]王曰芬,章成志.数据清洗研究综述[J].现代图书情报技术,2007,(12):50-56.

[4]曹建军,刁兴春,陈爽.数据清洗及其一般性系统框架[J].计算机科学,2012,39(11):207-211.

[5]叶焕倬,吴迪.相似重复记录清理方法研究综述[J].现代图书情报技术,2010,(9):56-66.

[6]王宏志,李建中,高宏.一种非清洁数据库的数据模型[J].软件学报,2012,23(3):539-549.

[7]周傲英,金澈清,王国仁等.不确定性数据管理技术研究综述[J].计算机学报,2009,32(1):1-16.

[8]张岩,杨龙,王宏志.劣质数据库上阈值相似连接结果大小估计[J].计算机学报,2012,35(10):2159-2168.

[9]叶鸥,张璟,李军怀.中文数据清洗研究综述[J].计算机工程与应用,2012,48(14):121-129.

作者简介:蒋勋(1980-),男,南京大学信息管理学院博士后,无锡城市职业技术学院电子信息工程系讲师,研究方向:知识工程与信息智能处理;刘喜文(1983-),男,南京大学信息管理学院博士研究生,研究方向:本体技术。

上一篇:基于知识地图的知识组织 下一篇:归属感与图书馆职业精神刍议