模式匹配的制作方法

文档序号:6566883阅读:147来源:国知局

专利名称::模式匹配的制作方法
技术领域
:本发明涉及数据库管理方法和系统,更具体地说,涉及操作对来自多个数据源的数据进行集成的数据库管理系统的方法。
背景技术
:随着电子数据存储越来越普及,对来自多个数据源的数据进行集成的问题变得更加严重。根据与网络上的信息集成相关的最朽UCAI-03研讨会的前言"在共同数据管理、国家安全、反恐和人类基因组计划等多个领域内,对异构数据库和信息源的有效集成已被认为是最紧迫的挑战。将集成框架升级为大规模应用的最重要的障碍在于以下的事实数据源的自主和分散特性将中介限制为在具有与它们试图集成的信息源的结构、范围、概况、质量和相互关系相关的极少量信息的情况下进行操作。"(参见www.isi.edu/info-agents/workshops/ijcai03/proceedings.htm)该问题具有很长的历史,并存在如下两种观点基于实例(或记录)的方法和基于模式(schema)(或本体论(ontology))的方法。术语"模式"可以指代用于表示计算机化信息存储系统中的与真实世界对象(例如雇员)有关的信息的框架。模式(通常)包括适用于每个对象的多个属性(例如工资单编号、名字、姓氏、年龄等),还可能包括与对属性值的限制有关的信息。数据源通过一组对象的相关联的属性值来表示这些对象。在USA公共健康领域中,当合并(可能)针对同一患者的不同记录时会出现记录链接(linkage)的问题。Newcombe[l]提出了基于频率的方法并且该方法后来被Fellegi和Sunter[2]进行了形式化(formalise)。这些方法假设两个数据源具有共同属性,并共同适用于商业数据库中的所谓的"合并/清除(merge/purge)"问题,以滤除重复条目。该方法主要用于根据在数据库中的每个属性的域(即,列中出现的所有值的集合)中找到匹配值的可能性来计算该属性的权重。初始公式处理二元匹配(真/假),但扩展到分类匹配(categoricalmatch)(—小组值中的一个)和连续匹配(例如,区间[O,l]中的一个数)。通过假设对于不同属性匹配的记录之间的条件独立性,可以估计各属性匹配的条件概率,假设这些记录是相同的(或不同的),从而根据匹配的加权总和来找到用于将两个记录分类为匹配或不匹配的阈值。该估计可以基于最小误差概率、最大期望、效用(错误决策的代价)等一参见[3]的综述。这些方法隐含地考虑了数据库模式的知识,因为这些方法假设各记录包括相同的属性集合。通过考虑对取自两个或更多个数据源的数据进行组合(例如,对异构数据库的集成)来将记录链接问题扩展到分析链接(也称为实体匹配)。Dey等[4]基于与前一段中概述的记录链接工作相同的框架,给出了概率方法的概要。由于属性的匹配对是已知的,因此也假设了模式的知识。这些方法利用多种技术来试图对属性进行匹配,例如使名字和地址的形式标准化,以及采用启发法(例如前n个字符匹配、共同的子字符串、编辑距离低于指定阈值)。Bilenko、Mooney等[5]描述了自适应匹配函数"SoftTF-IDF",其考虑了域内的相似和相同单词的频率。也可以通过查看标签(即属性名称)和与许可值相关联的约束在模式级求解该问题。己经提出了对该问题的自动化进行辅助的多个工具,包括画Cupid问-Glue[7]-OntoBuilder[8]-Prompt[9]Rahm和Bemstein[lO]通过源自以下领域的方法考察了这些工具中的一些,并将模式匹配分类为三个主要的组一信息获取-利用基于距离的匹配技术(例如编辑距离)来克服准确性不足的"基于关键字"的匹配。这些技术假设都利用了属性域之间的非常简单的映射。_机器学习-利用基于属性的相关联的值之间的相似性来创建属性之间的映射的算法。贝叶斯(bayesian)分类器是最常用的方法(例如GLUE[7]和Autoplex[ll])。一图论-通过将图式(schemata)表示为树或图的形式,例如通过估计叶节点的祖先的相似性而估计XMLDTD中的叶节点的相似性的TreeMatch算法[6]。还有多种将上述分类的方法进行组合的模式匹配的混合方法。Gal等[12]认识到需要包括匹配过程中的不确定性,并概述了模式集成的模糊框架。Gal还考察了对图式之间的匹配进行评价的问题,与人实现的抽象的"理想"匹配进行比较。SearchSoftwafeAmerica(现在使用的名称为"IdentitySystems")销售了一种名字和地址匹配包"自动地克服拼写中出现的大量问题、打字和转录错误;昵称、同义词和縮写;外文和英语化词;前缀和后缀变化;词的链接(concatenation)和分割;噪声词和标点;格(casing)和字符集的变化"(参见h邻:〃www.identitysystems.com/)。虽然未提供全部技术细节,但是该软件似乎实现了基于上述标准概率记录链接算法的匹配服务。同一作者的另外两篇论文(Gal等[13]和[14])通过对一个模式中的属性与第二模式中的"类似"属性之间的映射进行组合来考察图式之间的映射。该映射被表示为模糊关系一其结论之一是该映射必需对称的。这些论文建议采用简单的加权平均来将属性对之间的映射合并为图式之间的映射。在某些情况下,它们考虑了匹配属性中的更宽范围的因素,考虑了属性名称以及属性值。它们不涉及实体之间的映射一实际上,从实验(Gal等[13],第6节)可以看出,它们没有考虑实体之间的映射,而是关注(属性对之间的)各个近似映射与人定义的"最佳映射"之间的关系(Gal等[13],第6.3节)。YingDing和SchubertFoo[15]是针对万维网中的本体映射问题(认为本体大致等价于模式)的研究论文。所研究的方法依赖于人工输入(参见表2)并且没有解决属性值之间的映射中以及对象之间的映射中的不确定性的问题。该论文主要针对本体维护和评价问题。现有技术的专利文献包括以下文献US2005060332(Bernstein等),其描述了用于模式匹配(而不是对象匹配)的方法。其利用多个属性之间的映射,然后使用任意公式将这些映射组合为图式之间的映射的总体量度。US2004158567(Dettinger等),其描述了通过检查与来自一个模式的属性相关联的多个约束并仅(从第二模式)建议其值符合这些约束的候选属性来帮助人工开发多个图式之间的映射的系统。这些属性之间的多个映射是明确的,并且没有考虑不确定性;以及US2005055369(Gorelik等),其涉及关系数据库中的模式匹配问题并产生在不同数据库中表示的对象和"通用"对象集合(UDO)之间的映射。属性之间的映射是明确的,即,不涉及任何不确定性,并且如果某个映射链接的实体的比例大于某一阈值则选择该映射。利用对数据库的连接(join)操作(即,通过利用对任何部分映射都没有作用域的明确等式)对所接受的多个属性之间的多个映射进行组合,以给出多个对象之间的映射。问题在于如何最好得创建(近似地)表示使用不同图式的相同的多个对象集合(或它们对象集合重叠,至少部分地重叠)的两个(或更多个)数据源之间的映射,即,这两个数据源具有不同的属性集合。通常,现有技术的方法基于记录匹配,这些方法假设模式的至少某些知识,即需要指定与另一数据库中的属性相对应的至少一些属性。
发明内容根据本发明,提供了一种操作对来自多个数据源的数据进行集成的据库管理系统的方法,所述数据源被至少部分地结构化,并且包括多个数据对象,各个数据对象包括与实体的一个或更多个属性相关的数据;所述方法包括以下步骤(a)针对第一数据源和第二数据源中的每一个,选择初始属性或属性的组合;(b)针对所述第一数据源和所述第二数据源的所述属性或属性的组合,从可能的匹配函数的集合中自动选择一候选匹配函数,所述匹配函数与所述第一数据源中的与一个或更多个属性有关的数据和所述第二数据源中的与一个或更多个属性有关的数据之间的可能的映射相关;(c)将所述候选匹配函数应用于所述第一数据源中的与所述选择的属性或属性的组合有关的数据,以创建所述第二数据源中的与所述选择的属性或属性的组合有关的可能的数据;(d)根据所述可能的数据和所述第二数据源中的实际数据获得与所述可能的数据和所述实际数据之间的不一致性量有关的不一致性量度;(e)从所述可能的匹配函数的集合中自动选择一个或更多个不同的候选匹配函数,并针对所述一个或更多个不同的候选匹配函数重复步骤(c)和步骤(d);(f)根据所述候选匹配函数建立具有表示最低不一致性量的不一致性量度的候选匹配函数,并将所述候选匹配函数指定为可能性较大的(probable)候选匹配函数;(g)针对所述第一数据源和所述第二数据源中的每一个选择一个或更多个其他属性或属性的组合,并针对所述一个或更多个其他属性或属性的组合执行步骤(b)至步骤(f),从而建立针对所述一个或更多个其他属性或属性的组合的可能性较大的候选匹配函数;(h)参照所述建立的可能性较大的候选匹配函数中的一个或更多个,确定所述第一数据源的数据对象和所述第二数据源的数据对象之间的可能性较大的对应关系。此外,根据本发明,还提供了一种用于对来自多个数据源的数据进行集成的数据库管理系统,所述数据源被至少部分地结构化,并且包括多个数据对象,各个数据对象都包括与实体的一个或更多个属性有关的数据;所述系统包括(a)用于针对第一数据源和第二数据源中的每一个选择初始属性或属性的组合的装置;(b)用于针对所述第一数据源和所述第二数据源的所选择的属性或属性的组合,从可能的匹配函数的集合中自动选择一候选匹配函数的装置,所述匹配函数与所述第一数据源中的与一个或更多个属性有关的数据和所述第二数据源中的与一个或更多个属性有关的数据之间的可能的映射相关;(c)用于将所述候选匹配函数应用于所述第一数据源中的与所述选择的属性或属性的组合有关的数据,以创建所述第二数据源中的与所述选择的属性或属性的组合有关的可能的数据的装置;(d)用于根据所述可能的数据和所述第二数据源中的实际数据获得与所述可能的数据和所述实际数据之间的不一致性量有关的不一致性量度的装置;(e)用于从所述可能的匹配函数的集合中自动选择一个或更多个不同的候选匹配函数,并安排装置(c)和(d)对所述一个候选匹配函数或所述多个不同的候选匹配函数中的每一个进行处理的装置;(f)用于根据所述候选匹配函数建立具有表示最低不一致性量的不一致性量度的候选匹配函数,并将所述候选匹配函数指定为可能性较大的候选匹配函数的装置;(g)用于针对所述第一数据源和所述第二数据源中的每一个选择一个或更多个其他属性或属性的组合,并安排装置(b)到(f)对所述一个其它属性或所述多个其他属性或属性的组合中的每一个属性进行处理,从而建立针对所述一个或更多个其他属性或属性的组合的可能性较大的候选匹配函数的装置;(h)用于参照所述建立的可能性较大的候选匹配函数中的一个或更多个,确定所述第一数据源的数据对象和所述第二数据源的数据对象之间的可能性较大的对应关系的装置。以下描述的本发明的实施方式采用基于记录匹配的方法,该方法不依赖于或不需要假设模式的任何知识,即,用户不需要指定哪些属性是匹配的。而是可以使用匹配函数库找到来自不同数据源的属性之间的可能对应关系。这些匹配函数可以被预编程,或者可以由机器学习系统创建。通过模糊特性的量度和属性之间的匹配的概率对(具有相关联的匹配函数的)可能匹配属性进行分级。根据本发明的优选实施方式,上述方法的各个步骤都可以自动地执行,因此该方法可以称为是完全计算机实现的。然而,可以预见的是,本发明的某些其他实施方式可以允许"人工地"(即,例如由人类用户)执行一个或更多个步骤,例如针对所述数据源中的一个或两者选择初始属性的步骤。这种实施方式可以称为是部分计算机实现的。本发明的优选实施方式利用组合了模糊技术和贝叶斯技术的软计算方法来表示和更新两个数据源之间的对应关系。更新可以是利用属性对的分级列表和匹配函数的迭代过程。可以通过监测从一个数据源到第二个数据源的映射的模糊熵来停止该过程。本发明的优选实施方式的一个重要特征是这些实施方式可以进行下述操作的方式组合来自不同数据源的属性之间的"部分匹配"以生成对这些数据源中的对象之间的匹配的估计。对于第一数据源中的每个对象,可以在第二数据源中找到可能匹配的模糊集合。这可以利用首先考虑属性值之间的可能匹配并建立这些映射的分级顺序的算法来实现。这些映射可能或者预期是不确定性的,从而属性值可以映射到可能属性值的模糊集合。这不必是对称的。选择最佳映射以用于下一阶段。在第二阶段,针对所选择的每个属性映射,基于一对象的新属性映射(假设已经建立了该对象的新属性映射)的模糊概率来更新该对象的匹配。利用本发明的实施方式可以集成两个结构化或半结构化的数据源。数据可以存储在数据库中或非数据库源(XML、网络、半结构化库等)中,或者甚至可以作为文档库中的自由文本。在执行任务(例如回答询问、编纂报告、执行电子交易、比较来自不同源的产品等)时经常需要利用一个以上的源。对象(即,与元数据标签相关联的值)的分类结构和属性(特性)可以用于指导信息的集成。即使不同的层级采用不同的分类,也很可能存在一定程度的对应关系,并且设置在相似分类中的对象很可能具有相似的特性。例如,汽车工业和化学工业具有分别议定的电子数据交换标准(www.starstandard.org,www.cidx.org),这些标准在某些分类中几乎相同,在某些分类中重叠,而在其他分类中不相交。然而,完全可能的是第三方可能希望合并根据这两个不同标准进行了格式化的信息。类似的是,数字图书馆和在线书商参照相同的(结构化的)对象,但可能在分类以及所存储的有关每本书的细节方面有所不同。在缺乏共同议定的标准的情况下,两个数据源精确地遵循相同规范的情况是非常少见的。即使存在议定的规范,解释也可能不同-例如,考虑具有标签"shippingDate"的货物的电子订单。可能不清楚"shippingDate"是指货物送达用户的时间还是货物离开供应商的时间。在所存储的信息中的细微差别会引起额外的问题-例如分类目录可能将电话号码列为<area-code><local-number>,而另一目录可能仅列出<local-number〉。对于个人可會g歹!j为<surname〉,<initials〉或者歹U为<forename><surname>。因此,即使来自不同源的信息相同,直接语法匹配也不能解释出该信息。在对以下本发明的优选实施方式的描述中,将考虑具有相关联的特性(属性)的涉及对象的离散集合的两个信息源。特性可以用于将对象分组为多个类,该多个类进而可以形成某种分层结构。例如,数字图书馆或在线书店中的文档可以具有诸如作者、出版日期、标题、出版格式、ISBN、出版商等的特性中的一些或全部。分类目录中的饭店可以具有名称、地址、电话号码、以及可选的简介和诸如地点、菜单细节等的其它特性。产品目录中的条目可以具有名称、件号、价格、分类和简短描述。这些都是涉及真实世界的实体的结构化对象。给定已知(或假设)涉及基本的真实世界实体的相同集合的两个源,信息融合任务可以被认为是如何确定来自第一源或数据库(将其称为dbl)的对象是否涉及与来自第二源或数据库db2的对象相同的真实世界实体,以及确定多个特性如何对应(例如,author和composer可以几乎精确地对应于creator;business-name应该对应于company-name等)。给定两个对象集合的某些特性之间的可能映射,本发明的优选实施方式采用模糊更新技术来找到这两个对象集合之间的近似映射。可以利用迭代过程,在该迭代过程中,根据多个特性之间的对应关系的强度来选择该多个特性之间的可能映射。可以利用模糊熵的新量度来停止该过程。为了在下文中概述本发明的实施方式,将考虑以下情形,其中具有-两个结构化或半结构化的信息源dbl和db2,这两个信息源是涉及真实世界中的物品的大致相同集合的对象集合。这些对象具有属性(特性)。-用于识别属性值之间的相似性或一致性的候选过程(procedure)。对于dbl中的每个对象,生成db2中的对应对象的估计。优选的是,该估计是db2中的对象的模糊子集。该模糊集合可以根据需要转换成概率分布。该方法基于Leibniz提出的"不可识别的一致性",其可以总结如下如果不能彼此区分("辨别")两个对象,则这两个对象是相同的对象。这里,仅能够基于对象的属性值来区分开两个对象。假设源dbl和db2具有相同的属性集合。然后,如果来自dbl的对象与来自db2的对象相同的属性值,则断定它们涉及相同的真实世界的实体。如果属性值不同但可能的属性值的集合以某种方式相关,则可以找到对从dbl到db2的真实映射的近似。例如,在下面的表1和表2中,每一行都与由第一属性(表1中示出的源dbl中的"Employee-ID",表2中示出的源db2中的"Name")唯一标识的对象相对应。为了清楚而采用表格来表示,但同样可以使用XML、RDF或一些其他半结构化数据的表示。<table>tableseeoriginaldocumentpage16</column></row><table>为了建立这两个数据源dbl和db2之间的对应关系,首先注意到dbl中的"D-O-B"以格式的简单转换而明显地映射到db2中的"DateofBirth"。dbl中的"Jobtitle"下的某些条目大致对应于db2中的"Occupation"下的某些条目-例如"SoftwareEngineer"近似等价于"Programmer"。通过检査dbl中的属性和db2中的属性的值的整个集合,并通过利用预编程过程或者通过学习而査找从dbl属性值到db2属性值的精确或近似函数,可以找到这些映射。当确定对象之间的可能等价关系时更精确的映射是优选的,下面给出了确定映射的精度的新方法。最初,假设dbl中的各个对象与包含db2中的所有对象的模糊集合相对应-例如,具有employee-ID-1213的对象与{Bill/1,Bob/1,Ben/l,...}相对应,其中符号e/m表示具有成员m的元素e。上述集合表示最大不确定性的状态;这可以利用类似模糊熵的量度来量化。考虑到dbl中的"D-O-B"对应于db2中的"DateofBirth"的事实将对应于employee-ID=1213的集合改变为(Bill/1,Ben/1}(假设没有其他对象匹配D-O-B属性)。显然,该集合与先前的集合相比不确定性较小。添加SoftwareEngineer大致等价于Programmer这一信息将该集合改变为{Bill/x},其中x与SoftwareEngineer和Programmer之间的等价程度相关。类似的方法获得了dbl中的各个元素的近似对应关系。如果证明dbl中的对象不与db2中的任何对象相对应,则该集合为空;如果没有证明dbl中的对象不与db2中的任何对象相对应,则该集合将保留为整个db2。本发明的优选实施方式按照精度顺序利用可能的属性对,直到使得总体不确定性最小化为止。可以使这些实施方式对缺失信息、噪声数据或错误数据、以及dbl和db2所涉及的真实世界的实体的集合之间的不完全重叠具有鲁棒性。图1表示两个对象集合及其各自的属性之间的关系;图2表示两个对应域(co-domain)的元素和子集之间的关系;图3示出了可以在实现本发明的实施方式使执行的步骤;图4是示出针对附录2中所述的示例实现的各个匹配的演变的曲线具体实施例方式参照图1,假设具有分别来自数据源dbl和db2的两个对象集合A=…a"乂;禾口B,…W'并且希望建立从A到B的近似映射h。数据源dbl和db2可以在独立的数据库中,但应注意到,它们也可以来自同一数据库。为了建立A和B中的元素之间的对应关系,检查元素的特性(属性)。令A和B中的对象具有属性c,,..."仏...,并将关系定义为Ri:A—Cii=l...nASj:B—Djj叫…nB注意,这些是关系,即,它们可以是单值或多值。其示例可以是高度、重量、国籍、姓名、护照编号、电话号码等。没有假设关系Ri、Sj中有关A和B的信息相同或完全一致,但假设了这些关系中的一些反映了A和B中的对象的相似或相同的属性。因此,对于对应域(Q,Dj)对的某些选择,假设了针对C的每个元素返回D的子集(可能是模糊子集)的精确或近似匹配函数/^。,可以将其转换为给出对应于某个ceCi的元素位于子集(A...dk}^Dj中的概率的数值估计的质量分配。(即使^的输出不是单值,也将^称为函数)。显然,^可以是从对应域到对应域的映射,包括精确匹配或小的排列、截取等;另选的是,它们可以是更复杂的函数,可能是机器学习过程的输出。匹配的域的比例给出了域之间的重叠的指示,并因此给出了两个属性相对应的概率。如何导出h显然,如果精确地已知函数^.,则对于A中的每个元素Q,实施例1为了进行说明,将考虑利用由author-id(A)标识的作者集合和一对多关系的第一实施例<table>tableseeoriginaldocumentpage18</column></row><table>R3(author-id~>date-of-birth)_<table>tableseeoriginaldocumentpage18</column></row><table>该第一实施例还使用(来自另一数据源的)由具有一对多关系的真实姓名(B)标识的作家的集合Si(writer-real-name—ISBN)<table>tableseeoriginaldocumentpage18</column></row><table><table>tableseeoriginaldocumentpage19</column></row><table>假设存在将返回与特定书名相对应的ISBN集合的函数<table>tableseeoriginaldocumentpage19</column></row><table>以及将date-of-birth与year-of-birth进行匹配的明显函数(obviousfunction)&。为了将来自集合A的author-2链接到来自集合B的authorname,利用R,在集合中查找由该作者创作的书名,利用/^找到对应的ISBN,随后通过&追溯到writer(realname)。因此《(a涵c^)=(7Tze/謂S/6/eMaw}/z2(aw—))={0809596369,0785731547,0747511586}S'(/^(R,——)))={//C/s,M.Co—给定完整和确定的信息,可以选择额外的属性对来改进该映射。采用从date-of-birth到year-of-birth的明显映射(obviousmapping)将给出第二条证据《(("—)))=从而能够断定集合A中的a涵。W对应于集合B中的"G.附to。通常,必须考虑到/v是近似的并且可能不一致这一事实。例如,year-of-birth可能会缺失、不准确或不确定("bominthemid1860's(出生在19世纪60年代)")。采用上述实施例中的明确信息并允许匹配函数^中的灵活性可以给出<formula>formulaseeoriginaldocumentpage20</formula>其中,成员W分另ll反映了邓Decew76er〃S(15牟"万30禾卩/S6(J,M外之间的匹配程度。将各个所选择的大致视为与A中的元素相对应的、B中的元素的一条证据或观察值(observation)。由于该证据不是确定的,所以不能完全排除(或纳入)任何元素-所能够做的仅仅是更新A中的元素与B中的元素的给定子集相对应的概率。开始,针对任何元素ak能够进行的最通用的表述为该元素ak对应于B中的某个元素。即(对于所有的o,eB:1其中l表示A^eB的概率为1,或者如果将其表示为质量分配=B:1(注意,不完整性(即,质量到空集的分配)表示ak对应于B外部的元素)。这就是对h的初始(和非信息性)的近似。参照图2,如果建立了两个对应域Ci和D」之间的合理的特定匹配,则可以据此改进对h的当前近似,这是因为如果并且vc,一z^并且w,贝ij,=^即,^以由下式给定的某个概率与子集A中的元素:c相对应《(x卜Pr(x《(杨J))因此,给定可能的匹配函数V则基于"观察到的"值WW针对各个Bk更新/2fe)e^的概率。应该如何组合来自不同/J对的质量wy考虑被表示为可能值B的某个全域(universe)上的质量分配的多次观察值(observation)。令M为对于使得观察到的值最可能在n次观察值之后的B的质量分配,即,选择使下式最大化的质量-iV(M》,,。2,…,0")这给出了每次观察后更新M的方式。采用朴素贝叶斯(naiveBayes)假设尸怖。2,…A)二,2,,》")X,")尸—2"."0")尸^0,,02,…,0"^4)=尸^0'^K:)X户^02lM")X…X尸假设每个可能的质量分配Mn是等可能的她其中N,,(X)是观察到子集X的次数。每个匹配函数都可以给出作为其对于对应元素的估计的模糊集合_对于A中的每个元素q,并且对于每个所选择的、,该模糊集合由下式给出()))为了组合这些估计-实际上,采用模糊集合中的成员的总平均。这样做的理论基础来自质量分配理论和贝叶斯定理。实施例2为了进一步例示以上内容,将考虑更复杂的第二实施例。考虑由a涵。W(A)和以下关系标识的作者集合R,(author-id~>name)<table>tableseeoriginaldocumentpage21</column></row><table>R2(author-id~booktitle)<table>tableseeoriginaldocumentpage22</column></row><table>S2(writer-real-name~>pseudonym)<table>complextableseeoriginaldocumentpage23</column></row><table>S3(writer-real-name~>year-of-birth)<table>complextableseeoriginaldocumentpage23</column></row><table>S4(writer-real-name—place-of-birth)<table>complextableseeoriginaldocumentpage23</column></row><table>再次假设存在将返回与特定题目相对应的ISBN集合的函数/^:<table>complextableseeoriginaldocumentpage23</column></row><table>注意,由于题目没有正确地匹配(例如gloucester白勺tailor/taylor,"invisibleman"/"Historiadelapenumbrayloinvisible"),所以这里将存在某些不确定性。因此匹配"invisibleman"的书可能是{0809596369/1,0785731547/1,0747511586/1,0394222520/1,9561314592/0.2}存在日期之间的明显匹配:h33<table>tableseeoriginaldocumentpage24</column></row><table>对于其他日期也是类似的。最后,在placeofbirth禾Dnationality之间存在链接:<table>tableseeoriginaldocumentpage24</column></row><table>等等。在质量分配项中,最初:aw^or-/={C.L.Dodgson,H.G.Wells,ACDoyle,JRKipling,…}:17o7x2={C.L.Dodgson,H.G.Wells,ACDoyle,JRKipling,...}:1通过利用h21得到证据a涵or-2={C.L.Dodgson,I.M.Copi}:1m"/zor-2={{H.G.Wells,MCoren}:0.8,{H.G.Wells,MCoren,ACDoyle}:0.2}(或者作为模糊集合{C.L.Dodgson/1,I.M.C叩i/1}{H.G.Wells/1,MCoren/1,ACDoyle/0.2})组合<3W/jor-/={{C.L.Dodgson,H.G.Wells,ACDoyle,JRKipling,...}:0.5{C.L.Dodgson,I.M.Copi}:0.5}={{C.L.Dodgson,H.G.Wells,ACDoyle,JRKipling,...}:0.5{H.G.Wells,MCoren,ACDoyle}:0.1,{H.G.Wells,MCoren}:0.4}(等效地)fuzzyset-1={C.L.Dodgson/1,I.M.Copi/1,H.G.Wells/0.5,ACDoyle/0.5,...}fuzzyset-2={H.G.Wells/1,MCorenZl,ACDoyle/0.6,JRKipling/0.5,...}在这种情况下,模糊集合和质量分配是等效的,并出于例示的目的而示出;下面,仅使用模糊集合利用&,模糊集合为={C.L.Dodgson/1,SirWalterScott/1}a涵。"={H.G.Wells/1,BeatrixPotter/1,JRKipling/0.9,ACDoyle/0.2}组合m'/tor-/={C.L.Dodgson/1,I.M.Copi/0.66,SirWalterScott/0.66,ACDoyle/0.33,H.G.Wells/0.33,...}:0.33ai"tor-2={H.G.Wells/1,MCoren/0.66,BeatrixPotter/0.66,JRKipling/0.6033,ACDoyle/0.466,..}注意,这些成员是所有模糊估计(即,初始估计&和&)的平均。利用&vawf/zor-/={CL.Dodgson/1,RG.Wells/1,AIConanDoyle/1,JRKipUng/0.1,SirWalterScott/1,."}对于MtoW也是类似的。由于这种操作非常普通,所以熵增加,因此将其舍弃,并保留从&和&获得的估计。如所预期的那样,将最高成员作为最佳近似,得到aw决or-J=C.L.Dodgson=H.G.Wells,并且对于咖决。",...等也是类似的。仏S/对的选择显然,利用彼此几乎不匹配的属性域《)来进行更新并不是特别有用。可以根据平均最大匹配概率AMaxiktoc/z来对可能的属性对进行排序。平均最大匹配概率定义如下<formula>formulaseeoriginaldocumentpage26</formula>然而,如果在近似映射中存在大量的不确定性,则平均最大匹配概率不一定对选择下一个要使用哪个属性有帮助。例如,如果=,。,^Z)j=/"t//,d2,W则通用匹配函数/zl,y(c2)={《,£/2,t/3}的AMrcMzM为1(因为其必定将Ci中的每个元素链接到Dj中的元素),而wi/(c2)=R/W0-4}将仅具有为0.95的am^m^,尽管其与礼;相比要明确(specific)得多。因此,在对属性进行排序时,另选地可以根据最小有偏分布(theleastprejudiceddistribution)获得最大概率的平均其被定义如下对于上述情况JvAfofc/z(hl,j)=1/3j函fc/z(h2ij)=0.85这与非常不明确的匹配函数^是不同的。有意义的是,选择接近于成为"关键"域(即,唯一标识一对象)的关键属性c^和Dksy。这可以通过寻找具有基数(cardinality)等于或接近数据库中的条目数量的域而容易地估计出来。可以通过数据库模式或通过用户的指导对关键属性进行标识。在缺乏任何信息的情况下,可以通过找到针对数据库中的每一行具有唯一的值的属性(或属性的组合)来进行关键属性的选择,即,找到所有的值并检查每一个仅出现一次的值而进行关键属性的选择,或者找到相对于其他属性接近于满足该要求的属性、而没有找到关键属性。这种近似使得系统能够考虑噪声级别。效率的考虑上述方法利用了全域B上的质量分配而不是B上的分布,因为这不需要进行与如何对非单元素集合划分质量有关的假设。然而,由于B的幂集合具有2'B'个元素(这对于大的全域是不可行的),因此显然存在实现的问题。可以通过要求M与模糊集合相对应(即,为嵌套的质量分配)来限制工作空间的大小。这简化了所涉及的表达和处理。从而仅需要考虑每个元素的平均成员;这等效于进行平均质量分配并随后(通过2-型限制)对其进行限制,直到其嵌套并因此与模糊集合相对应为止。何时停止通过监测h的总熵来测量各个属性对(RiSj)的有效性。对于每个元素Q,具有作为B中的与^相匹配的元素的当前最佳估计的模糊集合&。通过建立对应的最小有偏分布(bi:Pi)并找到-:sAiog"A),来计算嵌套质量分配(模糊集合)的熵。这可以通过将N个元素以升序i=0..N-l排列来快速实现,+〃'—〃'-1对于i=l..N-l,并且pQ=p。/NTV"—/在不完全质量分配的情况下,假设质量在域中的所有元素之间平均地分布-这使得熵显著增大。针对所有模糊集合A计算该值,并且其总和表示当前h的熵。如果熵增大,则最后一个属性对(RiSj)使近似h不太明确,因此将其舍弃。假设较低级别的属性对也将使近似h不太明确,因此该处理停止。算法(概要)下面将参照图3和附录1简要地说明实现上述操作时执行的步骤。输入-两个选定的域A,B-关系Ri,Sj的集合和相关联的范围Ci,Dj-将Ci中的每个元素与Dj中的元素的模糊集合相关联的近似匹配函数h,j的集合输出-A和B之间的部分模糊映射可选验证Ckey和D^是关键域,即几乎没有重复元素forCkey中的每个ak初始化Bk-Dkey,即对于所有的b,&(6)=i6ndforfor每一对Ri-Sjif背景知识没有排除该对(例如,根据模式匹配)找至U爿v她fc/z(Ri,Sj)if非零,存储在表中endfor以乂vM^c/z得分(即对应关系的概率)的降序对表进行排序w:=0while表中的下一(RrSj)使h的总熵降低forA中的每个akendforw:="+1endwhile对所有的k和b,输出A:^4〃一)附录2中给出了实现如上概括的算法后获得的结果。参考文献1.Newcombe,HB等人"重要记录的链接",科学,1959,130,p954-9。2.Fellegi,IPandSunter,AB:"记录链接的理论",美国统计学会杂志,1969,64,pll83-1210。3.Elfeky,MG,Verykios,VS&Elmagarmid,AK:"TAILOR:记录链接工具箱",数据工程国际会议,2002,圣何塞,加利福尼亚正EE计算机学会。4.Dey,D,Sarkar,S&De,P:"异类数据库中的基于距离的实体调和方法",知识和数据工程IEEE通讯,2002,14(3),p567-582。5.Bilenko,M等人:"信息集成中的自适应名称匹配",正EE智能系统,2003,18,pl6-23。6.Madhavan,J,BernsteinPA,&Rahm,E:"使用Cupid的一般模式匹配",有关非常大型数据库的国际会议的会议录,2001,p49-58。7.Do叫A.,Domingos,P和Halevy,A:"学习匹配数据源模式-多策略方法",机器学习,2003,50(3),p279-301。8.Modica,GGal,A和Jamil,HM:"机器生成的本体在动态信息搜索中的应用",计算机科学讲稿,2001(2172),p433-448。9.Noy,NF和Musen,MA:"PROMPT组用于本体融合和映射的交互式工具",人机学习的国际期刊,2003,59(6),p983-1024。10.Rahm,E.和Bernstein,PA:"ASurveyofApproachesto自动模式匹配的方法的调查",VLDB期干U,2001,10(4),p334-350。11.Berlin,J.和Motro,A:"同源体虚拟数据库的内容自动发现",计算机科学讲稿,2001(2172),pl08-122。12.Gal,A等人,"异类数据库中的模式集成的模型",第七届国际数据库工程和应用论坛(IDEAS'03),2003,香港,正EE出版社。13.Gal,Anaby-Tavor,Trombetta和Montesi:"用于对自动语义调和进行建模和评价的框架",VLDB期刊(2005),vol.14(1),p50-67。14.Gal,Modica禾卩Jamil,Eyal:"OT应用语义的自动本体匹配",互联网发表。-参j/TL:http:〃iew3.technion.ac.il/OntoBuilder/Data/10.OntoBuilder_Papers/dis.pdf。15.YingDing和SchubertFoo:"本体论研究和发展:部分2-本体映射和演化的回顾",信息科学期刊28(5),(2002),p375-388。附录l可用于实现图3的算法的可能的代码步骤:输入数据库dbl,"关键"属性Ckey,关系R卜.Rp数据库db2,"关键"属性Dkey,关系S卜.Sq初始化forCfey中的每个q/2。(^=Dkeysndforfor每一对Rj,Sjif(Ri禾[lSj—致)计算并存储AvMaxMatch(Ri,Sj)endifsndfor合并n:=0while表中的下一(RrSj)使h的总熵减小forCkey中的每个*根据^f"a^禾口~计算/2,,+/(^)endfor针对hn+1计算熵增量w:=+lendwhile输出Zz,,,Ckey和Dkey之间的近似对应关系附录2实现和测试上述算法被实现为原型。对描述饭店(三个数据集合)和电影(两个数据集合)的小数据集合进行了多个测试。出于例示的目的,利用描述饭店的两个xml数据集合(以下表示为dbX和dbY)来测试该方法。这些数据集合是从分类目录和在线源获得的,并且具有以下数据<table>tableseeoriginaldocumentpage31</column></row><table>人工比较表明存在150个共同条目,例如<table>tableseeoriginaldocumentpage31</column></row><table>选定的映射函数是直接的。Phone/TelNo<are<3cocfe><wwm6er>匹酉己<areaco<ie><wwm6er><areaco<ie><www&er>匹酉己<wwmier>反之亦然<"Mm&"7>部分匹配<"ww&r2>如果两个数字的排列不同匹配程度="正确"位置中的数字的比例文本字符串如果Strl比Str2短并且Strl中的大部分词也存在于Str2中,则Strl为Str2的近似子集。如果Strl和Str2的共同的词的比例很高,则Strl是Str2的近似排列:匹配程度=共同的词的比例,必须至少为两个。二者均忽略诸如the、and等的"停顿"词。结果'从dbX映射到dbY,域之间的平均最大匹配为<table>tableseeoriginaldocumentpage32</column></row><table>=0.5还匹酉己Name禾Qname=0.6还匹酉己Name禾卩textline=0.7还匹配Addr和textline在这种情况下,即使大多数可靠指示符(TelNo—phone)是错误的,系统仍能识别出匹配。例如,系统对错误表现出合理的鲁棒性。dbX8dbY28"NamehiltonfishbarTelNo01473727510Addr378bramfordrdipswichsuffoikip〗5ayFoodTypeeuropeanfishandchipsMeallunchdinnerTextLin已namsfishnetthephone72750headingfish&chipshops&restaurantstextlinefishnetthe385springrdipswichPr(h(dbX8)=dbY28)匹酉己TelNo禾口phone还匹酉己Name禾卩name还匹酉己Name禾卩textline还匹酉己Addr禾口textline图4示出了通过测量xmldb.dataset中的各个元素的映射h的熵来演化各个匹配。熵为0表示完全匹配;熵为8.7表示条目匹配整个域。粗线示出了平均熵。图4表明最佳近似在2个或3个匹配的属性之后。权利要求1、一种操作数据库管理系统的方法,该数据库管理系统对来自多个数据源的数据进行集成,所述数据源被至少部分地结构化,并且包括多个数据对象,各个数据对象包括与实体的一个或更多个属性相关的数据;所述方法包括以下步骤(a)针对第一数据源和第二数据源中的每一个,选择初始属性或属性的组合;(b)针对所述第一数据源和所述第二数据源的所述属性或属性的组合,从可能的匹配函数的集合中自动选择一候选匹配函数,所述匹配函数与所述第一数据源中的与一个或更多个属性有关的数据和所述第二数据源中的与一个或更多个属性有关的数据之间的可能的映射相关;(c)将所述候选匹配函数应用于所述第一数据源中的与所述选择的属性或属性的组合有关的数据,以创建所述第二数据源中的与所述选择的属性或属性的组合有关的可能的数据;(d)根据所述可能的数据和所述第二数据源中的实际数据获得与所述可能的数据和所述实际数据之间的不一致性量有关的不一致性量度;(e)从所述可能的匹配函数的集合中自动选择一个或更多个不同的候选匹配函数,并针对所述一个或更多个不同的候选匹配函数重复步骤(c)和步骤(d);(f)根据所述多个候选匹配函数建立具有表示最低不一致性量的不一致性量度的候选匹配函数,并将所述候选匹配函数指定为可能性较大的候选匹配函数;(g)针对所述第一数据源和所述第二数据源中的每一个选择一个或更多个其他属性或属性的组合,并针对所述一个或更多个其他属性或属性的组合执行步骤(b)至步骤(f),从而建立针对所述一个或更多个其他属性或属性的组合的可能性较大的候选匹配函数;以及(h)参照所述建立的可能性较大的候选匹配函数中的一个或更多个,确定所述第一数据源的数据对象和所述第二数据源的数据对象之间的可能性较大的对应关系。2、根据权利要求1的操作数据库管理系统的方法,其中,所述匹配函数是从预定的匹配函数的集合中选择的。3、根据权利要求1的操作数据库管理系统的方法,其中,所述匹配函数是从通过机器学习系统获得的匹配函数的集合中选择的。4、根据以上权利要求中的任意一项的操作数据库管理系统的方法,所述方法还包括以下步骤根据所获得的与先前选择的匹配函数相关的不一致性量度来识别一个或更多个更特定的匹配函数。5、根据以上权利要求中的任意一项的操作数据库管理系统的方法,其中,选择所述初始属性或属性的组合的步骤包括选择一个或更多个关键属性,所述关键属性是相对于其他属性具有高基数的属性。6、根据以上权利要求中的任意一项的操作数据库管理系统的方法,其中,所述可能的匹配函数的集合包括这样的匹配函数,这些匹配函数与所述第一数据源中的与一个或更多个属性或属性的组合有关的数据和所述第二数据源中的与一个或更多个属性或属性的组合有关的元素的模糊集合之间的可能的映射相关。7、根据以上权利要求中的任意一项的操作数据库管理系统的方法,其中,确定所述第一数据源中的数据对象和所述第二数据源中的数据对象之间的可能性较大的对应关系的所述步骤包括比较与所述第一数据源的数据对象和所述第二数据源的数据对象相关的元素的模糊集合。8、根据以上权利要求中的任意一项的操作数据库管理系统的方法,所述方法还包括以下步骤将来自所述第一数据源和所述第二数据源之一的一个或更多个数据对象包含到所述第一数据源和所述第二数据源中的另一个中。9、根据以上权利要求中的任意一项的操作数据库管理系统的方法,所述方法还包括以下步骤创建包含来自所述第一数据源的一个或更多个数据对象和来自所述第二数据源的一个或更多个数据对象的组合数据源。10、根据以上权利要求中的任意一项的操作数据库管理系统的方法,其中,从所述可能的匹配函数的集合中依次选择不同的候选匹配函数,直到进行了以下确定时为止选择其他不同的候选匹配函数不可能导致选择具有表示最低不一致性量的不一致性量度的其他候选匹配函数。11、一种用于对来自多个数据源的数据进行集成的数据库管理系统,所述数据源被至少部分地结构化,并且包括多个数据对象,各个数据对象都包括与实体的一个或更多个属性有关的数据;所述系统包括(a)用于针对第一数据源和第二数据源中的每一个选择初始属性或属性的组合的装置;(b)用于针对所述第一数据源和所述第二数据源的所选择的属性或属性的组合,从可能的匹配函数的集合中自动选择一候选匹配函数的装置,所述匹配函数与所述第一数据源中的与一个或更多个属性有关的数据和所述第二数据源中的与一个或更多个属性有关的数据之间的可能的映射相关;(c)用于将所选择的候选匹配函数应用于所述第一数据源中的与所述选择的属性或属性的组合有关的数据,以创建所述第二数据源中的与所述选择的属性或属性的组合有关的可能的数据的装置;(d)用于根据所述可能的数据和所述第二数据源中的实际数据获得与所述可能的数据和所述实际数据之间的不一致性量有关的不一致性量度的装置;(e)用于从所述可能的匹配函数的集合中自动选择一个或更多个不同的候选匹配函数,并安排装置(c)和(d)对所述一个候选匹配函数或所述多个不同的候选匹配函数中的每一个进行处理的装置;(f)用于根据所述多个候选匹配函数建立具有表示最低不一致性量的不一致性量度的候选匹配函数,并将所述候选匹配函数指定为可能性较大的候选匹配函数的装置;(g)用于针对所述第一数据源和所述第二数据源中的每一个选择一个或更多个其他属性或属性的组合,并安排装置(b)到(f)对所述一个其它属性或所述多个其他属性或属性的组合中的每一个属性进行处理,从而建立针对所述一个或更多个其他属性或属性的组合的可能性较大的候选匹配函数的装置;(h)用于参照所述建立的可能性较大的候选匹配函数中的一个或更多个,确定所述第一数据源的数据对象和所述第二数据源的数据对象之间的可能性较大的对应关系的装置。12、根据权利要求11的数据库管理系统,其中,用于选择候选匹配函数的所述装置被设置为从预定的匹配函数的集合中进行选择。13、根据权利要求ll的数据库管理系统,其中,用于选择候选匹配函数的所述装置被设置为从通过机器学习系统获得的匹配函数的集合中进行选择。14根据权利要求11至13中的任意一项的数据库管理系统,所述数据库管理系统还包括用于根据所获得的与先前选择的匹配函数有关的不一致性量度来识别一个或更多个更明确的匹配函数的装置。15、根据权利要求11至14中的任意一项的数据库管理系统,其中,用于选择所述初始属性或属性组合的装置包括用于选择一个或更多个关键属性的装置,所述关键属性是相对于其他属性具有高基数的属性。16、根据权利要求11至15中的任意一项的数据库管理系统,其中,所述可能的匹配函数的集合包括这样的匹配函数,这些匹配函数与所述第一数据源中的与一个或更多个属性或属性的组合有关的数据和所述第二数据源中的与一个或更多个属性或属性的组合有关的元素的模糊集合之间的可能的映射相关。17、根据权利要求11至16中的任意一项的数据库管理系统,其中,用于确定所述第一数据源中的数据对象和所述第二数据源中的数据对象之间的可能性较大的对应关系的装置包括用于比较与所述第一数据源的数据对象和所述第二数据源的数据对象有关的元素的模糊集合的装置。18、根据权利要求11至17中的任意一项的数据库管理系统,所述数据库管理系统还包括用于将来自所述第一数据源和所述第二数据源之一的一个或更多个数据对象包含到所述第一数据源和所述第二数据源中的另一个中的装置。19、根据权利要求11至18中的任意一项的数据库管理系统,所述数据库管理系统还包括用于创建包含来自所述第一数据源的一个或更多个数据对象和来自所述第二数据源的一个或更多个数据对象的组合数据源的装置。20、根据权利要求11至19中的任意一项的数据库管理系统,其中,用于选择一个或更多个不同的候选匹配函数的所述装置被设置为从所述可能的匹配函数的集合中依次选择不同的候选匹配函数,直到进行了以下确定时为止选择其他不同的候选匹配函数不可能导致选择具有表示最低不一致性量的不一致性量度的其他候选匹配函数。全文摘要本发明涉及模式匹配。一种操作对来自多个数据源的数据进行集成的数据库管理系统的方法包括以下步骤(a)针对第一和第二数据源选择初始属性;(b)选择与所述第一和第二数据源中的数据之间的可能的映射有关的候选匹配函数;(c)将所述候选匹配函数应用于所述第一数据源中的数据,以创建所述第二数据源的可能的数据;(d)获得与其之间的不一致性量有关的不一致性量度;(e)选择不同的候选匹配函数,并重复步骤(c)和(d);(f)将具有表示最低不一致性量的不一致性量度的候选匹配函数指定为可能性较大的候选匹配函数;(g)选择其他属性并针对其执行步骤(b)至(f);和(h)确定所述第一和第二数据源的数据对象之间的可能的对应关系。文档编号G06F17/30GK101189607SQ200680010069公开日2008年5月28日申请日期2006年3月22日优先权日2005年3月29日发明者特雷弗·菲利浦·马丁,贝南·阿斯文申请人:英国电讯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1