摘要:以模式匹配作为数据集成的重要方法可以解决多源数据在模式上的差异问题,为用户提供统一的访问视图。通过对现有模式匹配方法及农村土地利用数据差异类型的分析,提出基于不同模式结构层次的元素匹配和实例统计匹配相结合的复合匹配方法,通过对模式语义相似度的计算,解决农村土地利用数据集成过程中的模式匹配问题。最后选取海南省琼海市大路镇农村土地利用数据,验证该方法的可行性和有效性。
关键词:农村土地;模式差异;模式匹配;语义相似度;实例统计
中图分类号: S127文献标志码: A文章编号:1002-1302(2014)09-0391-04
收稿日期:2013-11-18
基金项目:国家科技支撑计划(编号:2012BAJ23B04)
。
作者简介:王强(1988—),男,河南信阳人,硕士研究生,主要从事空间数据语义整合研究。E-mail:yethde@163.com。
通信作者:朱华吉,博士,副研究员,主要从事时态GIS理论研究。E-mail:zhuhuaji@126.com。随着我国经济快速发展,国土部门的业务范围不断扩大,积累的农村土地利用数据也越来越多。这些地理数据往往是由不同部门采用各自的数据管理软件,按照各自行业标准采集和管理,没有统一的标准与规范,缺乏应有的沟通和信息流动,使跨平台的数据交换出现困难[1]。建立农村土地利用数据共享机制,集成多源异构土地利用数据,有助于掌握农村土地利用动态变化、耕地总量动态平衡情况,便于监测、预测土地类型的变化趋势和对土地利用情况进行分析,对农村土地的科学管理具有重要意义。本研究讨论了数据集成过程中模式匹配的方法和作用,通过分析农村土地利用数据模式的差异类型提出了基于元素和实例统计相结合的复合匹配方法,给出元素匹配中元素语义相似度的计算公式,设计了不同类型属性的统计参数,旨在寻找正确的匹配模式,以便数据集成。
1模式及模式匹配
模式是指按照某种结构组织起来的多个元素的集合,通常由数据库表、列、类或XML元素、属性等关联元素集组成[2]。模式匹配是指从2个或多个模式中确定相关元素在语义上的对应关系,并声明其具体映射过程,其核心在于计算模式间的相似度。以给定的2个模式元素集合S={S1,S2,…,Sn}和T={T1,T2,…,Tm}作为输入,发现语义相关模式元素S′、T′ ,并给出它们之间的映射关系,即完成一个模式匹配过程。
目前大多数应用系统中的模式匹配任务是由用户手动实现的。为了满足日益迫切的现实需要和尽量减少模式匹配过程中用户的参与,人们对模式匹配问题进行了一系列研究,并提出多种自动或半自动匹配方法。根据信息来源和种类,现有模式自动匹配方法可划分为基于元素的匹配方法、基于实例的匹配方法、组合式匹配方法等三大类[3]。
基于元素的匹配方法仅依据模式元素本身所具有的信息来发现和确定语义相关的模式元素。这些信息主要包括元素名称、元素描述性说明信息、约束信息(如数据类型、取值范围)等。基于实例的匹配方法是利用数据实例为匹配任务提供语义线索,分为实例概括统计和实例内容统计2种方法。组合式匹配方法则包含基于元素和基于实例的方法,更灵活,效果往往也更好。
针对组合式匹配方法,SemInt系统利用神经网络技术通过分析字段或属性的约束和实例统计信息来发现不同数据库中的相关字段,该系统可以自动执行属性匹配的整个过程,不需要用户参与。但由于该过程须要大量的训练学习处理,容易产生类似于 m ∶n 的不确切匹配候选情况,进一步增加用户对匹配结果的核对和校正时间[4]。COMA平台期望以最优的策略对不同匹配方法产生的匹配结果进行综合利用,详细讨论组合匹配的基本过程以及可采取的组合策略类型,提供一个扩展性良好的平台来综合各种方法的结果[5]。LSD系统先通过手工给出的匹配关系和数据实例训练学习器,用训练好的学习器产生新的匹配关系,最后结合多个学习器给出的映射规则获取最终匹配结果。尽管其准确性较高,但它需要专家知识才能完成人工训练,并且对于大型的应用来说很浪费时间[6]。
组合式匹配可以在一定程度上提高匹配效果,但随着组合信息和方法的增加,系统复杂性也将随之增加。由于多种来源的信息具有不同的表达形式,一般并不能直接被应用于混合匹配,而须要制定高效的策略和规则对其进行规范化处理。复合匹配是以单个匹配方法为基础的,为保证其效率和效果,不仅要尽可能地提高每个成员匹配方法的效率和效果,而且应该选择正确的执行顺序,制定合理的结果重用和组合策略。
2数据模式差异分析
模式是对数据基本种类和特征的概括性描述,反映的是各类数据的结构、属性、联系、约束。由于土地利用数据是由不同单位根据自身实际需要设计数据模型,必然会产生不同的模式。数据采集单位用不同属性字段表达相同的地物类别,或用同一属性字段表达不同的空间地物,即存在“同名异物”和“同物异名”问题。数据应用部门对提供的数据模式进行不同的重构处理,如重新规划要素类,为要素类增加或删除属性字段,更改属性约束、取值范围等。综合来看,土地利用数据的模式差异主要表现在以下方面[7]。
2.1概括差异
概括是在定义类型时,将具有公共属性和操作特征的几种类型抽象出来,形成一种更一般的超类的机制。当设计者采用不同的概括层次描述现实世界中的相关实体时,将产生概括差异。如表1中定义的要素类面状地物,既可以表示几何形状为面状的地类图斑,也可以表示具有面积的线状地物,还可以表示因为比例尺不能上图而面积过大不能舍弃的零星地物,表2中的要素类只表示地类图斑。
2.2聚集差异
聚集是将几个不同特征的子对象组合在一起形成一个在语义水平上更高的双亲对象。当一个定义的要素类相当于另一个或多个要素类的聚集结果时,将产生聚集差异。如要素类“道路”和要素类“公路”,前者中一个要素的空间形态和属性是后者若干个要素的空间形态和属性特征的聚合或总和。endprint
2.3描述差异
描述差异是指不同要素类采用不同数量或含义的属性项来描述和刻画相同现象的不同特征。表1、表2中,面状地物要素类和地类图斑要素类分别采用不同的属性集合 (几何型、标志码、地类名称、变更时间、地类代码、毛面积)和 属性集合(几何型、标志码、要素代码、地类名称、地类编码、图斑面积)来刻画地理要素的属性和空间特征。
2.4命名差异
在模式设计或定义时,为明确模式元素 (要素类、属性等)的含义,并与其他元素相区别,通常为模式元素赋予相应表1海南省琼海市大路镇1996年面状地物(要素类A)
2.5约束差异
当要素类对相同概念或关系采用不同约束条件(如空间要素的几何类型、属性的数据类型、长度、取值范围等)时,将产生约束差异。例如,将待入库的数据进行数据要素编码时,2个数据库分别采用数值型和字符型来记录要素的编码值。
此外,如果2个关系(表)中存在共同的数据实例,则可认为这2个关系之间存在匹配关系,然后根据数据实例进一步确定这2个关系的属性匹配关系。因此,数据实例对揭露数据模式匹配关系具有重要意义。表1、表2中数据实例的差异主要表现在外延差异、量纲差异、精度差异、表达差异、分段差异等方面。
3农村土地利用数据的模式匹配
从地理信息系统(GIS)的观点看,一个典型的土地利用数据模式一般包含几何型、要素类、属性等3种模式元素。而几何型又可被视为要素类的一个属性。按照不同模式结构层次分类,将要素类(关系表)当作底层元素时,属性(字段)可以看作是它的实例;将属性(字段)作为底层元素时,数据记录即为它的实例。
将农村土地利用数据模式分为要素类和属性2层分别进行元素和实例的匹配,计算其元素相似度、约束相似度、实例相似度,通过最大相似度建立起模式匹配关系。
3.1基于元素的匹配
基于元素的匹配技术是对单个模式元素进行匹配的。对于第1个输入模式的每个元素,基于元素的匹配在第2个输入模式中确定匹配元素。在最简单的情况下,仅考虑粒度的最底层元素也叫原子层,如 XML 模式中的属性或关系模式中的列。但其也不只限于原子层,也可应用于高层(非原子层)元素。高层粒度包括文件记录、实体、类、关系表、XML 元素。
3.1.1元素名称匹配“如果2个元素的名称完全相同,则它们存在匹配关系”,这是大多数应用系统中常使用的匹配方法之一。元素名称一般是一串中文字符串即语句。语句相似度是指2个语句的相似程度。相似度达到某个设定阀值时,就认为这2个语句相似。一般语句相似度计算首先对语句进行分割,通过计算关键词词形、词义相似度,再赋予它们不同的权重得到语句的相似度[8]。
对于词形相似度,可以通过 Q-grams、编辑距离(edit distance)、Jaro 距离、Smith-Waterman 距离等字符串比较方法来衡量。对于词义相似度,由于名称之间可能存在词义相同、词义包含、词义相交等多种词义关系,因此所需的评价方法相对比较复杂,需要语义词典支持,如 WordNet、知网等。
3.1.1.1基于词形的相似度计算设语句S1、S2分别可被切分为m、n个词语,即,S1={c1,c2,…,cm},S1={c′1,c′2,…,c′n}、则S1、S2的相似度可通过下式计算:
3.1.1.2基于词义的相似度计算设p1、p2是词语c1、c′1的2个义原[9](描述词语语义的最小单位),其相似度如下。
3.1.2元素约束匹配模式中的属性元素通常还含有一些约束信息,如数据类型、值域、唯一性、可选性、关系类型等,它们是一种重要的语义信息来源。因为在模式设计时相同含义的属性很可能被赋予相似的约束信息,所以可以将其作为属性相似性的判断依据来确定是否相关。下面进一步分析这些信息的形式及其在模式匹配中的作用。
3.1.2.1属性类型作为属性的重要描述信息,一般相同属性具有相同的属性类型。但这并不代表不同类型的属性不会存在对应关系,如浮点型属性和双精度型属性存储的可能都是一定精度的面积数据,“char”型属性和“string”型属性可能都存储英文字符型数据;常见日期型数据可以用字符串表示,也可以用专门的日期型属性存储。
3.1.2.2值域由于应用背景、数据参考源、数据存储标准的不同,源数据和目标数据在描述同一空间实体状态时会有不同的属性值域。
3.1.2.3唯一性属性取值的唯一性是确定候选匹配的另一种有效方法。这样的属性只能与具有同样约束的属性匹配。
3.1.2.4关系约束关系约束是揭示属性之间联系的语义来源。例如,已知A、B之间具有1 ∶1的关系,并且A与C匹配,那么B与C之间也可能存在匹配关系。
基于约束的属性相似性计算方法如下:
Sim(A,B)=∑ni=1Sim(αi,βi)/n。(4)
式中:Sim(αi,βi)为属性元素第i对对应约束因子相似度。
单独使用约束信息经常会导致不完全的n ∶m映射,因为一个模式中可能有多个具有可比约束的元素。然而这种方法能够限制匹配候选者的数量,而且可与其他匹配程序相结合(如名称匹配程序)[10]。
3.2基于实例统计的匹配
基于实例的匹配技术考虑的是实例级数据,通过这些实例级数据可以认识到模式元素表示的内容和意义。在可用模式信息非常有限的情况下,尤其是对于半结构化数据,它们是非常有意义的。特别是在没有给定任何模式信息的情况下,可以通过实例数据手工或自动构造出模式。
实例级数据给出了模式元素真实内容的精确描述,可以进一步分析模式元素的内容和意义,尤其当只有有限的可用模式信息时,通常这类情况都是半结构化数据。这种特殊情况下没有给出模式,只给出可由实例数据手工构建的模式,如数据指南或从 XML文档中构建的近似模式图;甚至当可获取充裕的模式信息时,实例级匹配对于发现错误的模式信息的解释也非常有效。例如,在看似同样合理的模式级匹配中,通过选择与匹配实例更为相似的元素而避免产生歧义。
对于可能匹配的属性,若其数据类型为数值型如毛面积、图斑面积,其统计概括信息主要包括最大值、最小值、平均值、标准差等,分别计算要素类A、B数值型匹配属性的所有实例在这4个统计量上的值(表3)。设定差异阈值,统计量差异小于阈值则对应属性是匹配的。endprint
2.3描述差异
描述差异是指不同要素类采用不同数量或含义的属性项来描述和刻画相同现象的不同特征。表1、表2中,面状地物要素类和地类图斑要素类分别采用不同的属性集合 (几何型、标志码、地类名称、变更时间、地类代码、毛面积)和 属性集合(几何型、标志码、要素代码、地类名称、地类编码、图斑面积)来刻画地理要素的属性和空间特征。
2.4命名差异
在模式设计或定义时,为明确模式元素 (要素类、属性等)的含义,并与其他元素相区别,通常为模式元素赋予相应表1海南省琼海市大路镇1996年面状地物(要素类A)
2.5约束差异
当要素类对相同概念或关系采用不同约束条件(如空间要素的几何类型、属性的数据类型、长度、取值范围等)时,将产生约束差异。例如,将待入库的数据进行数据要素编码时,2个数据库分别采用数值型和字符型来记录要素的编码值。
此外,如果2个关系(表)中存在共同的数据实例,则可认为这2个关系之间存在匹配关系,然后根据数据实例进一步确定这2个关系的属性匹配关系。因此,数据实例对揭露数据模式匹配关系具有重要意义。表1、表2中数据实例的差异主要表现在外延差异、量纲差异、精度差异、表达差异、分段差异等方面。
3农村土地利用数据的模式匹配
从地理信息系统(GIS)的观点看,一个典型的土地利用数据模式一般包含几何型、要素类、属性等3种模式元素。而几何型又可被视为要素类的一个属性。按照不同模式结构层次分类,将要素类(关系表)当作底层元素时,属性(字段)可以看作是它的实例;将属性(字段)作为底层元素时,数据记录即为它的实例。
将农村土地利用数据模式分为要素类和属性2层分别进行元素和实例的匹配,计算其元素相似度、约束相似度、实例相似度,通过最大相似度建立起模式匹配关系。
3.1基于元素的匹配
基于元素的匹配技术是对单个模式元素进行匹配的。对于第1个输入模式的每个元素,基于元素的匹配在第2个输入模式中确定匹配元素。在最简单的情况下,仅考虑粒度的最底层元素也叫原子层,如 XML 模式中的属性或关系模式中的列。但其也不只限于原子层,也可应用于高层(非原子层)元素。高层粒度包括文件记录、实体、类、关系表、XML 元素。
3.1.1元素名称匹配“如果2个元素的名称完全相同,则它们存在匹配关系”,这是大多数应用系统中常使用的匹配方法之一。元素名称一般是一串中文字符串即语句。语句相似度是指2个语句的相似程度。相似度达到某个设定阀值时,就认为这2个语句相似。一般语句相似度计算首先对语句进行分割,通过计算关键词词形、词义相似度,再赋予它们不同的权重得到语句的相似度[8]。
对于词形相似度,可以通过 Q-grams、编辑距离(edit distance)、Jaro 距离、Smith-Waterman 距离等字符串比较方法来衡量。对于词义相似度,由于名称之间可能存在词义相同、词义包含、词义相交等多种词义关系,因此所需的评价方法相对比较复杂,需要语义词典支持,如 WordNet、知网等。
3.1.1.1基于词形的相似度计算设语句S1、S2分别可被切分为m、n个词语,即,S1={c1,c2,…,cm},S1={c′1,c′2,…,c′n}、则S1、S2的相似度可通过下式计算:
3.1.1.2基于词义的相似度计算设p1、p2是词语c1、c′1的2个义原[9](描述词语语义的最小单位),其相似度如下。
3.1.2元素约束匹配模式中的属性元素通常还含有一些约束信息,如数据类型、值域、唯一性、可选性、关系类型等,它们是一种重要的语义信息来源。因为在模式设计时相同含义的属性很可能被赋予相似的约束信息,所以可以将其作为属性相似性的判断依据来确定是否相关。下面进一步分析这些信息的形式及其在模式匹配中的作用。
3.1.2.1属性类型作为属性的重要描述信息,一般相同属性具有相同的属性类型。但这并不代表不同类型的属性不会存在对应关系,如浮点型属性和双精度型属性存储的可能都是一定精度的面积数据,“char”型属性和“string”型属性可能都存储英文字符型数据;常见日期型数据可以用字符串表示,也可以用专门的日期型属性存储。
3.1.2.2值域由于应用背景、数据参考源、数据存储标准的不同,源数据和目标数据在描述同一空间实体状态时会有不同的属性值域。
3.1.2.3唯一性属性取值的唯一性是确定候选匹配的另一种有效方法。这样的属性只能与具有同样约束的属性匹配。
3.1.2.4关系约束关系约束是揭示属性之间联系的语义来源。例如,已知A、B之间具有1 ∶1的关系,并且A与C匹配,那么B与C之间也可能存在匹配关系。
基于约束的属性相似性计算方法如下:
Sim(A,B)=∑ni=1Sim(αi,βi)/n。(4)
式中:Sim(αi,βi)为属性元素第i对对应约束因子相似度。
单独使用约束信息经常会导致不完全的n ∶m映射,因为一个模式中可能有多个具有可比约束的元素。然而这种方法能够限制匹配候选者的数量,而且可与其他匹配程序相结合(如名称匹配程序)[10]。
3.2基于实例统计的匹配
基于实例的匹配技术考虑的是实例级数据,通过这些实例级数据可以认识到模式元素表示的内容和意义。在可用模式信息非常有限的情况下,尤其是对于半结构化数据,它们是非常有意义的。特别是在没有给定任何模式信息的情况下,可以通过实例数据手工或自动构造出模式。
实例级数据给出了模式元素真实内容的精确描述,可以进一步分析模式元素的内容和意义,尤其当只有有限的可用模式信息时,通常这类情况都是半结构化数据。这种特殊情况下没有给出模式,只给出可由实例数据手工构建的模式,如数据指南或从 XML文档中构建的近似模式图;甚至当可获取充裕的模式信息时,实例级匹配对于发现错误的模式信息的解释也非常有效。例如,在看似同样合理的模式级匹配中,通过选择与匹配实例更为相似的元素而避免产生歧义。
对于可能匹配的属性,若其数据类型为数值型如毛面积、图斑面积,其统计概括信息主要包括最大值、最小值、平均值、标准差等,分别计算要素类A、B数值型匹配属性的所有实例在这4个统计量上的值(表3)。设定差异阈值,统计量差异小于阈值则对应属性是匹配的。endprint
2.3描述差异
描述差异是指不同要素类采用不同数量或含义的属性项来描述和刻画相同现象的不同特征。表1、表2中,面状地物要素类和地类图斑要素类分别采用不同的属性集合 (几何型、标志码、地类名称、变更时间、地类代码、毛面积)和 属性集合(几何型、标志码、要素代码、地类名称、地类编码、图斑面积)来刻画地理要素的属性和空间特征。
2.4命名差异
在模式设计或定义时,为明确模式元素 (要素类、属性等)的含义,并与其他元素相区别,通常为模式元素赋予相应表1海南省琼海市大路镇1996年面状地物(要素类A)
2.5约束差异
当要素类对相同概念或关系采用不同约束条件(如空间要素的几何类型、属性的数据类型、长度、取值范围等)时,将产生约束差异。例如,将待入库的数据进行数据要素编码时,2个数据库分别采用数值型和字符型来记录要素的编码值。
此外,如果2个关系(表)中存在共同的数据实例,则可认为这2个关系之间存在匹配关系,然后根据数据实例进一步确定这2个关系的属性匹配关系。因此,数据实例对揭露数据模式匹配关系具有重要意义。表1、表2中数据实例的差异主要表现在外延差异、量纲差异、精度差异、表达差异、分段差异等方面。
3农村土地利用数据的模式匹配
从地理信息系统(GIS)的观点看,一个典型的土地利用数据模式一般包含几何型、要素类、属性等3种模式元素。而几何型又可被视为要素类的一个属性。按照不同模式结构层次分类,将要素类(关系表)当作底层元素时,属性(字段)可以看作是它的实例;将属性(字段)作为底层元素时,数据记录即为它的实例。
将农村土地利用数据模式分为要素类和属性2层分别进行元素和实例的匹配,计算其元素相似度、约束相似度、实例相似度,通过最大相似度建立起模式匹配关系。
3.1基于元素的匹配
基于元素的匹配技术是对单个模式元素进行匹配的。对于第1个输入模式的每个元素,基于元素的匹配在第2个输入模式中确定匹配元素。在最简单的情况下,仅考虑粒度的最底层元素也叫原子层,如 XML 模式中的属性或关系模式中的列。但其也不只限于原子层,也可应用于高层(非原子层)元素。高层粒度包括文件记录、实体、类、关系表、XML 元素。
3.1.1元素名称匹配“如果2个元素的名称完全相同,则它们存在匹配关系”,这是大多数应用系统中常使用的匹配方法之一。元素名称一般是一串中文字符串即语句。语句相似度是指2个语句的相似程度。相似度达到某个设定阀值时,就认为这2个语句相似。一般语句相似度计算首先对语句进行分割,通过计算关键词词形、词义相似度,再赋予它们不同的权重得到语句的相似度[8]。
对于词形相似度,可以通过 Q-grams、编辑距离(edit distance)、Jaro 距离、Smith-Waterman 距离等字符串比较方法来衡量。对于词义相似度,由于名称之间可能存在词义相同、词义包含、词义相交等多种词义关系,因此所需的评价方法相对比较复杂,需要语义词典支持,如 WordNet、知网等。
3.1.1.1基于词形的相似度计算设语句S1、S2分别可被切分为m、n个词语,即,S1={c1,c2,…,cm},S1={c′1,c′2,…,c′n}、则S1、S2的相似度可通过下式计算:
3.1.1.2基于词义的相似度计算设p1、p2是词语c1、c′1的2个义原[9](描述词语语义的最小单位),其相似度如下。
3.1.2元素约束匹配模式中的属性元素通常还含有一些约束信息,如数据类型、值域、唯一性、可选性、关系类型等,它们是一种重要的语义信息来源。因为在模式设计时相同含义的属性很可能被赋予相似的约束信息,所以可以将其作为属性相似性的判断依据来确定是否相关。下面进一步分析这些信息的形式及其在模式匹配中的作用。
3.1.2.1属性类型作为属性的重要描述信息,一般相同属性具有相同的属性类型。但这并不代表不同类型的属性不会存在对应关系,如浮点型属性和双精度型属性存储的可能都是一定精度的面积数据,“char”型属性和“string”型属性可能都存储英文字符型数据;常见日期型数据可以用字符串表示,也可以用专门的日期型属性存储。
3.1.2.2值域由于应用背景、数据参考源、数据存储标准的不同,源数据和目标数据在描述同一空间实体状态时会有不同的属性值域。
3.1.2.3唯一性属性取值的唯一性是确定候选匹配的另一种有效方法。这样的属性只能与具有同样约束的属性匹配。
3.1.2.4关系约束关系约束是揭示属性之间联系的语义来源。例如,已知A、B之间具有1 ∶1的关系,并且A与C匹配,那么B与C之间也可能存在匹配关系。
基于约束的属性相似性计算方法如下:
Sim(A,B)=∑ni=1Sim(αi,βi)/n。(4)
式中:Sim(αi,βi)为属性元素第i对对应约束因子相似度。
单独使用约束信息经常会导致不完全的n ∶m映射,因为一个模式中可能有多个具有可比约束的元素。然而这种方法能够限制匹配候选者的数量,而且可与其他匹配程序相结合(如名称匹配程序)[10]。
3.2基于实例统计的匹配
基于实例的匹配技术考虑的是实例级数据,通过这些实例级数据可以认识到模式元素表示的内容和意义。在可用模式信息非常有限的情况下,尤其是对于半结构化数据,它们是非常有意义的。特别是在没有给定任何模式信息的情况下,可以通过实例数据手工或自动构造出模式。
实例级数据给出了模式元素真实内容的精确描述,可以进一步分析模式元素的内容和意义,尤其当只有有限的可用模式信息时,通常这类情况都是半结构化数据。这种特殊情况下没有给出模式,只给出可由实例数据手工构建的模式,如数据指南或从 XML文档中构建的近似模式图;甚至当可获取充裕的模式信息时,实例级匹配对于发现错误的模式信息的解释也非常有效。例如,在看似同样合理的模式级匹配中,通过选择与匹配实例更为相似的元素而避免产生歧义。
对于可能匹配的属性,若其数据类型为数值型如毛面积、图斑面积,其统计概括信息主要包括最大值、最小值、平均值、标准差等,分别计算要素类A、B数值型匹配属性的所有实例在这4个统计量上的值(表3)。设定差异阈值,统计量差异小于阈值则对应属性是匹配的。endprint