面向智慧旅游的文物领域本体构建及推理

2020-09-04 04:58徐顺航杨长春葛天一陈延雪
计算机工程与设计 2020年8期
关键词:实例景点本体

徐顺航,杨长春,徐 筱,葛天一,陈延雪

(常州大学 信息科学与工程学院,江苏 常州 213164)

0 引 言

目前国内外有关智慧旅游[1,2]的研究有很多,Vecchio等[3,4]采用语义网(semantic web)中的本体(ontology)技术在旅游业知识管理领域创建电子旅游信息本体论,用于建立和增强旅游业的分析引擎。语义网[5,6]的主要思想是使得网络信息具有语义,实现更精确的人机交互和合作。本体位于语义网体系层次结构的核心位置,是共享概念的知识表示,本体的逻辑基础是描述逻辑(description logics,DL)。本体作为一个强大的知识库被用来表达各种旅游概念,实现旅游资源的整合及共享。文献[7]提出了在智能空间方法的基础上创建一种面向历史旅游的推荐服务技术,使用本体格式来保存语义描述的信息,利用本体对信息进行集成,不仅可以从现有的信息资源处理中获取信息,还可以从中推断出新的知识。然而现有的智慧旅游还存在着智能技术能力的不足、与游客脱节、不能很好满足用户需求等问题。

本文通过搜集面向智慧旅游的文物领域相关知识,使用Protégé工具基于描述逻辑建立领域概念间关系层次结构,构建了一个面向智慧旅游的文物领域本体,并针对现有文物旅游存在的不足,提出一种在本体知识库中定义规则描述进行推理得出潜在语义信息的研究方法。在智慧旅游的文物景点中,可以提供精准的语义搜索结果以及隐含的语义信息,向用户提供多样化的旅游计划建议,满足用户个性化需求。

1 本体相关理论与构建

1.1 本体概念

本体是知识表达的一种形式,表示特定领域中知识概念及其相互之间的关系,达到共享概念模型明确的形式化规范说明[8]。本体可以看成是由特定领域内的相关概念知识组成的知识库,其中包括本领域内相关概念的定义以及概念间关联关系。领域本体(domain-specific ontology)则是对特定学科领域的一种知识表述,表示某一特定领域范围内的特定知识,包括概念、属性及其之间的关系、约束等。知识因其具有显著的领域特性,可以方便领域本体进行合理有效的知识表示。知识库(knowledge base,KB)是一种存储知识实体的关于世界事实的数据库,以计算机可读的形式表示知识。随着网络数据可用性的飞速增长,语义网应用的领域范围更加广泛,越来越多的数据被表示为知识库,大多数项目中使用的知识库都是基于本体的方式表示,这样可以更好地组织和访问数据[9]。

1.2 文物领域本体构建

领域本体的构建需要遵循以下5个原则[10]:

(1)明确性:本体能说明所定义的概念内容信息;

(2)完全性:本体中定义的概念能完全表达含义;

(3)一致性:本体定义的概念和由本体推理得到的概念是一致的;

(4)可扩展性:本体中定义的概念能扩展,即添加新的概念时,不需要修改已有的内容;

(5)最小约束性:本体要对模拟的事物生成较小推断,方便用户自由按需求去实例化。

本文主要采用斯坦福大学提出的七步法和其开发的开源本体编辑器软件Protégé来构建面向智慧旅游的文物领域本体。Protégé中本体结构以树形层次显示,并且可以扩展、删除或编辑本体的类、子类、属性、实例以及关系等;还拥有多种插件,提供可扩展标记语言(extensible markup language,XML)、资源描述框架(resource description framework,RDF)、网络本体语言(web ontology language,OWL)等多种存储格式[11]。以七步法进行文物领域本体构建的步骤流程如图1所示,具体步骤如下。

图1 七步法本体构建流程

(1)明确所要构建的本体领域范围。通用类本体包含太多的知识概念,构建所需工作量太大,因此在构建本体前先确定本体面向领域和应用对象及目的。本文面向的是面向智慧旅游的文物领域本体构建。

(2)在网上查找是否有现成的本体知识库,考查复用现有本体的可能性。本体的目标是实现领域知识的共享和重用,所以在构建领域本体前,应该考虑复用现有本体。在网上查找到Virmanicl等[12]构建了一个旅游信息本体,包含旅游类别、景点和交通等概念,并基于这个本体设计了一个旅游信息系统,但是存在着不能很好的根据客户需求进行个性化服务流程的问题。于是本文通过构建文物领域本体,将其用于文物景点的历史智慧旅游的搜索中,满足游客个性化要求。

(3)搜集领域知识列出主要构成要素,罗列相关术语概念及其可能具有的属性和对应值。文物包含具体的名称、制造年代、出土地点和现藏地点等描述文物本身的基本信息;还包含一些需要通过一定的主观理解获得的信息,即文物蕴含的文化历史、功能用途以及蕴含意义等解读信息。

(4)定义类和层次结构及其关系,建立本体模型。将第(3)步中产生的概念进行分类用于描述类属关系,领域概念分类层次可以看成是一棵树形结构,树中节点与领域层次中的类实例一一对应。使用Protégé工具中的标签页OWL Classes创建本体的类及子类,定义上层关系broader和相应的下层关系narrower,其中文物领域本体中青铜器概念可视图示例如图2所示。

(5)定义类的属性,描述概念间内在的逻辑关系,概念和概念之间通过关系来交互。本体中类的属性分为对象属性(Object Properties)和数据属性(Data Properties)两种,在Protégé中选择Object Properties和Data Properties标签创建相应属性,如在Data Properties下添加related相关属性等。表1是文物领域本体中部分属性的说明。

(6)定义属性取值类型、容许的取值及其个数以及其它有关属性取值的特征。在Object Properties标签右侧勾选属性对应的性质,如上述第(5)步定义的related属性拥有symmetric相称性质。

(7)为确定的类创建一个实例,并添加属性值。在Protégé的Individuals标签页中,选择某个类,创建该类的实例并添加属性值描述。

1.3 OWL语言描述

本体构建好后选择OWL语言对本体编码、形式化存储。OWL由W3C制定,通过对本体进行形式化地语义描述,可以使得计算机能够理解本体描述的内容知识,其语法见表2。与XML和RDF支持的Web内容相比,OWL可以用来精确描述概念、属性和个体之间的逻辑关系,为知识的推理做了良好的准备。

图2 青铜器概念可视图

表1 本体部分属性说明

表2 OWL语法

OWL Lite、OWL DL和OWL Full是OWL的3种子语言,三者的表达能力根据描述需求依次递增[13]。OWL Full是OWL的一个全集,提供的表达能力最强,但很难对推理进行有效的支持,且不能保证可判定推理,因此适用于表达能力很强、语法自由以及对计算要求不高的需求。OWL Full的一个子集是OWL DL,提供了基于描述逻辑的推理功能,表达能力较强且和推理可判定,保证了所有的计算都可以在有限的时间内完成,并且相关结论都能够被计算出来。OWL DL的一个子集则是OWL Lite,表达能力没有OWL DL强。于是采用OWL DL语言描述构建的本体内容,本体构建完成后以.owl文件的形式存在。

2 本体推理

本体在构建完成后需要进行本体推理来检测概念的包含关系和一致性,通过检测出不一致来不断完善本体,确保本体中包含的所有知识不存在矛盾。基于描述逻辑(DL)来实现推理,DL定义请参见文献[14]。TBox(terminology)和Abox(assertion)组成了一个基于DL的领域本体知识库,其中TBox是该领域概念术语的公理集合,通常用于描述术语知识或相关的应用背景知识,关注的是类之间的关系,例如在构建的文物领域本体中,“防护器具和武器”是一个概念术语集合。ABox则是对于个体的断言集合,是具体的个体信息,关注的是实例关系,即个体所属类别的断言和个体之间关系的断言,例如在构建的领域本体中“剑”这一词条就是上述“防护器具和武器”概念术语集合下的一个具体实例。推理也分为TBox和ABox上的推理[15],如图3所示。实例使用Protégé本体建模工具建立本体模型,获取TBox中类的关系和属性的关系;再获取ABox中的类的实例及其属性,目的是把一个描述好的实例归入一个最具体的、最能反应它特征的类中。

图3 描述逻辑知识推理结构

2.1 Tableau算法

Tableau算法定义请参见文献[16],通过使用否定将包含推理规则规约到概念描述的可满足性上,假设概念描述为C和D,Tableau算法有以下定理来处理二者的包含关系:

在Pellet推理机中基于Tableau算法进行本体的推理,Pellet是一个实现了OWL DL推理的推理机,主要用于本体的加载、解析、验证以及调试修复,形成TBox和Abox并能实现推理服务。推理机一般可以实现两个功能,第一个是检查本体的一致性,即保证本体中已获得的类和类包含的个体实例在逻辑关系上保持一致性,没有矛盾;第二个是通过推理得到隐性的知识。

2.2 TBox推理

TBox上的推理主要是指概念的可满足性检测(Satisfia-bility),即如果在TBox T中有一个解释I使得CI是非空的,对概念C进行T的可满足性检测,那么概念C就是可T满足的。图4是概念的可满足性检测,词条“青铜器”类别在“瓷器”类别之下,通过查询通用类知识库CN DB-Pedia[17],概念分类有着明显的错误,检测出不一致将其修正,即回溯到七步法中的第(4)步,将“青铜器”从“陶器”类别下删除,将“青铜器”与“陶器”建立同级别关系。修正后再一次进行检测,直到最终检测正确为止。

图4 概念可满足性检测

2.3 ABox推理

ABox上的推理主要包括对ABox中添加的实例进行检测、个体实现以及一致性检测,其中最基本的推理是一致性检测,判断某个个体是否为某个类的一个具体实例。可以依据TBox的相关性质来检测ABox的一致性,即当且仅当一个解释I满足ABox A和TBox T中所有的公理和断言,则说明ABox A中的个体实例是一致的。图5是一致性检测,其中“青花瓷”是“青铜器”概念下的一个实例,根据2.2的方法检测出不一致并进行修正,将“青花瓷”添加到“瓷器”类别下。

图5 一致性检测

本体的构建是一个长期的工程,通过在使用本体的过程中,发现其中存在的不足并不断优化,使得所构建的本体逐渐符合实际情形。合理构建文物领域本体,为进一步的推理操作提供事实基础。

3 规则推理

本体属于数据层,可以用来表示领域资源数据,构建的面向智慧旅游的文物领域本体知识库,用户可以通过搜索概念关键词,到本体库中进行查询,得到相关文物信息。但是由于本体库中存在着未显示定义的知识,不能直接查询到隐性知识,而导致搜索的结果不能满足用户潜在需求。因此需要对本体中描述的逻辑概念关系使用规则语言添加规则描述,对本体进行推理得到新知识。将构建的本体和规则一起放入推理机中进行规则推理,推理机可以从已有知识中推断出符合用户潜在需求的新知识,并返回与搜索结果相关的更多的有关新知识的结果。

3.1 SWRL规则

虽然OWL为概念定义和分类操作提供了充分的公理,但还远远不足以表达推理规则。语义网规则描述语言(semantic web rule language,SWRL)是一种面向OWL推理的规则描述语言,通过对本体中概念的规则定义,实现个体实例的规则推理,得出新知识。将OWL和SWRL相结合,可以创建更强大的本体语言来表示知识和推理,在定义规则时可以充分结合OWL中本体丰富的表达能力,从而挖掘出更多的新的隐性知识[18,19]。

SWRL规则是表示前提(Antecedent)和结论(Consequent)之间的推导关系,其基本形式为Antecedent → Consequent,且两者之间都可以包括单个或多个基本命题,命题之间通过逻辑与建立连接关系。SWRL在本体中主要使用以下两个限制式:

(1)C(x):x是本体的一个实例,而C则是一个类,即说明类C下的一个实例是x;

(2)P(x,y):x和y是本体的实例,P是对象属性,说明x和y之间存在的关系为P。

3.2 SWRL规则推理

基于本体的规则推理,是在构建的本体知识库中为本体概念实例添加规则描述,从而制定相应的规则库,然后借助推理机按照推理算法可以从已存在的事实中推理出隐性结论,通过遵循SWRL规则,可以增强本体的语义信息[20]。从面向智慧旅游的文物领域本体出发,对推理规则的定义主要从以下两个方面出发:

(1)在文物领域本体中,用户需要了解文物具体代表的相关信息,相关推理规则定义如下:

[Rule1: cultural relic(?x) → hasMeanings(?x, ?y)];

[Rule2: cultural relic(?x) → hasUsage(?x,?y)];

[Rule3: related(?x, ?y) → related(?y, ?x)];

其中Rule1和Rule2中x是文物实例,y是本体中定义的对象属性涵义或者拥有用途,即如果x是某文物,那么x具有某种涵义或用途;Rule3中x和y是实例,即如果x和y相关联,则y与x相关联。

(2)在智慧旅游中,用户除了想要知道某景点具体信息外,可能还会想要了解景点的周边景点以及周边景点的相关信息如饭店住宿等,因此根据本体中定义的nearBy属性,定义推理规则如下:

[Rule4: nearBy(?x, ?y) ∧ nearBy(?y, ?z) → nearBy(?x, ?z)];

[Rule5: hasCulturalRelic(?x, ?y) ∧hasCulturalRelic (?m, ?n) ∧ related(?y, ?n) →related(?x, ?m)];

Rule4中,x、y、z为3个不同实例,nearBy为对象属性。该规则的前提是:如果x附近有y,并且y附近有z,则推理结论是x附近有z。Rule5中x、m为景点实例,y、n为具体文物实例,hasCulturalRelic和related是属性关系。则上述规则说明景点x有文物y,景点m有文物n,并且文物y与文物n是具有关联关系的,则推理出景点x与景点m也是相关联的。

4 实验结果与分析

4.1 实验案例

将构建的文物领域本体运用到智慧旅游中,可以为用户提供多样化的旅游计划。在智慧旅游中,用户通过搜索得到景点A,景点A附近存在景点B,景点B附近又存在景点C,而景点C又满足用户需求,通过推理规则Rule4可以向用户展示景点C的相关信息。

例如当用户输入青铜器A这一概念查询词时,可以向用户展示所构建的领域本体知识库中存在的青铜器实例A的详细信息如意义和用途等。用户有时并不只关注所搜索的信息结果,还会去深入了解信息背后所隐含的知识。此时由于在构建的本体中青铜器实例A存在着hasLocation属性,即青铜器A的原出土地B以及现收藏地C,构建的规则如Rule6所示,向用户展示文物景点B和C可能感兴趣的相关内容信息,达到智慧旅游满足用户个性化需求,提供更加便利快捷的智能化的服务需求的目的。

[Rule6: bronzeVessel(?A) ∧ unearthedPlace (?A, ?B) ∧ locatedIn(?A, ?B)→related(?B, ? C)];

4.2 推理实现

用OWL语言存储的领域本体提供推理事实的基础前提,而用SWRL语言编写的规则提供推理的要求,在Protégé中使用推理机将文物领域本体和相应的SWRL规则进行集成导入,推理产生新知识,得到文物领域本体中的隐含知识,将满足条件的实例推理结果加入到相应的查询结果中反馈给用户,用户根据推理结果选择满足自己需求的服务。基于规则推理的查询实现,通过自定义规则推理挖掘隐含知识以提高查询效果,其中推理流程如图6所示。

图6 本体规则推理流程

将自定义推理规则加载到Pellet推理机中,进行推理使得本体中本来不存在关联关系的实例变得联系起来,产生新的结果概念。通过推理机对概念的推理,完成基于语义的信息检索,推理得出隐性知识,可以满足用户潜在需求,得到想要的结果。图7是SWRL规则导入图,图8是根据图7的规则推理得出的结果。

图7 SWRL规则

图8 推理结果

5 结束语

本文利用本体建模工具Protégé构建了面向智慧旅游的文物领域本体,并通过本体的一致性检测等推理确保本体中包含的知识没有矛盾,用OWL语言进行存储形成本体知识库;解析OWL表达的语义关系,通过构建SWRL规则,在推理机中进行推理,能够从已知的知识中推理出隐含知识,向用户提供其感兴趣的潜在语义信息,满足潜在需求。为防止收集的领域知识不完整,构建的领域本体不充分,导致推理不出结果,下一步工作将进一步完善现有本体,引用外部通用型中文知识库CN DB-Pedia来辅助推理,与现有的领域本体建立连接,使用本体映射和本体演化等技术以便更好地推理出符合规则的隐性知识。

猜你喜欢
实例景点本体
眼睛是“本体”
打卡名校景点——那些必去朝圣的大学景点
基于本体的机械产品工艺知识表示
英格兰十大怪异景点
没有景点 只是生活
景点个股表现
完形填空Ⅱ
完形填空Ⅰ
专题
Care about the virtue moral education