开放环境下本体演化方法(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-19 19:13:03

点击下载

作者:宋英杰,刘亚清,张斌,辛晓

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

开放环境下本体演化方法

开放环境下本体演化方法试读:

前言

本体演化是为适应变更而对本体做出的及时变更,并要保持变更后本体及其相关应用的一致性。在Web这样一个开放、动态、协作环境中显现出一些难于解决的问题,如全局知识、语义冲突和不可计算性等。演化中的冲突会导致本体的不一致和推理错误等问题。

本书将本体演化的基本概念和技术进行了概述,分析了开放环境下本体演化的研究现状,提出了目前亟待解决的问题,重点对本体非标准一致性推理算法、本体演化序列冲突检测算法和本体演化多版本差异检测算法进行了深入探讨。

本书第1章介绍研究背景、本体演化及其面临的问题,阐述了国内外与本体演化相关的研究现状。第2章阐述本体演化的基本理论,包括描述逻辑与本体的关系、OWL 语言的逻辑基础、本体推理任务、本体推理常用方法等,是本书后续方法描述的基础。第3章的主要工作是给出本体语言OWL到Alloy转换规则和算法,为OWL本体提供了更加有效的推理支持。基于一阶逻辑的Alloy语言及其推理工具Alloy Analyzer弥补了现有同类本体推理工具的不足,并利用Alloy语言本身对关系的强调,对很多本体推理工具不能处理的具有复杂属性的本体提供推理支持。第4章将OWL本体文件根据定义的中间语言以及中间语言与OWL语言中间的转换规则转换成可满足性问题,利用SAT求解器对子句集进行求解确立本体的可满足性。对于找不到可满足解的情况,通过提取极小不可满足子句集来定位原因。与第2章中基于Alloy的本体推理方法相比,本章方法的优势在于支持更大规模的本体一致性检测。第5章分析开放环境下本体演化序列内部和演化序列之间可能存在的三种冲突。在此基础上,针对三种不同的冲突分别给出检测算法。尤其是针对变更序列之间不一致冲突,为了最大限度地满足用户的变更需求提出最大一致变更子序列获取算法。最后,针对已有的基因本体进行实验设计,验证算法效率。第6章提出一种基于冲突变更序列矩阵的动态冲突诊断算法,为此将具有语义冲突的变更序列对模型化为冲突变更序列矩阵,在此基础上,提出最小碰集矩阵的计算方法,更进一步,提出基于贝叶斯概率推理的碰集集合概率排序,最终确定最有可能解释冲突的原因。第7章提出一种基于概念格的本体版本空间表示模型,在此基础上提出并论证了有参差异检测和无参差异检测的相关算法。相比较现有的方法,基于概念格模型的本体版本差异检测算法的执行效率更高。第8章根据本书的理论部分设计并实现了一个支持开放环境下本体演化的原型系统。系统用仿真的方式模拟了本体演化的过程,通过对同一本体的多个变更序列的冲突检测来保证本体变更的顺利进行,并且利用本体一致性非标准推理方法反复对变更本体进行一致性检测,保证变更后本体的正确性。

本书由笔者与大连海事大学刘亚清博士等共同完成,并得到山东工商学院计算机科学与技术学院冯烟利院长、窦全胜教授的大力支持,在此表示衷心的感谢!

同时,本书的研究工作得到了山东省高校智能信息处理重点实验室(山东工商学院)的资助,特此表示感谢。

本书描述的非标准算法、变更序列冲突检测算法及多版本本体差异检测算法是新的尝试,不足之处尚有很多,在实际应用中还存在大量的问题需要解决,在不同领域本体中的应用还有待检验。由于基础薄弱,希望能得到更多学者的帮助。宋英杰2017年8月15日于山东工商学院▶▶第1章绪论1.1 背景知识[1]

哲学上本体论(Ontology)研究存在的本质,而 Quine的Ontological Commitment 把本体研究推动到概念世界的形式理论。[2]1993年,计算机科学家Gruber扩展了Quine的工作,把本体视为概念模型的明确规范说明,其中“概念模型”是指通过抽象客观世界中一些现象的相关概念而得到的结构化模型;“明确”强调使用的概念[3]及其约束和语境是有明确定义的。随后 Studer扩展了Gruber的本体概念,进一步认为本体是共享概念模型明确的形式化的规范说明。这里“形式化”是指本体是计算机能处理的,而“共享”强调了概念(包括实体、属性和过程)、定义和关系是领域、社会范畴内共同认可的知识。与隐式地使用知识不同,显式地使用本体使领域知识的重用变为可能。目前,在计算机科学和信息科学领域,本体是描述领域概念及其关系的知识表示方法,支持知识推理和验证,是知识库的基础性扩展,其重要性已在知识工程、智能信息集成、信息检索与获取、[4]软件工程、自然语言处理、普适计算等许多方面表现出来。

随着语义Web的深入研究,本体作为语义Web的知识载体,也越来越受到人们的重视。本体使语义 Web 上的知识呈现结构化(如图1-1所示)表示形式。可以看出,唯一资源标识(URI,Uniform Resource Identifier)以及Unicode技术构成了语义网的最底层基础。使用XML来定义定制的标签格式以及用RDF来灵活地表达数据, XML 结构化文档的表层语法对文档没有任何语义约束;RDF 描述对象(或者资源)以及它们之间关系的数据模型,为数据模型提供了简单的语义,这些数据模型能够用XML语法进行表达。下一步需要的是用一种Ontology网络语言(如OWL)来描述网络文档中术语的明确含义和它们之间的关系。作为语义网(Semantic Web)体系结构的重要组成部分,本体给数据赋予了明确的含义,在人类多种语言的环境下能够通过计算机形成一种通用的信息交换形式,使机器能够自动地处理和集成网上可用的信息。图1-1 语义Web系统结构

随着本体数量的不断增加和语义Web的发展,如何修改现有本体以适应新知识和变化的需求变得十分重要。本体的存在不是一成不变[5]的。开放环境中领域的变化、共享概念模型的变化、需求的变化、新知识的引入、开放动态的外部环境、表示的变化和本体集成等都可[6,7]能导致本体演化。本体数量的增加和适应变更需求的昂贵代价使本体演化变得愈发重要,本体演化研究具有深层次的研究意义和重要的应用前景。

近年来,本体演化的研究主要集中于研究集中式环境下的本体演[8~11][12~14][15][10,16]化:变化发现、变化传播、版本控制、演化管理、[17~19][20~22]一致性推理和本体演化工具等。在集中式环境的本体演化中,不同的用户可以通过协商进行本体修改以满足本体演化的需求,但集中式的本体构建和演化模式无法满足网络大规模、海量数据的需求,存在一系列的不足,如集中式演化成本高,且不能灵活地随着领域和用户需求的变化而及时做出反应。更进一步,这种开发方式,缺少开发者和用户之间的良好沟通,会导致用户在使用本体的过程中缺乏对本体的理解而使认知能力受到约束。随着本体发展和规模不断扩大,本体的构建、管理和演化已经不是一个人或几个人的团队能够胜任的工作,越来越多不同地域的本体管理者和领域专家参与到本体的开发和演化工作中。开放式协同模式成为网络本体发展的必然趋势[23]。

开放环境下(如语义 Web)本体演化表现出以下三方面特点。(1)分布性,现在的本体开发以非集中式开发为主,是分工协作的过程。所以相互关联的、存在于不同地域本体之间的依赖性需要重点考虑。(2)复杂性,本体是用于表示现实世界的模型,本体中的关系错综复杂,每个概念或者属性的变化都会影响相关的整个区域,即便是影响范围小的变更操作也会因为积累而变得难以处理。(3)依赖性,本体经常存在重用的情况,相互依赖的本体之间的变化是相关的。显然,开放环境下随着本体规模的增大和本体间依赖关系的增多,也使本体演化愈加复杂。

开放式环境下本体演化使大规模本体的变更需求得到满足,与此同时,开放式环境下的本体演化更要关注不同的参与者之间由于知识结构和角色等不同而产生的冲突。并且本体修改后可能会导致“不可满足概念”“不一致”等这样的不相容问题。严重的话,副作用还会传播到依存的数据、应用、智能体(Agent)以及其他本体。语义 [24]Web 分布、多源、异构、开放、协同和非集权等特点使现有方法显露出一些难于解决的问题,如全局知识、副作用、不可计算性、公平性、合理性等。

本体演化研究有待分析开放动态、不确定、协同环境下不同用户之间的冲突发现、冲突解决以及本体一致性推理等,有待扩展支持本体修改、本体诊断和本体错误定位的演化模式,以此建立理性公平的演化方法。为此,本书围绕本体一致性推理,开放式环境下的本体演化序列的冲突发现、冲突解决以及多版本本体差异检测等方面的内容展开,建立既能满足演化的需求、解决分布式开发者之间存在的冲突,又要保证演化后本体一致性的本体演化方法。1.2 国内外相关研究1.2.1 本体演化及其过程

1.2.1.1 本体演化的原因

文献[11]认同的本体发生变化的原因有以下几个。(1)一个本体就像任意一个包含领域关注点的信息结构体一样,相关信息可能会简单地由于关注点发生变化而改变。即使不现实地假设存在一个一成不变的领域,有时也需要改变观察领域的视角,视角变了,本体内容自然不同。(2)另外一个可能性是发现忽视了用户的某个隐性需要,原始领域概念模型中包含了一个设计错误,需要根据用户的需求综合更多的功能,于是需要改正本体错误,扩充本体内容。(3)类似地,像不相容或语义不连贯这样的矛盾可能暴露出来,这种情况下也会采用行动应对这个矛盾。(4)更进一步,以前是未知的、未分类的新信息,现在变成可用的了,或者是该领域的不同特性变得已知和重要了。此外,本体变化的原因还与本体开发和语义网的特性有关。

本体开发是一个复杂的系统工程,过程上需要本体工程师分工协作,多个部分本体组合在一起而形成最终的本体。这个过程中需要对子本体进行修改以达到一个相容的正确的结果状态。即便如此,所谓的“最终”状态也很少是最终结果,因为本体开发通常是一个持续演进的过程。

语义网的特性也决定了本体动态变化的特点。语义网上的本体通常依赖于其他本体,但本体工程师可能对它们根本无法完全控制。如果由于某些原因,这些“远程”本体被修改了,依存本体也就需要修改,以便体现术语和表达方面的变化。其他变化的情形还包括:某个智能体、服务或应用可能需要使用一个本体,它的术语或表示与它所理解的不同,这时就需要对引入本体进行某种转换(变化)才能使用;再就是也许需要从两个或更多本体中综合信息以便生成一个更适用于某个应用的本体。

1.2.1.2 本体演化的定义[12,25]

本体演化是为适应变化而对一个本体做出的及时修正,要求是保持结构上的相容性、用户自定义的相容性和逻辑一致性。一个变化可能导致本体其他部分的不一致,还会影响到相关的智能体、服务和应用。所以说,本体演化是一系列一致性传播过程,它包含技术上[26]和管理上的多种活动,这些活动的目的是有效地保证修改后的本体依旧能够满足结构上一致性和用户的需求。

1.2.1.3 本体演化与数据库模式演化[27~30]

数据库中的模式演化一直是热点的研究课题,本体演化和[27][31,32]数据库的模式演化有密切的联系,尤其是面向对象的数据库。表1-1对比了数据库模式和本体在实例、查询上的不同特点,二者的演化条件有所不同,但在变化传播方面,数据库模式变化影响的控制要么是通过维持相容性规则完成,要么是通过基于公理的推理机制完[33]成,而本体变化要将这两种方法结合起来使用。表1-1 数据库模式演化与本体演化(续表)

相对于关系数据库,本体演化更接近面向对象数据库的模式演化,表1-2对比了两者的不同之处,需要指出的是有几个本体演化改编自面向对象数据库模式演化的方法,但两者模型之间的区别使本体[36]演化方法不仅是对已有方法的改写,而且是一种扩充。表1-2 面向对象的数据库模式演化与本体演化

1.2.1.4 本体演化过程

文献[10,12,37]将本体演化划分为变化表示(Change [38]Representaion)、变化语义(Semantics of Change)、变化实现[39](Change Implementation)和变化传播(Change Propagation)[10,27,40]这4个过程。在此基础上,文献[12,41]将本体演化分成如图1-2所示的6个阶段。第一个是需求获取(Requirement Capturing)阶段,[9,10,12,14,23,42,43]目的是获取系统意欲发生的行为;第二个是变化表示阶段,把这些行为用适当的形式(原子变化表示简单的、细粒度的变[7,10,26,44]化,复合变化表示复杂的、粗粒度的变化)表示出来;第三个是变化语义阶段,这一阶段的任务是确认和解决由变更引起的连锁

[45,46]反应,保证本体的一致性;第四个是变化实现阶段,将前两个阶[6]段确认的变更操作作用于本体;本体变更对本体实例和相关应用(如智能体、本体等)的影响体现在第五阶段,也就是变化传播阶段[47,48];最后一个阶段是变化验证(Change Validation)阶段,允许本体工程师重新审查变化,如果需要,可能会撤销不合理的变化操作[49]。图1-2 本体演化过程

国外研究者针对本体演化的不同阶段提出了不同的解决办法。(1)本体变化的发现和表示

对于本体变化的发现国外主要有三种研究方法:①变化驱动的方[23][50][42][9]法;②Stojanovic、Castano 、Plessers 等提出基于用户需求[10,43]驱动的本体变化发现方法;③数据驱动的本体变化发现主要是根据本体实例来反向推导,这种本体变化发现方式与基于逻辑的变化发现方式的不同在于,这种方式通常假设环境是封闭的,可以利用数据挖掘等技术实现。

本体变化表示主要分为基本变化和复合变化。研究人员在基本变[10,50][51]化的基础上提出了复合变化。Sassi给出动态环境中基于Z语言的本体变化类型和变化操作的形式化表示。

国内对本体变化发现和语义表示研究也有初步尝试。例如,吉林[52,53]大学的鲁宁等提出一种基于语义的本体变化表示方法,并利用变化语义来保证变化本体的一致性,解决变化导致额外变化的问题;南[54]京航空航天大学的蔡丽宏针对OWL本体设计出一种本体变化获取算法,并验证了领域本体半自动化方案的可行性。(2)本体变化的实施和变化传播

变化实施的研究也有多种方法。①基于用户驱动的本体变更策略[55]根据用户使用过程中发现的问题来修改本体,这种方法的缺点在于整个本体变更过程的每一步都需要提交给领域专家,由领域专家对多种变更策略进行理解和判断,决定是否采纳变更,这样的演化方式过分依赖领域专家,而不同的领域专家也可能因为知识结构等的不同,对修改做出截然不同的判断。②Stojanovic 在文献[37]中将本体演化问题看成是一个重配置问题,文章给出了本体变更的描述并利用图搜索的方法来获得一条能够满足变更需求,并且能够保证变更后本体一致的变更路径,该文章图中的约束也是由用户提供的,也就是说[8]由用户来定义本体需要遵守的一致性规则。③Plessers提出一种结合了自顶向下和自底向上的本体演化方法,通过保留本体版本的变化轨迹,比较多个本体版本,得到版本之间的差异,用自动变化检测机[56~59]制来辅助本体工程师完成本体变更。另外,在信念修正中已经[60,61]提出多个与知识更新相关的概念,也已经用于本体的知识表示[62~67]中。对本体变更之后的影响也有很多研究。

国内学者对于本体演化也提出了自己的方法。例如,复旦大学的[68]杨明华等提出的方法需要抽取本体中的关系,这是目前尚未解决[69]的问题;中国科学院的刘晨利用图的启发式搜索算法来获取本体[70]演化的变更路径;吉林大学的罗景文从演化代价的角度出发,根[71,72]据演化代价是否最小来决定演化路径的选择;周栩等又将演化代价加入图搜索算法中,提出基于演化代价的本体演化方法。[44,73,74]

国内学者对于本体演化影响也做了研究。例如,金龙飞等[75]利用邻接矩阵和可达矩阵来分析本体演化的影响范围,量化计算[69]在已知依赖和未知依赖两种情况下的本体演化波及效应;刘晨等重点研究本体变更的影响范围,文中根据本体之间的依赖关系量化计算不同本体变更的影响范围,并利用启发式搜索算法找到一条影响范围最小的变更执行路径。(3)本体演化工具

随着本体演化方法研究的深入,为实现本体演化的自动化进程,[76,77]近年来本体演化工具也不断进步。本体编辑器调查中针对几十种不同本体工具的各种方面进行了比较。但是大部分工具不支持本体的[78]协同开发。例如,Protégé是一个 Java 开源工具,提供多种本体语[21,22]言的编辑接口,它本身没有推理功能;OntoEdit工具注重本体开发的过程,提供简单的本体评价机制,不支持开放环境中的本体管理、本体集成等操作。这些本体工具有的(如Protégé)支持部分本体演化操作,只是这种能力都比较有限,支持的本体变更策略比较简单,并且也是根据开发工具预先定义的策略来执行的。例如,要删除一个概念,这些工具采取的策略通常是同时删除它所有的子概念,用户无法控制变化的方式。更进一步,工具使用过程中并不会考虑本体演化,尤其是开放式环境下本体演化的复杂性,这使这些自动本体构建和演化工具并不能满足开放环境下的本体演化需求。1.2.2 开放环境下本体演化研究的现状

本体在开发和维护的过程中不可避免地出现不一致问题或者含有不希望蕴含的结论,因此本体的一致性维护与诊断成为本体应用中不可缺少的推理服务之一,在开放环境下这一问题尤为突出。(1)演化过程中的一致性

本体演化的变化语义是指本体变化对本体自身的影响,本体变化之后需要检查本体的一致性。文献[12]中认为一致的本体是无法从本[12,79]体定义中推导出矛盾结论的。这里的一致性包括逻辑一致性、语义一致性和用户自定义的一致性。不一致本体若不被发现和纠正,所要付出的代价是沉重的,因此保证演化本体的一致性是尤为重要的。[80]

作为本体主要描述语言的描述逻辑,最基本的推理问题包括概念满足性检查、本体一致性检查、判断本体是否蕴含某条结论以及[81]回答提问。目前语义 Web 的推理方法中主要的经典推理方法包括归结方法、表推演方法、基于公理的系统、自然演绎法以及重写系统[82][83,84]等。归结方法和表推演方法是自动推理领域著名的广泛应用的推理方法,逻辑系统的不同也要求对推理技术进行扩展,对于某些非经典逻辑的推理需要探讨扩展的,甚至是混合的推理技术。随着语义Web研究的兴起,描述逻辑系统中的表推演方法以及各种优化技术得到了深入研究,基于表推演的描述逻辑推理工具主要有FaCT+[85]+(FaCT,Fast Classification of Terminologies)、RACER (The [86][87]Renamed Abox and Concept Expression Reasoner)、Pellet,分别实现了完备的公式可满足性的判定过程。[88]

2003 年,Schlobach等提出了调试描述逻辑术语集的非经典推理的概念,非经典推理又称非标准推理。例如,已知本体蕴含的一个结论,推理的任务就是求解它的一个或全部的最小解释,即由本体中的某些公理所构成的蕴含该结论的最小集合。对本体进行修改会破坏原有本体的一致性,本体由此会蕴含若干不期望的结论,如果能找到其成立的原因,对其进行修正可以使该结论不再成立。因此本体演化客观上需要对一致性进行检测、定位和修复。另外,经典推理中对于有些问题,如循环定义,尚没有得到合理解决,主要是针对一些很小[89~94,95]的不带否定构造算子的描述逻辑,因此在目前已实现的描述[87][96][85][86]逻辑推理系统(如Pellet、FaCT、FaCT++和RACER)中都[97]给出强制规定:描述逻辑知识库的Tbox中不允许出现循环定义,但循环定义可大大扩充描述逻辑的表达能力,而且在许多实际应用中(如医学本体、语义数据模型),循环定义是不可避免的。

本体一致性是本体存在的基础,现有的不一致本体推理研究主要是如何发现不一致和如何为依赖本体的应用提供一致的服务。国外对于本体不一致的推理研究工作主要有三种方式。第一种是预先定义一致性约束规则,如文献[56]中提出在分布式环境下本体演化中的时序行为检测。根据检测不等式是否有解来确定行为序列是否是分布式环境下本体演化的时序序列。文献[8]利用定义好的一致性模型(Consistency Model)来约束变化后的本体,但是这种一致性模型是根据不同的语言进行设置的,不同的语言有不同的一致性模型,OWL不同的语言部分(如OWL Lite和OWL DL)也有不同的一致性模型。文献[12]认为一致性本体应该是遵守所有预定义的一致性规则,包括常量约束、软约束和用户自定义约束。这种一致性推理的局限性在于不能用于本体开发过程中,因为其中的叶子节点概念可能被认为是接下来的一个扩展点。这种方法虽然能够根据语言的语法定制本体变更的策略,按照用户偏好进行演化排序,但对于语义方面可能带来的影响无法估计,也就难以定制相应的应对方法,难以满足语义一致的要求。第二种是利用软件测试的方法对本体进行不一致性诊断。[98][99]Kalyanpur 和Parsia利用白盒测试和黑盒测试对本体进行测试,查找是否存在不可满足的概念,还有文献[88,100,101]等。最后一种[88,102]利用非标准推理进行本体不一致推理。文献[103]利用OWL中三种本体不一致来源提出一种启发式的调试方法,目的是找到本体不一[104]致的根源。Grau等对于OWL本体重用的情况,探讨如何将引用的本体整合到同一本体中,再进行OWL一致性推理。文献[105]将本体重用的情况通过模块划分进行处理,这样做的目的在于能够将本体不一致的检测控制在一定的模块范围内,更有利于本体不一致的定位。[106~108][109][110]另外,还有可辩驳推理、非单调推理、缺省推理等非标准推理方法。[111~113]

国内学者对于本体演化一致性的关注也越来越多。鲍爱[114]华认为,导致本体演化中不一致的根源主要有用户需求变化和环境变化两个方面。他认为针对不同原因导致的本体不一致需要用不同[53]的解决办法。吉林大学的鲁宁提出的本体演化一致性模型中包含变化本体本身的一致性约束和用户自定义的一致性约束,并且定义不一致发生时的处理策略。这种方法需要很多的人为参与,模型中的用户自定义一致性的部分处于不断变化中,随时可能增减,而且定制的策略有严重的主观性,没有足够的逻辑依据,并不能保证解决策略的[68]逻辑正确性。复旦大学的杨明华提出用一阶谓词进行本体的语义[69]一致性检测,但并没有给出具体的方法。中国科学院的刘晨对于保证本体一致性的做法是描述本体所有可能的约束集合,检测本体是否一致是通过验证本体是否符合约束集合中的每一条约束。(2)开放环境下的本体演化

当前支持 Web 本体演化的方式主要是知识工程师和一小部分领[115][116]域专家对静态本体的集中开发,这种方式复杂、耗时。因此,开放环境下基于协作或自动/半自动的演化方法逐渐出现。开放环境下将本体演化视为多人(如知识工程师、领域专家和最终用户等)共[117~120]同参与完成的一个社交的过程,这些参与人员可以分布在不[37,119,121~124]同的地点,根据各自的经验和观点参与演化。这种本体演化方法既有较高的覆盖度和代表性,又具有较低的成本,且适应于开放环境下通过不断的知识积累进行增量本体变更的情况。但开放式[20,23,123,125~129]环境下的本体演化是还存在尚未解决的问题。现有的研究工作总结为以下三点。[130][131](1)开放环境下的本体演化框架研究。Xexéo、Martin认为少数参与者集中式的本体开发不能满足语义 Web 的要求, Xexéo在文献[130]中提出一种P2P框架,用于本体协同操作,开发出一个可以更多人共同参与的本体构建管理平台OntoWiki。文献[124]将本体演化根据属性和特点分为不同的场景,提出用 Protégé 插件CHAO(Change and Annotation Ontology)来记录本体版本之间的差异,并将这种差异展现给本体演化的管理者,由管理者最终决定变更操作的取舍。[17][132](2)开放环境下协同演化的方法研究。Haase和 Clyde等提出一种由大量具备不同经验和知识的学者和工程师参与的协作式本体开发方法。该方法从初始的本体开始进行多次迭代演化,每次迭代各个参与者都将对当前的本体进行评论,并将迭代结果作为下一次迭代的基础。一直进行到全体参与者对于所得到的本体达成一致意见为[133]止。Benjamin等报告了他们在一个人类健康会议上进行的本体协作开发的经历。会议期间有 68 位志愿者参加了这个实验性的知识获取过程,最终得到了一个包含几百个术语和同义关系的共享本体。针[79]对DL下的本体,Haase等的本体演化框架整合了他们以前的相关工作:首先假定本体不含矛盾,进行相容本体的演化;若变更引入不相容,就要修复它;若无法修复就采用不相容推理;最后多版本推理综[20]合考虑旧版本的本体和新版本的本体。Klein记录本体变化日志,进而提出一种支持分布式的本体演化框架,但这种方式不适合开放的[134]语义 Web,因为变化日志不能记录多用户同时对本体进行修改的[33]情况。Klein还研究了OKBC本体在开放环境下的变更管理方法,思想是:对于给定的前后两个不同版本的本体,借助本体编辑时所产生的日志,分析得到两本体间的转换信息,用明确定义的操作算子表示前后两本体在概念上的映射关系。[135](3)开放环境下本体演化冲突问题研究。Leenheer在[136]DOGMA的基础上进行扩充,提出 DOGMA-MESS 方法来支持协[137]同本体演化过程。他利用图变换中的关键对分析方法来分析本体演化中的冲突。文献[104]针对开放环境下多本体重用的情况,提出[10]一种合并的思想并对整合后的 OWL 本体进行推理。Alexander认为在开放环境下不同的本体工程师可能会出现不同的本体变化意见,为了解决这些问题,Alexander 为本体演化引入验证阶段。[138]Stojanovic认为用户应该能够分解本体变化操作,预见可能存在的冲突并给出满足需求的变化序列,要求用户能够了解每个本体变化操作的语义,而实际上这种要求是耗时且极易出错的,尤其是当本体规模很大并且复杂性很高时,人为完成这样的要求几乎不可能。

国内对于开放环境下的本体演化研究也刚刚起步。中国科学院计算技术研究所智能科学实验室提出的KMSphere —— 知识管理平台[139],其目标是在大规模的、分布的Web资源上建立动态的、跨平台的、多机构的虚拟组织,协调Web资源共享,但也没有对多用户的本[140]体演化意见冲突进行讨论。中国人民大学的李曼等指出由于语义Web规模和复杂性的增长,大规模的本体需要多个参与者参与构建和管理,并提出一种基于角色的协同构建方法RCDM。复旦大学的章少[141]雷提出开放环境下本体演化的冲突检测和冲突解决方法,他利用本体的URI构建冲突表,并针对用户是否相同或重叠的URI作为冲突判断的依据,再针对不同的冲突进行冲突解决。文献[142]虽然提出协同的概念,但是并没有充分考虑开放环境下的本体演化问题,主要[143]研究集中在企业内部和企业之间的协同。王进等通过对本体信息的抽取来支持本体演化,提出一种网络环境中的本体演化和本体管理[144]模型。复旦大学的陈叶旺根据本体变化影响的范围将本体协同构建中的冲突分为硬冲突(Hard Conflict)、软冲突(Soft Conflict)和潜在冲突(Latent Conflict),并针对不同的冲突根据影响范围给出检测算法。天津大学的饶国政在文献[74]中对于开放环境下的本体提出一种基于语义WIKI的本体库管理方法。1.3 当前存在的问题(1)本体一致性非标准推理方法有待推进

本体中的推理不但要能发现问题,还需要能够辅助本体工程师找出导致问题的原因,从而对不正确的本体进行修改。现有的本体标准推理方法和工具大多是基于描述逻辑的表推演算法,虽然能够发现本体是不一致的,但是不一致的排除仍需要本体工程师手动完成。另外,这些方法和工具并没有考虑日益增长的语义Web本体规模,因此对于Web本体的推理支持不尽如人意,非标准推理研究具有重要的应用价值和现实意义。(2)现有方法多考虑集中式环境下的本体演化

现有本体演化方法大多是在假设环境不变的情况下进行的,而实际的本体存在环境是动态、多变的。总体上看,现有方法的输入不同、本体模型不同、知识要求不同、使用情景不同,在Web这样开放的动态环境中现有方法还显露出一些难于解决的问题,如全局知识、语义副作用、不可计算性、公平性、合理性等。(3)本体变更的冲突检测研究还有待推进

用户的变更需求是难以预料的,不能保证所有的本体变化要求都能同时得到满足,也就不可能事先定义好所有的应对策略。本体越复杂越难预测之后的变化。例如,两个概念的合并可能出现不同的处理办法(交集、并集或补集)。本体变更中的冲突大多是语义冲突,而现有的基于冲突表的冲突检测方法只能够检测出操作级的冲突,对于变更序列间可能产生的语义冲突无能为力。(4)变更序列的冲突诊断研究刚刚起步

现有的冲突检测方法对于发现的冲突直接删除,没有考虑用户的变更需求。并且这些方法都需要人为定义本体变化的策略,冲突检测方法虽能够发现冲突,却不能处理冲突。所以在出现冲突的情况下,如何进行诊断并提出解决的策略是当务之急。(5)版本差异检测方法效率低

本体版本推理的目的在于根据用户的需求从版本空间为用户选择一个合适的版本。但当前基于逻辑推理的版本差异检测方法效率低,尤其不能适应大空间的本体版本和规模较大的本体。1.4 本书内容组织

本章介绍了研究背景,阐述了本体演化的基本理论和开放环境下本体演化的研究现状,分析了目前面临亟待解决的问题。

针对开放式环境中本体演化的特殊性,本书主要包含以下研究内容。

第2章对本体演化技术进行概述,主要包括描述逻辑与本体的关系、OWL 语言的逻辑基础、本体推理任务、本体推理常用方法等,是本书后续方法描述的基础。

第3章提出一种基于Alloy的本体一致性非标准推理方法。该方法首先对本体文件进行解析,提出转换算法,再以解析结果作为输入,生成用Alloy语言描述的本体模型,根据模型的推理结果对本体的一致性进行判断。该方法能够弥补现有方法不能进行 ABox推理的不足,并且对于不满足一致性推理的本体给出反例,为查找不一致问题的根源提供依据。

第 4 章提出一种改进的基于 SAT 的本体一致性非标准推理方法。这种方法首先定义一种基于逻辑的中间语言,并给出OWL本体语言与中间语言之间的转换规则,最后将SAT求解器计算的实验数据与已有方法进行对比,说明该方法支持更大规模的本体推理。对于找不到可满足解的本体,通过计算最小不可满足集来查找不可满足的原因。

第5章提出开放环境下本体演化变更序列的冲突检测算法。此研究内容在定义本体演化的基本概念和关系的基础上,对开放环境下本体变化序列之间的冲突进行研究讨论。提出冲突分类、冲突检测方法,这种方法按照冲突产生的范围将冲突分为序列内部的不一致冲突、变更序列之间的直接冲突和序列之间的不一致冲突。针对不同的冲突类型分别给出不同的冲突检测算法,并证明算法的正确性。该方法不仅能够检测出冲突,而且能够在出现冲突的情况下找到最大一致变更子序列,保证演化的顺利进行。

第6章提出开放环境下本体演化变更序列语义冲突诊断算法。算法中引入冲突变更序列矩阵、冲突序列集合、最小碰集序列等概念,对本体演化中的变更序列进行描述,进一步计算最小碰集序列集合。再引入贝叶斯概率公式计算最小碰集序列集合中概率,进而进行排序,用排序结果表示最小碰集序列集合中的最小碰集序列导致冲突的可能性。

第7章提出一种基于概念格的本体版本差异检测算法。现有的本体版本差异检测算法需要扫描整个版本空间或者整个本体版本,导致在处理版本空间较大或者本体规模较大的情况时,这类算法的时间效率非常低。针对这一问题,本书将本体版本空间的集合表示形式转换为概念格模型表示形式;在概念格模型的支持下,针对版本差异检测的典型情况,提出一组版本差异检测的算法。与基于逻辑推理的版本差异检测方法相比,该算法效率更高,能够适应大空间的本体版本和规模较大的本体。

第8章总结前几章的研究内容,设计并实现了一个开放环境下本体演化的原模型系统。▶▶第2章本体演化技术概述

本体演化过程中,需要对一致性进行检测、定位甚至是修复。本体蕴含的某个结论已知时,非标准推理希望求解它的一个或全部的最小解释,即由本体中的某些公理所构成的蕴含该结论的最小集合。演化过程中,不一致本体蕴含着若干不期望的结论,非标准推理希望能找到其成立的原因,对其进行修正可以使该结论不再成立。作为一阶逻辑的可判定子集的描述逻辑,虽具有相应的Tableau算法,用于判定系统的推理问题,但现有基于 Tableau 算法的本体标准推理工具,[96][86]如FaCT和RACER,由于计算复杂性原因不能很好地支持这些非标准的推理任务。在语义Web这样开放的动态环境中,本体演化是多个参与者共同完成的本体变更过程,这使开放环境下的本体演化要兼顾多个变更序列同时出现的特点,多个变更序列同时修改本体,在得到结果本体之前可能出现变更序列之间的变更冲突,无法保证演化的顺利进行。2.1 描述逻辑与本体[145]

本体是现实世界特定领域模型的形式化规范说明。描述逻辑是基于概念描述的知识表示语言。它以结构化和易理解的语法形式来表示领域知识,是一阶谓词逻辑的可判定子集。它具有很强表达能力,能够很好地满足本体语言在表达能力和形式语义上的要求。目前最常用的语义网络本体语言OIL、DAML+OIL和OWL等都是以描述逻辑作为逻辑基础。

一个描述逻辑系统包含3个基本元素:概念、关系和个体。大量复杂的概念和关系又可以通过构造算子在原子概念和关系的基础上构造出来。常见的概念构造算子有交(∩)、并(∪)、非(⇁)、存在量词(∃)和全称量词(∀)。断言算子包含(⊆)。另外,基本符号中还包括顶概念(T)和底概念(⊥)。

定义 2.1 (本体)基于描述逻辑知识库的本体定义为二元组O=(T,A),包括两个部分TBox T和ABox A。(1)TBox T是特定领域概念和属性公理构造集,它引入应用领域中的术语表(Terminology),是一个关于包含公理的有限集合,概念包含公理的一般形式为C⊆D,其中C和D都是概念。用C≡D表示等价公理,是C⊆D和D⊆C同时成立时的缩写。属性包含公理的表示形式为P⊆Q,其中P和Q都是属性。需要注意的是,概念集合和属性集合的交集是空集。(2)本体知识库中包含概念集合{C}、属性集合{P}和个体集合{indi}。ABox A是概念断言和属性断言构成的有限集合,概念断言的形式化表示如C(a),属性断言的形式化表示如P(a,b),其中,a,b∈{indi},C ∈{C},P ∈{P}。

定义2.2 (属性)本体中的属性定义为三元组P=(D,R,r),其中,(1)D,R⊆T是本体中概念集合的子集,分别表示属性的定义域集合和值域集合。(2)r⊆D×R,表示概念集上的二元关系。

定义 2.3 (解释)本体的语义可以通过模型语义来定义,因为它能够解释语言的语法与领域模型之间的关系。概念被解释为一个非空论域的子集,属性解释为该论域上的二元关系,形式上,一个解释IIIII=(∆,y)由非空集合∆和解释函数y构成。I(1)∆表示论域的非空集合。IIII(2)y是联系概念 C 和∆的子集 C、原子属性 P 和二元关系C×IIIIIC⊆∆×∆的解释函数。本体中的每个概念 C 解释成一个集合C(C⊆IIIII∆),每个属性解释成一个二元关系P(P⊆∆×∆)。每个个体a解释成III一个元素a(a∈∆)。

本体中任意的概念C、D和属性P满足以下的属性。IIIIIIIIIII(1)T=∆,⊥=∅,C⊆∆,(⇁C)=∆\C,(C∩D)=C∩DIIIIII(2)(C∪D)=C∪D,(∃P.C)={x|∃y s.t.(x,y)∈ P∧y ∈ C}III(3)(∀C.P)={x|∀y (x,y)∈P→y ∈C}。

定义2.4 (模型)如果存在一个解释I,能够使本体O=(T,A)中TBox的每条公理有:IIII(1)IC⊆D if and only if C⊆D;I C≡D if and only if C=D;(2)IT if and only if ΦT for every Φ ∈T。

ABox中每个断言有:IIIII(1)Ia:C if and only if a∈C ;I (a,b):R if and only if(a,b)∈R;II(2)Ia,b∈{indi}if and only if a∈a,b∈b,a≠b。

就称该解释I是本体知识库的一个模型,用Mod(O)表示本体O=(T,A)模型的集合,也就是说I∈Mod(O)。2.2 OWL语言的逻辑基础[146]

在语义Web环境下,OWL(Ontology Web Language)被万维网联盟(W3C,World Wide Web Consortium)开发为一种通用的网络本体语言,用于对本体进行语义描述。OWL 提供了三个表达能力不同、计算效率各异的子语言:OWL DL、OWL Lite和OWL FULL。其中,OWL DL在保证推理的完备性和可判定性的前提下,是 OWL 语言中具有最强的表达能力的子语言。它包括 OWL 的所有语义成分,并且具有和描述逻辑 SHOIN(D)相当的表达能力。

定义2.5 在OWL DL中,设集合E={所有类的集合,所有属性的集合,所有个体的集合},则∀A,B∈E 且 A≠B,有A∩B=∅。

OWL DL是一种表达能力很强的描述逻辑,下文用逻辑描述的语义来解释OWL DL。OWL DL提供6种类型的类描述,分别是:① 类标示符;② 枚举;③ 属性限制;④ 两个或两个以上类描述的交;⑤两个或两个以上类描述的并;⑥ 类描述的补。通过使用类描述的构造器,可以归纳定义复杂的类。例如,OWL DL可以通过使用类标识II符来声明类,等同于在描述逻辑中声明类名A,在解释I下,A⊆∆。特别地,OWL DL中定义了类owl:Thing和owl:Nothing,分别等同于描III述逻辑的概念T和⊥,在解释 I 下,T=∆,⊥=∅。这里将从OWL DL 描述语法中的类描述到描述逻辑中的类描述的映射关系总结在表2-1中。表2-1 OWL DL类描述的逻辑形式

OWL DL通过使用SubClassOf、EquivalentClasses、DisjointClasses将类组合成类公理,定义了两个类间的子类、等价、1212ni不相交关系,分别等同于描述逻辑中的C⊆C、C=C=…=C、C∩jC=⊥(i≠j),表2-2中总结了OWL DL抽象语法支持的类公理,并给出了它们对应的语法和语义。表2-2 OWL DL的类公理对应的描述逻辑形式

OWL DL的属性分为对象属性(Object Property)和数据类型属性(Datatype Property)两大类,对象属性联系个体到个体,数据类型属性联系个体到数据值。关于OWL DL抽象语法支持的属性约束及其公理对应的描述逻辑语法和语义如表2-3表示。表2-3 OWL DL的属性约束与公理对应的描述逻辑形式

OWL DL可以声明个体属性属于某个类、个体通过某个对象属性和另一个个体相关联、个体通过某个数据类型属性和一个数据值相关iiiii联,分别等同于描述逻辑中的o:C、(o,o):R和(o,v):U,其中, C表示类描述,R表示对象属性,U表示数据类型属性,o表示个体, v表示值。OWL DL可以通过使用SameIndividuals、DifferentIndividuals定义12两个个体间的等价、不等价关系,分别等同于描述逻辑中的o =o=…nij=o,o≠o(i≠j),其中o表示个体。表2-4列出了OWL DL抽象语法支持的个体公理,并给出了它们对应的描述逻辑语法和语义。表2-4 OWL DL的个体公理对应的描述逻辑形式

综合以上对OWL DL的分析可知,OWL DL的各个基本元素均有相应的描述逻辑形式,可以使用描述逻辑作为OWL DL的形式化基础,以描述逻辑的语义解释OWL DL的各个基本元素,为下文OWL本体的推理研究提供理论基础。2.3 本体推理任务

本体一致性推理贯穿于本体演化过程的始终。每一次变更都需要对本体进行推理,保证本体的正确性。

本体推理任务包括TBox中的概念可满足问题、概念间包含问题、概念之间等价问题、概念的不相交问题和ABox中的实例检测问题。这些问题都可以归结为本体TBox概念的可满足性问题,或者本[147]体ABox的一致性推理问题。首先给出这些问题的形式化定义。

定义2.6 (概念可满足)对于给定的本体O=(T,A)中的概念C,如I果存在O的一个模型I使C不为空,那么称概念C关于O是可满足的,I是C的一个模型。I

定义2.7 (概念包含)如果对于T中的每个模型I∈Mod(O)都有CI⊆D,那么称概念C关于本体O被概念D包含,记作C⊆OD或者O⊨C⊆D。

定义2.8 (概念等价)如果对于T中的每个模型I∈Mod(O)都有IIC=D,那么称概念C和概念D关于本体O是等价的,记作C ≡OD或者O ⊨ C ≡ D。

定义2.9 (概念不相交)如果对于T中的每个模型I∈Mod(O)都有IIC⋂ D=∅,那么称概念C和概念D关于本体O是不相交的。

描述逻辑系统提供基本的推理机制来检查概念的包含关系。因此,可以利用包含关系来实现其他形式的推理。[147]

定理2.1化简为包含关系(Reduction to Subsumption)。对于概念C和D,有:(1)C是可满足的C被T包含;(2)C和D是等价的C被D包含,同时D也被C包含;(3)C和D是不相交的C∩D被⊥包含。

另外,为了检测领域模型的正确性,实际描述逻辑系统中使用的描述语言都提供交构造算子“∩”,本体中的包含、等价和不相交等关系都可以简化为不可满足性问题。详见定理2.2。[147]

定理2.2对于本体中的概念C和概念D,有:(1)C被D包含C∩⇁D是不可满足的;(2)C和D是等价的C∩⇁D以及⇁C∩D都是不可满足的;(3)C和D是不相交的C∩D是不可满足的。

概念的可满足性检测是关键的本体推理,也可称为TBox的一致性推理。首先给出本体可满足问题的定义。

定义2.10 (本体的可满足性问题)对于给定的本体O=(T,A),如I果存在一个T的模型I,能够使对于T中任意一个原子概念C满足C≠∅,那么称I是T的完全模型,并且本体O是可满足的,也可以说TBox是一致的。

已有的对本体概念推理的方法中,文献[148]用自然演绎解释推理过程,但是该方法的复杂程度较高,而且不支持复合概念的包含解释;文献[149]对Tableau的扩展用修正逻辑进行了描述,提高了推理的可读性,但是其表达能力有限,不支持基数约束。更进一步,文献[150]中提出了对Tableau算法的改进,为每个实例断言添加了“生成公理”,根据矛盾断言的“生成公理”使用最小化函数求解。综上,基于 Tableau 算法的推理被国内外学者接受,但是其解释结果的可读性仍有待进一步提高,另外,如何权衡 Tableau 算法的修改幅度与其处理范围也是值得研究的问题。

定义2.11 (本体一致性问题)对于给定的本体O=(T,A),如果存在关于O的模型I,也就是Mod(O)≠∅,就认为本体O是一致的。

也就是说本体的一致性要求存在一个模型,能够同时解释TBox和ABox。TBox的所有推理都可以归结为可满足性问题(定理2.1),类似地,概念可满足问题最终也可以归结为ABox的一致性检测,因为对于T中的每个概念C有:C是可满足的当且仅当A中对应的{C(a)}是一致的。

对于T中的每个属性P有:P是可满足的当且仅当A中对应的{P(a,b)}是一致的。

明显地,本体的一致性推理可以归结为ABox的一致性推理,包括对概念断言C(a)和属性断言P(a,b)两部分。

定义2.12 (ABox一致性)给定的本体O=(T,A),若存在解释I是A的一个模型,则A是一致的。若模型又是T的解释,则称ABox A关于TBox T是一致性的。

ABox 上的一致性推理是基于 TBox 的一致性验证。因为在 T=∅的情况下,A是一致的。

例如,断言集合{Mother(Mary),Father(Mary)}对于空集 TBox是一致的。因为,Mother和Father这两个概念可以被解释为有共同元素的两个集合。而实际上,在任何知识库中这两个概念在 TBox中都存在不相交的公理约束,也就是说Family的每个模型中,都将这两个概念解释为不相交的两个集合。

随着本体的发展和广泛应用,用于本体一致性推理的工具也越来[96][85][86]越多,例如,FaCT、FaCT++和RACER都是基于Tableaux算法的专门用来描述逻辑推理的工具。FaCT(Fast Classification of Terminologies)是一个支持概念级推理的TBox推理工具,也就是支持类包含和一致性推理,不支持实例级的 ABox 推理。RACER(the Renamed Abox and Concept Expression Reasoner)实现了描述逻辑[151]R+ALLQHI(D)中的TBox和部分ABox推理。它既可以作为语义Web的推理引擎,可以看作是模态逻辑的证明器。这两种工具也都存在一定的不足。例如,它们都能够指出 OWL本体的不一致,但是不能给出解释。不一致的排除需要用户手动完成。另外,它们对于数据类型的支持有严格的限制,如整形和字符型。并且FaCT不支持ABox推理,RACER也只是支持部分ABox推理。2.4 本体演化方法

文献[12,152]中将本体演化定义为:为了使本体适时地适应不断发生的变化和这些变化导致的一致性问题而做的适应性变更。另外,文献[9,153,154]也分别对本体演化给出了自己的解释。这些解释认为本体演化包含一系列活动,并且本体的变更可能会导致本体的不一致,同时也可能影响依赖该本体的其他应用。本书重点研究的开放环境下本体演化除了存在这些问题,还具有变更过程中存在多个变更序列的特点。[67]

本章将已有本体演化方法分为三种。(1)基于代码重构思想的演化方法

基于代码重构思想的演化方法是面向本体结构变更的一类方法,主要是针对由于本体结构不合理导致的本体变更。本体结构不合理主要包括以下几种情形:①如果一个父概念的所有子概念具有同一个属性,那么该属性应该作为父概念的属性;②如果一个概念只有一个子概念,那么它应该和子概念合并;③如果一个概念的子概念非常多,那么应该考虑对这些子概念进行进一步分层;④如果一个概念和其父概念构成环,那么父子概念关系应当被删除;⑤没有属性的概念应当被删除。

通过扫描概念集中的每个概念,情形②、③和⑤可以较为容易地解决。对于情形①,目前的方法主要是借鉴软件工程中代码重构[138,155](Code Refactoring)的思想。如图2-1所示,把程序代码中的分支语句代码片段映射为概念属性,分支语句看作是本体中的概念,那么本体结构的变更就可以使用代码重构的方法来解决。对于情形④,目前主要是采用图论中的相关算法解决,将本体中的概念看作是图中的顶点,将概念间的继承关系看作图中的有向边,搜索概念间的环就转换为一个在有向图中查找回路的问题。文献[6]进一步考虑了继承概念之间的逻辑关系的冲突发现,例如,如果概念A和概念B是不相交的,那么A和B不能有共同的子概念。图2-1 基于代码重构思想的变更发现(2)基于机器学习的演化方法

基于机器学习的演化方法根据概念实例的分布情况发现需要被执行的本体变化。例如,没有实例的概念应当被删除;拥有大量实例的概念应当被分成两个或者多个子概念;如果一个概念A的实例集是另外一个概念B实例集的子集,那么A应当是B的父概念。文献[156]根据一组预定义的相似度公式,使用层次聚类算法对概念实例聚类,以此发现新的概念。文献[157]使用归纳逻辑程序技术来发现针对概念实例的关联规则,然后使用关联规则确定新的概念属性。文献[158]使

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载