基于知识资源的语义推理分析研究

上传人:zhan****gclb 文档编号:201300640 上传时间:2023-04-19 格式:DOCX 页数:30 大小:1.29MB
收藏 版权申诉 举报 下载
基于知识资源的语义推理分析研究_第1页
第1页 / 共30页
基于知识资源的语义推理分析研究_第2页
第2页 / 共30页
基于知识资源的语义推理分析研究_第3页
第3页 / 共30页
资源描述:

《基于知识资源的语义推理分析研究》由会员分享,可在线阅读,更多相关《基于知识资源的语义推理分析研究(30页珍藏版)》请在装配图网上搜索。

1、国家科学图书馆青年领域前沿项目研究报告(2008年)基于知识资源的语义推理分析研究汤怡洁 杨锐 李桂菊 周子健 刘毅2010.06引言万维网之父Tim Berners Lee 等人于2001年在科学美国人杂志上提出了“语义Web”的概念,预见了未来智能化Web时代的到来。Tim等人所倡导的语义Web定义为:“语义Web不是产生一种新的Web,而是针对现有Web的扩展,Web中的信息语义被良好定义,使人与人、人与计算机之间能够更好地协同工作。” 语义Web不仅仅是为了共享资源,更是为了共享知识。目前海量的网页数据中,有近80%的内容来源于数据库中的数据,因此在万维网中共享的不是网页内容,而是数据

2、内容的集成和共享。在语义Web中,处理的对象不再是以超级链接连接的页面文本,而是具有一定语义的数据内容。所以万维网将变成一个语义关联的数据网络,人们能够像使用数据库那样在万维网上获取到所需的知识。随着新兴ICT技术的急速发展,科研环境中的各类研究对象(数据、文献、设施、过程、机构、人员、政策等)正日益信息化数字化网络化,一个按照科研生命周期、充分支持各类数字化信息对象、支持多种网络化知识组织与传播形态、支持知识的创造、交流、分析、组织、保存等全过程的综合数字科研信息环境正在迅速发展。科研人员在科研环境中的活动行为需求发生了根本的转变,从最初的数据到信息再到知识。所以,对知识内容和知识能力进行智

3、能化集成管理已经成为科研环境建设的重要任务。语义Web技术将是实现这一重要任务的关键技术之一,语义web知识库将为智能化管理知识内容提供有力支撑。中英文摘要摘要:随着新兴ICT技术的急速发展,科研人员在科研环境中的活动行为需求发生了根本的转变,从最初的数据到信息再到知识。该项目针对科研用户在科研过程中对显性知识和隐性知识的需求, 从语义推理技术国内外发展现状,研究热点入手,分析了知识资源语义推理的发展趋势。项目的研究重点放在了系统设计实施阶段如何进行高效的语义推理,通过推理实验模型的构建,比较Lucene全文检索和语义检索的检索效果。 关键词:语义推理;语义检索;推理机;知识发现Abstrac

4、t:With the rapid development of new ICT technologies, the demand of researchers in the scientific research activities has a fundamental change, from data to information then knowledge. This project in view of scientific research user in scientific research process to demand the explicit knowledge an

5、d implicit knowledge, from the current development status, research focus of semantic inference in the world, analyzing the development trend of knowledge semantic inference. This project focused on system design and implementation phase, how to do effective semantic reasoning. Through the construct

6、ion of experimental model of reasoning, comparing Lucene full-text search and semantic search.Keywords:Semantic Inference; Semantic Search; Inference Engine; Knowledge Discovery 一、语义推理国内外发展现状ISWC系列会议 http:/iswc.semanticweb.org/ 2009提出,可扩展的语义网知识库系统有两个需求:首先必须通过提供足够的推理支持来满足应用的语义需求;其次可扩展性要强,可见知识推理技术是基于本

7、体知识库的基础。目前,语义推理主要实现技术包括:1. 基于传统描述逻辑的推理方法典型代表有Pellet、Racer和FaCT+,它们都是基于传统tableau算法设计并实现的本体推理机,同时也引入了许多Tableau算法的优化技术,从而使得它们的推理效率很高。2. 基于规则的方法本体推理作为一类应用,可以映射到规则推理引擎上进行推理。例如,要用Jess规则推理引擎对OWL本体进行推理,只需要以产生式规则的形式,向系统中输入OWL的每种语言成分含义的有关规则,Jess规则推理引擎基于这些规则就可以用对OWL形式给出的本体进行推理了;同理,若对DAML形式给出的本体进行推理,只需要向Jess规则推

8、理引擎提供DAML的每种语言成分含义的有关规则。3. 利用逻辑编程方法基于演绎数据库(Deductivedatabase)技术实现,基于这种方法实现的技术原理是一个owLLite的子集可以用Datalog或prolog完全刻画。德国卡尔斯鲁厄大学的KAON2是一个采用这种技术方法实现的典型例子。4. 基于一阶谓词证明器的方法由于OWL声明语句能够很方便地转化为FOL,因此也就可以很方便地利用传统的一阶谓词证明器实现对OWL的推理。国际上目前针对语义推理的热点研究领域主要涵盖了以下几个方面:(1)理论方面由于OWL的逻辑基础是描述逻辑,因此扩展描述逻辑表达能力并开发对应的正确有效的推理算法成为了

9、人们研究的热点。(2)功能方面支持规则推理,如支持SWRL便是典型的一例,这样的系统有Bossam G.Antoniou, H.Boley.Bossam, An Extended Rule Engine for OWL Inferencing: RuleML 2004, LNCS 3323, 2004, 128-138;支持多版本本体查询与推理,典型的项目有MORE Multi-Version Ontology REasoner, http:/wasp.cs.vu.nl/sekt/more, 2009;支持不一致本体的推理,典型代表有PION Reasoning with Inconsiste

10、nt Ontologies: Evaluation, http:/www.sekt- 2009;支持分布式本体的推理,较新的项目有DRAGO DRAGO: Distributed Reasoning Architecture for the Semantic Web, http:/drago.itc.it/, 2009;另外优化用户界面以及为开发用户提供更为丰富的程序开发接口等都是本体推理机发展的最新趋势。(3)应用方面进一步为语义WEB七层模型中的证据层提供解释服务,这样的参考应用系统有美国斯坦福大学的wineAgent项目 Wine Agent, http:/ksl.stanford.ed

11、u/people/dlm/webont/wineAgent/, 2009;进一步结合本体编辑器,为用户提供Debug服务 Aditya Kalyanpur, Bijan Parsia, Evren Sirin, Bernardo Cuenca Grau, Repairing Unsatisfiable Concepts in OWL Ontologies, ESWC2006: 170-184;另外把本体推理机更好地集成到大型本体服务器中都是本体推理机应用的最新趋势。二、语义推理相关技术研究1. 描述逻辑描述逻辑 http:/en.wikipedia.org/wiki/Description_l

12、ogic, 2009是一种逻辑形式,也称为一种逻辑语言,是一阶谓词逻辑可判定的子集,能够提供可判定的推理,是一种基于逻辑的知识表示形式,描述逻辑的可判定性是与一阶逻辑的最主要区别。描述逻辑的基本构件包括概念(Concepts),角色(Roles)或称属性,个体(Individuals) F.Baader, D.Calvanese, D.Nardi, and P.F.Patel-Schneider, editors. The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge Univer

13、sity Press, 2003。概念是对资源对象集合的抽象描述;属性描述和判定了资源对象的性质和对象间的关系;个体是资源对象的具体化。三者的不同组合和有效组合构成了对知识信息的表达,同时通过对概念、角色和个体进行逻辑上的限定性约束,使描述对象具有描述逻辑层次的语义表达能力。当前存在多种描述逻辑形式或描述逻辑语言,如AL、ALC等。其中AL(Attributive Language)是最基本的描述逻辑,它针对的是任意一个原子概念和它的否定形式的判定问题;ALC(Attributive Language Complement)是一个相对简单的逻辑子语言,是对AL的补充,是最小的命题封闭的描述逻辑

14、,具有典型而且简洁的逻辑语义,常用的描述逻辑语言多数是对ALC的扩展得到的,如ALCO、ALCQ、ALCQO、ALCIO、ALCQI、ALCQIO等。ALC由TBox和ABox两部分组成,TBox表示概念断言是集合体概念信息的抽象表达,ABox表示实例断言是资源对象的具体化描述。ALC支持的推理分为基于TBox的推理和基于ABox的推理两大类,前者依据的是完全的TBox概念语义,语义推理的目标是概念层次的;后者是以TBox概念断言为依托,分析ABox的实例集合解决实例层次的语义信息揭示问题。描述逻辑ALC的语义推理形式可以分为基于TBox概念断言的概念蕴含推理、概念等同推理、概念脱节推理和可满

15、足性推理四种,以及基于ABox实例断言的实例检验、实例检索和一致性检验三种,这七种类型的语义推理是描述逻辑能够支持的推理形式。2. 推理算法用于语义推理的推理算法很多,其中最为常用的算法包括Tableau算法和Rete算法。目前各种流行的推理机所使用的算法多为这两种算法的优化算法,均以Tableau算法和Rete算法为基础。下面具体分析这两种算法。2.1 Tableau算法Tableau算法 F.Baader, U.Sattler, An overview of tableau algorithms for description logics, StudiaLogica, 2001, 5-4

16、0, I.Horrocks, Optimising Tableaux Decision Procedures for Dscription Logics PhD thesis, University of Manchester, UK, 1997是传统描述逻辑推理系统的核心算法,因为所有其它的推理功能如分类、包含等都可以规约为概念的一致性检查,而Tableau算法就是具体负责概念一致性检查,它最早由Schmidt-Schau和Smolka为检验ALC概念的可满足性而提出,该算法能在多项式时间内判断描述逻辑ALC概念的可满足性问题,Tableau算法被广泛用于各种描述逻辑中以判断概念的可满足性或

17、概念间的包含关系,各种优化的Tableau算法也已在实用推理机例如FaCT、Racer等中得以实现。Tableau算法其基本思想是试图通过构建一个C的模型来证明概念C的满意度。一个满足R的推断I中CI不为空。算法在一个树(或树集合)上运行,各节点被定制为C的子概念集,边被定制为C上发生的角色集。在树中的节点相当于在概念(角色)的推断中的元素(元组)。通常,一个单独的树从被定制为C的根节点初始化。该算法竭尽全力应用Tableau规则分解节点上定制的概念的语法结构,或者扩展节点标志,向树中添加新的边和节点,或者合并边和节点。一个规则的应用有效地说明了从概念到应用的规则暗示了推断的约束,例如,如果A

18、B是一个节点x的标志,那么规则被添加到A和B的标志中,这说明一个事实,那就是如果x(AB)I,那么xAI且xBI。简单的说,如果R.A是一个节点x的标志,那么规则添加一个标志为A的新的节点y,它在x和y之间带有一个标志为R的边。这也说明一个事实:如果x(R.A)I,那么就必须存在一个节点y,使得(x, y)RI,yAI。如果存在明显的矛盾,那么建立模型的尝试就失败了,这通常被称为产生了冲突。例如,如果包含某个概念D的D和D的某个节点,如果没有新的规则需要被 应用了,而且一直没有冲突产生,那么建立的模型就成功了。当且仅当规则可以按照让模型被成功的构建的方式应用,证明一个概念是满意的就相对简单了。

19、算法的计算复杂度由于一些规则不确定的事实而增长。事实上当冲突产生时,处理方式是通过回溯试图找到另一个不确定的规则进行应用。这一基本理论用于SHOQ (Dn)中。首先,算法在一个森林或树上运行,需为概念C中每一个名词(术语)构建一个附加的树。被称为模块化的循环检测的形式也必须被用于确保终止。其次,算法需要使用一个类型检测器来检测源自数据类型存在性、值、最大概念和最小概念等的推断的约束。一般来说基于Tableau算法实现的本体推理机具有图1所示的典型系统结构。图1 基于Tableau算法实现的推理机系统结构图其中本体解析器负责解析本体和获取本体中TBox知识和ABox知识,并分别把它们送入预处理器

20、和一致性检查引擎中。预处理器主要负责把概念表达式进行范式化,即把概念描述转换成一个标准的否定范式,然后再执行简化操作,经过预处理之后,包含和一致性问题能够得到简化,有时可以通过语法检测明显的可满足性从而完全避免了比较耗时的一致性检查,Absorption操作主要是为了把一般公理转化成原子定义公理,通过这个Absorption操作,能够大幅度提高推理机的性能,经过上述两步之后TBox分成了Tu和Tg两大部分,Tu直接送入一致性检查引擎,Tg则还需要通过一个内化操作,它可以把一个全局属性的问题归约为单个概念的可满足性检查,除了上述的体系结构图所描述的一些基本优化器之外,还有许多的优化器没有整入,譬

21、如偏序优化,它在对KB进行分类的过程中可以减少包含测试的次数,还有包含检查优化,它可以避免采取代价昂贵的一致性检查策略,同样如果采用了一致性检查优化策略还可以进一步减少一致性检查时间。2.2 Rete算法Rete算法 Giarratano and Riley, Expert Systems: Principles and Programming, Second Edition, PWS Publishing, Boston, 1993, Forgy.C, RETE: A fast algorithm for the many pattern/many object pattern match

22、problem. Arti_cial Intelligence, Neil Madden 2003 Optimising RETE for low-memory, multi-agent system的发展是为了解决规则范式如何快速匹配事实这一核心问题。1982年由美国卡耐基-梅隆大学的Forgy教授在人工智能杂志上提出,原理是将匹配过程中生成的中间结果一直存储在内存中。例如,在规则系统的常规执行中,传统做法是将事实与规则范式比较直至两个事实都被断言,但在Rete算法中,事实只匹配一次,范式中的变量(x)就被存储起来。接着,如果另一个事实被断言,就只用简单的比较x的值,如果相等,这个规则就被激

23、活了。在基于规则的语言中,范式是组成规则的元素。Rete算法决定规则的运行。Rete是用一个静态判别网络,由语言编辑器生成,在规则间表示数据的信任。Rete避免了在工作存储中进行数据添加期间进行不必要的重复匹配计算,取而代之的是在网络中被称为beta存储的节点中存储中间匹配变量。从(或向)工作存储添加(或删除)数据在Rete中试均衡的:删除数据的操作序列和添加数据是相同的。Rete用空间换取时间:匹配的结果加入存储器中为以后重用做准备。Rete算法奇迹般的减少了匹配的数量,匹配的数量通过维持一个包含了内存中信息的有向图数据结构在每次循环中必须被执行。途中的第一层节点被称为alpha节点。每一个

24、alpha节点表示一个单一的范式。当规则中不止一个范式时,alpha节点被beta节点连接起来完成两个节点的联合。Beta节点再连接到更远的beta节点,直至生成一个单独的节点。这个最终的节点表示了完整的规则。当一个事实被断言时,一个令牌就被创建并被送入Rete网路中处理该事实类型的alpha节点。令牌是一个关于该事实并包含特殊信息的包,这些特殊信息比如该事实是被断言还是退回。如果这个令牌在一个alpha节点中匹配范式成功,它将被传到下一个节点,同时范式中所有的变量都被存入一张表中,这被称为节点存储。Beta节点从alpha节点的存储表中获取行并试图将它们合在一起,验证同名的变量是否值也相等。

25、例如,如果一张表中某行包含变量A=1和B=2,另一张表中的一行包含变量A=1和C=3,于是一个新行就被创建在beta节点中,这行包含值A=1,B=2,C=3,于是令牌通过了。如果两张表中A的值不相同就不会生成新的行,令牌也不会被通过。当令牌在Rete网络中走过所有的路径就会出现一个表示整个规则的终端节点。由于令牌到达终端节点,规则中的所有的范式必须已经被匹配,因此规则能被激活。Rete算法的主要优势在于规则的条件在一个事实被断言或删除时仅被再评估。用这种方式,断言一个新的事实仅仅是向网络中传递一个令牌,只有很小数量的匹配被执行。在常规执行那个,每一个新的事实都将与每一个规则的每个范式进行比较,

26、这意味着大量的时间复杂度。撤销一个事实与断言是一样的,但是信息在节点存储中被清除了。Rete算法有编译时间和运行时间之分。在编译时间规则的前件被编译到一个判别网络中,由操作代码语言表示。Rete网络是一个数据流网络,在规则环境下表示数据的相关性。在运行时间数据项表示工作存储中内容的变化,称为变换令牌,在网络的根部进入沿着路径执行。变换令牌或者表示向工作存储中添加操作或者表示从中删除操作。网络包含有两种节点:测试节点和联合节点。Rete算法的使用大大提高了规则匹配的效率,但是它为保存中间结果占用了大量的存储空间。由于存储空间的几何增长,以存储空间换取执行的时间,当推理的知识库比较大时,对存储空间

27、的消耗是惊人的。为提高Rete算法的存储效率,减少存储空间的消耗,一些改进算法(如TREAT,RETE*)也相应提了出来。3. 推理机当前已经出现了多种用于本体推理的推理机,根据是否针对某些具体本体描述语言而实现把本体推理机划分为专用和通用两大类。下表为当前在语义推理方面使用最为流行的推理机列表(1) RACERRacer http:/www.racer- 2009最早是由德国汉堡大学开发的,后来Racer Systems GmbH & Co. KG公司将其作为商用软件正式发售。是基于描述逻辑系统的,所采用的算法是Tableau算法,处理基于描述逻辑的OWL DL具有可靠性和完备性。目前最新版

28、本为2.0,有试用版免费下载,要正式使用需花费购买license。Racer提供了TBox和ABox推理功能,一个TBox包括通用概念及概念之间的包含关系。概念的多定义和循环定义可以在Racer中执行。Racer可以将OWL DL描述的本体直接转化成为描述逻辑的形式,然后进行自身的推理服务。Racer推理功能如下:概念一致性检测,判断一个概念是否合理;概念的包含关系检测,检查两个概念的一系列的被描述的对象是否存在交集的关系;发现TBox中定义的所有概念存在的矛盾,矛盾概念可能是一个错误原型所导致的;确定概念之间的双亲和孩子关系。通过概念之间的这种层次性关系,可以实现属性的继承。通常在进行本体设

29、计时,存在较多的约束条件,这些约束有比较复杂的关系制约,因此需要一套引擎可进行语义的推理将OWL本体中存在的关系解读出来,这种推理主要是结合RDF和OWL的解释器和描述逻辑推理,若仅仅有解释器,只能解释其语法架构,但对于属性关系间是否发生冲突时无法判定的,所以需要解释器和描述逻辑推理的结合运作。这样可以,由目前具有的知识推出本体隐含但未被建立的知识。所以,我们可以说,本体描述了特定领域资源之间的关系,推理就是由一定的法则关系,通过已知的关系推出潜在而未知的关系,并且发现只是定义中矛盾之处。Racer的主要工作过程如图2所示,图2 Racer推理机工作过程使用者将欲推理的本体输入,经过解释器解析

30、为ABox、TBox。ABox主要由三元组组成,即主体、谓词、客体,每一个主体和客体又可以成为其他三元组的主体或者客体,将解析后的TBox和ABox进行Tableau推理。Racer推理系统可以使用JRacer的Java API来和Racer系统进行TCP通信。并且使用nRQL(new Racer Query Language)从Racer那里取回实例的解析数据。JRacer API可以方便实现Racer和nRQL到Java类。OWL本体通过Racer的内部解析机制进行本体知识的解析,通过相应的API实现与其他程序的接口。(2) PELLETPellet 2009是美国马里兰大学MINDSWA

31、P项目组专门针对OWL-DL开发的一个本体推理机,基于描述逻辑Tableau算法实现,最新版本Pellet-2.0.0-rc7,能够支持OWL-DL的所有特性。它是一个开源项目,美国斯坦福大学研发的本体编辑工具protg在4.3版本后,内置了PELLET作为推理工具使用。Pellet推理机的体系结构图如图3所示,主要描述了Pellet推理机的主要组成部分。RDF/XML解析器主要是将OWL本体解析为RDF三元组,支持的格式包括RDF/XML和N3。在三元组转换为知识库的公理和断言的过程中,Pellet起到本体类的校验作用。如果本体级别为OWL FULL,Pellet推理机可以利用自身的推理探索

32、进行本体的修补。例如,一个未定义的资源应用在三元组的谓词,如果该三元组在客体处为字符,则推断出该未定义的资源为一个数值属性。通常来说,Pellet将类的公理存储在TBox组件中,将实例的断言存储在ABox组件中。图3 Pellet推理机体系结构Pellet有许多的优点:它能很好的支持OWL,包括OWL Full的可修复子集;它能广泛的支持XML Schema的数据类型;它涵盖我们所知道的任何OWL DL推理机的所有范围,包括:SHIN(D)、SHON(D)、SHIO(D) 、SHOIN(D),以及它们合并的子集,Pellet是开放源代码的推理机之一。(3) JESSJess 2009是1995

33、年由美国Sandia国家实验室分布式系统计算组成员用Java实现的一个经过扩充的CLIPS版本,是性能良好的开放式推理机。能够很好的完成规则推理任务,其规则匹配采用经典的RETE算法,以牺牲大量的存储空间来换取匹配的高速性。目前最新版本是Jess7。Jess(Java Expert Shell System)是性能良好的开放式推理机。能够很好的完成退则推理任务。它的推理机制和传统的专家系统相似,如图4所示,其规则匹配采用经典的RETE算法,以牺牲大量的存储空间来换取匹配的高速性。Jess原则上可以处理各种领域的推理任务,只要系统能够为Jess提供这个领域的特有领域退则和事实信息。以本体的形式描

34、述的知识当然也可以作为一类应用,同时结合SWRL产生Jess规则,只要对本体知识和SWRL规则进行相应的格式转换,就可以进行推理。图4 Jess推理机推理机制Jess的组成和其他专家系统的组成类似,也是由事实库、规则库、推理引擎三大部分组成,Jess相对于其他推理引擎的优势就是在他采用的是高效的RETE算法,同时Jess支持前向和逆向推理两种方式,前向推理同CLIPS的原理相同,逆向推理则是Jess不同于CLIPS的一个显著特征。在Jess的逆向推理中,规则仍采用“ifthen”结构,但是在逆向推理时,推理引擎执行的是前件没有得到满足的规则,这种行为常常被称为目标寻找。显然,Jess同时支持前

35、向和逆向推理的特点使其推理能力得到了加强。推理的效果很大程度上依赖于匹配算法的效率,Jess通过实现RETE匹配算法来提供非常高效的前向和逆向推理。RETE算法利用了专家系统中实践冗余性和结构相似性这两个特点,有效地减少了用于匹配操作的次数。因此,当系统的性能是由匹配算法的质量决定时,Jess的优点将更为明显。应当指出的是,RETE算法是一个以空间换取时间的算法,所以,应用Jess时应当考虑内存的消耗。(4) FACT+FACT+ http:/owl.man.ac.uk/factplusplus/ 2009是FACT的新一代产品,是英国曼彻斯特大学开发的一个描述逻辑分类器,采用了基于CORBA

36、的客户端/服务器模式。FACT+为了提高效率和获得更好的平台移植性,采用了C+而非FACT的Lisp语言来实现,是开放源代码的推理机之一。(5) JENAJENA http:/www.openjena.org/ 2009是来自于惠普实验室语义网研究项目的开放资源,是用于创建语义网应用系统的Java框架结构,它为RDF、RDFS、OWL提供了一个程序开发环境。JENA被设计成一个具有三层(Layer)架构和多种视图(View)的开发框架(Framework),它有多种应用程序开发接口提供给系统级和应用级的开发人员,具有很高的灵活性。具体包括用于对RDF文件和模型进行处理的 RDF API,用于对

37、RDF、RDFS、OWL文件(基于XML语法)进行解析的解析器,RDF模型的持续性存储方案,用于检索过程推理的基于规则的推理机子系统,用于对Ontology进行处理和操作的Ontology子系统,用于信息搜索的RDQL查询语言。推理功能是JENA中的一个子系统,目的在于将推理机制与推理器引入到JENA系统中。JENA提供的是基于规则的推理机,例如RDF推理机、OWL推理机等,除了可以通过这些推理机进行一般推理外,用户还可以自定义推理规则,或者是引入其它推理引擎,如Racer、Pellet等。JENA的推理机结构如图5所示图5 JENA推理机结构图应用程序通常是通过使用ModelFactory访

38、问图5.2的推理机制,并为相关联的Reasoner建立一个新的Model。对这个新创建的Model进行查询,不仅会返回对原来数据的描述信息,同时会返回通过Reasone:中的规则执行后的附加信息。如图5.2所示,任何模型接口都要通过InfGraph构建,因为所有推理机制的执行都是在 Graph SPI层进行。Ont/Model API为构建的OntModels提供了一种便利的方式与合适的推理机相连。作为 RDF API的一部分,Jena提供了一个InfModel,它是Model模型接口的扩展。推理结构中的Graph-base assertions指的是和Reasoner一起绑定的数据(XML数

39、据-实例),而Graph-ontology definitions指的是和Reasoner一起绑定的数据结构的限制(也就是XML模式一概念和关系)。Reasoner Registry是一个静态类,当前可用的所有Reasoner都可以通过它被检测。(6) KAON2KAON2 http:/kaon2.semanticweb.org/ 2009是德国卡尔斯鲁厄大学和其他一些科研机构合作开发的,是管理OWL-DL, SWRL和F-Logic本体的基础设施。它是在KOAN的基础上做了进一步的完善。KAON2与KAON1的不同在于,KAON1基于RDFS及其扩展,而KAON2基于OWL-DL和F-Log

40、ic。KAON2的特点主要体现在以下几个方面: 提供OWL-DL, SWRL和F-logic本体的API 利用RMI以分布式方式提供对本体的访问的独立服务器 回答以SPARQL表示的连接查询的推理引擎 DIG的界面,允许从PROTG等工具访问 抽取关系型数据库中现有的本体实体的模块。 KAON2的API能够处理OWL-DL本体,API可以读取OWL XML Presentation Syntax和OWL RDF Synatx 对于推理,KAON2支持SHIQ(D).这是OWL-DL的子集。这包括除nominals以外的OWL-DL的特征,因为nominals不是OWL Lite的组成部分,KA

41、ON2支持所有的OWL Lite。 KAON2也支持SWRL的所谓的DL-safe的子集。这个约束可以使得推理可决定。 KAON2的API也能处理F-logic的本体,它支持F-Logic的功能子集。 KAON2中查询可以用SPARQL构造,但是并不支持所有的SPARQL规范,采用KAON2的项目包括EU IST OntoGov,EU IST SEKT项目,BMBF的SmartWeb项目。但是,近几年KAON2的很少进行进一步的开发以及维护工作。通过对上述推理机的分析研究发现,Racer 是商业软件,FaCT+不支持OWL 语言和本体查询,所以最广泛使用的本体推理机是Jena 的推理机和用Ja

42、va 编写的开源的Pellet 推理机。Jena作为本体存储系统带有简单的推理功能,支持基于规则的简单推理,自身包含的推理机基本上就是一种CLISP配合本体领域产生式规则的前向推理系统,支持RDF的数据表达、解析、查询和支持本体。然而,仅采用Jena作为推理工具并不能达到深层语义上的推理,为了实现OWL层面的语义推理,还需要采用专业推理机,例如Pellet所支持的OWL DL级的推理,可处理描述逻辑的本体,推理是基于tableaux算法,比Jena所支持的表达能力要强的多。所以,大多数应用采用Jena通过DIG接口调用Pellet做OWL DL级的推理。三、 推理模型设计和实现1. 实验模型分

43、析和总体架构1.1 总体架构项目中设计的实验模型主要是以检索为表现形式,利用构建的本体进行知识库中知识资源的推理与发现。模型实现了不同的检索模式(全文检索、语义检索)对知识库中的知识资源进行检索。模型总体架构如图6所示:图6 模型总体架构图1.2 功能描述实验模型的检索推理都是建立在以本体为组织形式的知识库基础上的,因此本体构建与存储是首先需要实现的功能。本项目中选用了国家科学图书馆综合科技信息组建立的中科院专业领域知识应用环境资源本体(Subject Knowledge Environment Ontology,SKEO) 中国科学院国家科学图书馆数字图书馆二期建设关键技术研究,通过模型实现

44、其数据库持久化存储。除了上述本体构建与存储功能外,实验模型主要分为三个主要部分,检索词预处理模块、语义分析模块和检索模块:1) 检索词预处理模块检索词预处理模块主要是针对用户输入的检索词进行初步的分析,利用中文分词工具ICTCLAS http:/ictclas.org/ 2009对自然语言进行处理。在 用户界面上,用户无需再按照检索项逐条输入检索词,而是在一个输入框中输入所有检索条件,该模块会对检索词进行拆分,分析各项查询项,最终得出检索词组。2) 语义分析模块语义分析模块是在检索词预处理模块处理完成后,根据用户选择的检索模式(语义检索)触发该模块。语义分析模块主要是利用本体中的概念和语义推理

45、规则,将通过预处理的检索词组带入推理机中进行操作。这里考虑利用Jena自带的推理子系统和Pellet专业本体推理机进行推理,根据Jena创建的本体模型和推理机生成相应的包含了规则的推理模型。通过推理模型对检索词进行推理操作,获取包含语义关系的检索词组送入检索模块。3) 检索模块检索模块主要分为两种检索模式,全文检索和语义检索。全文检索是利用Lucene全文索引工具包将进行过预处理的检索词组放入全文索引中进行检索,返回所有与之匹配的记录信息。语义检索是在语义分析模块对检索词进行分析、推理、扩展、规范化的基础上,利用规范的关键词组在知识库中进行检索,检索过程中调用推理模块进行隐含知识的发现。1.3

46、 主要开发工具根据实验模型的总体架构以及功能描述,对系统开发工具的需求主要包括,Java集成开发环境、本体构建与编辑工具、基于Java的开放源代码本体操作工具包、专用本体推理机以及Java全文索引引擎开发包。1) EclipseEclipse http:/www.eclipse.org/ 2009 是一个基于 Java 的开放源代码可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE。JDT支持Ja

47、va开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。2) ProtgProtg http:/protege.stanford.edu/ 2009软件是斯坦福大学基于Java语言开发的本体编辑和知识获取软件,属于开放源代码软件。由于其优秀的设计和众多的插件,其已经成为目前最广泛的本体论编辑器之一。Protg提供了本体概念类,关系,属性和实例的构建,并且屏蔽了具体的本体描述

48、语言,用户只需在概念层次上进行领域本体模型的构建。3) JenaJena19是HP公司开发的一个基于Java的开放源代码语义网工具包,为解析RDF、RDFS和OWL本体提供了一个编程环境及一个基于规则的推理引擎。推理是JENA中的一个子系统,包括基于RDFS、OWL等规则集的推理,也可以自己建立规则。4) PelletPellet16是美国马里兰大学MINDSWAP项目组专门针对OWL-DL开发的一个本体推理机,基于描述逻辑Tableau算法实现,最新版本Pellet-2.0.0-rc7,能够支持OWL-DL的所有特性。它是一个开源项目,美国斯坦福大学研发的本体编辑工具protg在4.3版本后

49、,内置了PELLET作为推理工具使用。5) LuceneLucene http:/lucene.apache.org/ 2009是apache软件基金会jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。2. 实验模型详细设计和算法实现2.1 SKEO本体设计与实现SKEO(Subject Knowledge Environme

50、nt Ontology)是一个可用于不同领域的通用资源本体。构建本体的方法体系很多,主要包括TOVE法 Gruninger,M. and Fox,M.S. Methodology for the Design and Evaluation of Ontologies, Workshop on Basic Ontological Issues in Knowledge SharingC.IJCAI-95, Montreal、METH本体法 Fernandez,M. Gomez-Perez,A. and Juristo,N. Methontology: From Ontological Art T

51、owards Ontological EngineeringC.AAAI-97 Spring Symposium on Ontological Engineering, Stanford University, March 24-26th, 1997、Cyc方法 D.B.Lenat, R.V.Guha, Building large knowledge-based systemsM. Addison-Wesley Publishing Company, Inc.、KACTUS工程法 A.Bernaras, I.Laresgoiti, J.Corera. Building and Reusing

52、 Ontologies for Electrical Network ApplicationC. Proceedings of the European Conference on Artificial Intelligence. ECAI96. 298-302、SENSUS法 ISI Natural language processing research group, Ontology Creation and Use: SENSUSEB.OL http:/www.isi.edu/natural-language/resources/sensus.html, 2009、On-To-Know

53、ledge方法 S.Staab, H.P.Schnurr, R.Studer, and Y.Sure: Knowledge Processes and OntologiesJ. IEEE Intelligent Systems, 16(1), January/February 2001、七步法 Natalya F.Noy, Deborah L.McGuinness. Ontology Development 101: A Guide to Creating Your First OntologyEB/OL http:/protege.stanford.edu/publications/onto

54、logy_development/ontology101.pdf 2009等。SKEO主要是按照本体构建的七步法建立本体知识组织体系,形成包含语义的资源本体。SKEO包括13个一级类,66个二级类,75个对象属性,100个数值属性。其本体片段如图7所示:图7 本体片段SKEO中的各级概念(类)已经能够相对全面的涵盖并组织专业领域知识信息,各概念之间的语义关系是通过对象属性的相互关联而形成的,各概念的基本信息是通过数值属性进行描述的。SKEO的具体实现是利用protg本体编辑工具基于本体描述语言OWL设计实现的。可视化的本体编辑工具protg效果图如图8所示:图8 利用protg构建本体效果图通

55、过protg构建的SKEO本体以.owl文件形式保存,为了提高本体存储的稳定性、可靠性和本体互操作的高效性,本项目的实验模型选用了数据库形式对SKEO本体进行持久化存储。通过语义网工具包Jena提供的API接口,将SKEO持久化存储到MySQL数据库中。2.2 检索词预处理模块设计与实现检索词预处理模块是对用户输入的检索词进行筛选、过滤和关键词的切分。ICTCLAS中文分词工具最初是由C+编制的,由于项目是以java为开发语言设计的,因此在ictclas的网站下载JAVA版本的ictclasictclas4j。这里引用的关键包有org.ictclas4j.bean.SegResult和org.

56、ictclas4j.segment.SegTag。利用ICTCLAS分词操作的关键代码如下:SegTagsegTag=newSegTag(1);/分词路径的数目SegResultsegResult=segTag.split(fileContent.trim(); StringclassifyContent=segResult.getFinalResult(); 2.3 语义分析模块设计与实现语义分析模块主要是针对用户进行语义检索时,对输入的检索词词组进行语义分析与扩展,其具体模块设计流程图如图9所示:图9 语义分析模块流程图整个语义分析模块分为两个部分,首先是对检索词词组进行同义词匹配,这里需

57、要用到同义词词表;其次是对进行了同义词扩展的检索词词组与本体库中的本体进行关联映射,为检索词词组加入语义标记,最终输出语义检索词组。在语义分析模块中使用的同义词词表(synonym.rdf)是按照SKOS语言规范 http:/www.w3.org/TR/2009/REC-skos-reference-20090818/#concepts 2009描述的,下表是语言常用词汇的说明:类别URI注释skos:ConceptSchemeskos:inSchemeskos:hasTopConceptskos:topConceptOf类名、主题词skos:preLabelskos:altLabelskos

58、:hiddenLabel类号skos:notation注释skos:changeNoteskos:definitionskos:editorialNoteskos:exampleskos:historyNoteskos:noteskos:scopeNote关联skos:broaderskos:broaderTransitiveskos:narrowerskos:narrowerTransitiveskos:related映射skos:broadMatchskos:closeMatchskos:exactMatchskos:narrowMatchskos:relatedMatch在构建的同义词词

59、表中,以skos:preLable描述主题词名称;skos:altLable描述主题词的别名,这里的别名同时提供中文与英文两种;skos:broader描述主题词的上位词;skos:narrower描述主题词的下位词等。以下是synonym.rdf的片段:!DOCTYPE rdf:RDF rdf:RDF xmlns:rdf=http:/www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:rdfs=http:/www.w3.org/2000/01/rdf-schema# xmlns:skos=http:/www.w3.org/2004/02/skos/core#

60、 xmlns:base= 同义词词表 tangyj 中国科学院 中科院 Chinese Academy of SciencesCAS 机构 计算机 电脑 Computer 关键词 对输入的检索词词组进行同义词查询词扩展,将每个检索词与同义词词表中的词条进行匹配计算,从中查找同义词组并返回。以“中科院、语义推理”检索词组为例分别进行同义词查询扩展:中科院的等价词有中国科学院、Chinese Academy of Sciences、CAS;语义推理的等价词有知识推理、semantic inference、semantic reasoning。根据扩展的检索词同义词进行OR逻辑组合操作,最终得出的同义检索词组为中科院,(中国科学院、Chinese Academy of Sciences、CAS), 语义推理,( 知识推理、semanti

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!