2008年03月19日

欢迎访问:
计算机学习网

2007年02月15日
天下国家之事,败于小人者十一,败于君子者十九。盖小人之骨柔,其气馁,其愿意易售,其营垒亦易破;唯君子之才品自不同,而业已为众所推,其自负也常亢而不肯下。于是为深刻,为褊浅,为执拗,不能舍己从人,以佐国家之急。
2007年02月10日

好久没有访问啦,因为被封禁了ip,今天点击,发现正常啦
以后这里也会经常更新.

2006年11月15日

不知道什么原因导致我在此处的博客,通过实验室ip无法正常访问。

多次与donews博客联系,均没有结果!

故决定转移博客阵地。

新博客地址:http://blog.csdn.net/superdont

欢迎访问:我思故我在

2006年10月04日

网易写诗自动机:http://club.culture.163.com/midfall/

from:

猥琐诗人 dont  
  通过网易文化赠好友semantic 极品好诗一首  
  月明星稀 赠semantic   
   
月明星稀 
天空中就没有几颗星 
对月光闪着情意绵绵的目光或者听到菠菜的温馨私语 
仅有一片云 
很粉红地飘 
 
月亮 
那甜蜜的洞中似有倒不完的白菜 
倒下硕大无比的湖心 
我是一尾鱼 
#
游泳 
自窗帘的入口 
走向月亮的出口 
 

2006年10月02日

//
// Ontology理论研究和应用建模

——《Ontology研究综述》、w3c Ontology研究组文档以及Jena编程应用总结

 

下载地址:http://download.csdn.net/source/270758

Ontology理论研究和应用建模…. 2
1 关于Ontology.. 2
1.1的定义2 Ontology
1.2的建模元语2 Ontology
1.3和语义网络3 Ontology
1.4的描述语言4 Ontology
1.5已有的Ontology及其分类5
1.6构造Ontology的规则6
2 Ontology的研究和应用6
2.1的理论研究6 Ontology
2.2在信息系统中的应用7 Ontology
2.3和语义Web. 8 Ontology
3 Web Ontology Language (OWL)概述9
3.1简介9 OWL
3.2在语义网中的地位9 OWL
3.3 OWL的三个子语言——OWL Lite、OWL DL、OWL Full11
3.4语言大纲12 OWL
3.5语言描述13 OWL Lite
3.6增量语言OWL DL和OWL Full描述19
4 OWL文档结构举例20
4.1命名空间20
4.221 Ontology
4.3基本定义22
4.4映射27 Ontology
4.5复杂的Class【OWL DL】28
5 一个完整的制酒行业的Ontology的OWL建模31
5.1相关背景31
5.2建模决策32
5.3模型32
6 紧急联动的一个简单建模35
6.1模型(应急联动机构)35 UML
6.2模型35 Ontology
7 一个比较复杂的应急联动的建模37
7.1模型37 UML
7.2模型37 Ontology
8 Jena——基于w3c的RDF、DAML/OIL进行语义网建模的Java API44
8.1简介——几个RDF建模的实例44
8.2与整个建模流程46 Jena

//
//

2006年10月01日

 
综述:本体的概念、方法和应用
王昕 (MetaOntology编辑)

 

摘要:近十年来,本体(ontologies)和本体工程(ontological engineering)在知识工程及其相关的应用领域获得广泛的关注。本文作者在研究产品设计知识重用的过程中,阅读了大量有关本体的文献资料。作者认为,本体工程在信息共享、系统集成、基于知识的软件开发等方面具有重要的作用和广阔的应用前景,而在国内,这方面的研究刚刚起步。本文扼要介绍了这一新兴学科分支的概念、方法及研究和应用现状。

关键词:本体,本体工程,知识共享和重用

Overview of Ontologies: Concepts, Methodology and Applications
WangXin

Abstract

Ontology and ontological engineering have gained a good popularity within the knowledge engineering community and related applicational domains in the last ten years. The authors read large amount of articles about ontologies during the research of product design knowledge reuse. We think that ontological engineering is very important and will be popular in areas such as information sharing, system integration and knowledge-based software development, etc. The research of ontologies in domestic academe is just starting up. This article presents a short introduction of the concepts, methodology and applications in this new discipline.

Keywords: ontology, ontological engineering, knowledge sharing and reuse

 

本体论(Ontology:o大写)原是哲学的分支,研究客观事物存在的本质。它与认识论(Epistemology)相对,认识论研究人类知识的本质和来源。也就是说,本体论研究客观存在,认识论研究主观认知。而本体(ontology:o小写)的含义是形成现象的根本实体(常与“现象”相对)。

在人工智能领域,知识建模必须在知识库和两个子系统之间建立联系:agent行为(问题求解技能)和环境(问题存在的领域)[1]。而长期以来,AI的研究者较为注重前一个子系统,而领域知识的表达依赖于特定的任务。这样做的好处是只需要考虑相关的领域知识。但是,大规模的模型共享、系统集成、知识获取和重用依赖于领域的知识结构分析。因此,进入九十年代以来,与任务独立(task-independent)的知识库(本体)的价值被发现,并受到广泛关注。本文作者在研究产品设计知识重用的过程中,阅读了大量有关本体的文献资料。作者认为,本体工程在信息共享、系统集成、基于知识的软件开发等方面具有重要的作用和广阔的应用前景,而在国内,这方面的研究刚刚起步。本文将扼要介绍这一新兴学科分支的概念、方法及研究和应用现状。

1          本体的基本概念
1.1        本体的定义
近十年来,本体的研究日趋成熟。在各种文献中,尽管与本体相关的概念和术语的用法并不完全一致,但是事实的使用约定已经出现。在参考文献[2]、[3]中,作者根据已有文献中相关概念和术语的使用情况,提出了推荐的使用约定。我们首先列出本体的几种比较有代表性的定义,然后对相关的概念做简要的描述。

本体(ontology)的几个代表性定义:

(1)    本体是对于“概念化”的某一部分的明确的总结或表达[2]。

(2)    本体在不同的场合分别指“概念化”或“本体理论”[3]。

(3)    本体是对于“概念化”的明确表达[4]。

(4)    本体是用于描述或表达某一领域知识的一组概念或术语。它可以用来组织知识库较高层次的知识抽象,也可以用来描述特定领域的知识[5]。

(5)    本体属于人工智能领域中的内容理论(content theories),它研究特定领域知识的对象分类、对象属性和对象间的关系,它为领域知识的描述提供术语[6]。

从以上定义我们可以知道,本体通过对于概念、术语及其相互关系的规范化描述,勾画出某一领域的基本知识体系和描述语言。其中定义1、2和3以“概念化”的定义为基础,概念化(以及定义2中的“本体理论”)的定义见下文。

与本体相关的概念和术语:

本体论(Ontology,o大写):特指哲学的分支学科[3]。

本体(ontology,o小写):在不同的场合分别指“概念化”或“本体理论”[3]。(即以上本体定义2)。

概念化(conceptualization):指某一概念系统所蕴涵的语义结构,它是对某一事实结构的一组非正式的约束规则[3]。它可以理解和/或表达为一组概念(如实体、属性、过程)及其定义和相互关系[7]。概念化的定义是以上本体定义1、2和3的基础。

本体理论(ontological theory):表达本体知识的逻辑理论,它是一种特殊的知识库,是本体知识所赖以存在的介质,强调的是具体的产品(designed artifact)。而“概念化”强调的是语义结构本身,是从具体的产品中抽象出来的对应的语义成分(semantical counterpart)[3]。

本体约定(ontological commitment):对使用某一本体所定义词汇并与其含义保持一致的承诺[2]。

本体工程(ontological engineering):知识工程的分支,它研究如何用本体论的原则来构造本体理论[3]。

1.2        本体的作用
总的来说,构造本体的目的都是为了实现某种程度的知识共享和重用。参考文献[6]认为本体的作用主要有以下两方面:

(1)      本体的分析澄清了领域知识的结构,从而为知识表示打好基础。本体可以重用,从而避免重复的领域知识分析。

(2)      统一的术语和概念使知识共享成为可能。

参考文献[7]中则更具体的总结了本体的作用,即通讯(communication)、互操作(inter-operability)和系统工程(systems engineering)。

(1)      通讯:主要为人与人之间或组织与组织之间的通讯提供共同的词汇。

(2)      互操作:在不同的建模方法、范式、语言和软件工具之间进行翻译和映射,以实现不同系统之间的互操作和集成。

(3)      系统工程:本体分析能够为系统工程提供以下方面的好处:

?           重用(re-usability):本体是领域内重要实体、属性、过程及其相互关系形式化描述的基础。这种形式化描述可成为软件系统中可重用和共享的组件(component)。

?           知识获取(knowledge acquisition):当构造基于知识的系统时,用已有的本体作为起点和基础来指导知识的获取,可以提高其速度和可靠性。

?           可靠性(reliability):形式化的表达使得自动的一致性检查成为可能,从而提高了软件的可靠性。

?           规范描述(specification):本体分析有助于确定IT系统(如知识库)的需求和规范。

1.3        本体的种类
根据本体不同方面的属性(如形式化程度、目的和描述对象),可以对本体进行不同的分类。

如根据本体的形式化程度不同,可以把本体分为高度非形式化的(highly informal)、结构非形式化的(structured-informal)、半形式化的(semi-formal)和严格形式化的(rigorously formal)[2]。

根据本体的描述对象不同,可以把本体分为特殊领域本体(如医药、地理、金融等)、一般世界知识本体、问题求解本体和知识表示语言本体等[2]。

由于本体的分类方法很多,目前还没有能够被广泛接受的分类标准。但以下几个概念的定义意义明确,并从某种程度上提供了本体的分类方法[2]:

?           领域本体(DOMAIN ONTOLOGY):以某一领域为描述对象的本体(区别于领域的问题和任务)。

?           问题求解模型(PROBLEM SOLVING MODEL):以问题求解方法为描述对象的本体。

?           表示本体(REPRESENTATION ONTOLOGY):以知识表示语言为描述对象的本体。在表示本体中,类、对象、关系、属性、槽等术语经过严谨的分析和定义。

1.4        本体和知识库
一般来说,本体提供一组术语和概念来描述某个领域,知识库则使用这些术语来表达该领域的事实。例如医药本体可能包含“白血病”、“皮肤病”等术语的定义,但它不会包含对某一病人患某一疾病的诊断;而这正是知识库所要表达的内容[5]。

实际上,如果本体和知识库用同一语言表达的话,两者之间并没有清晰的界限。区别仅仅在于知识库的哪一部分是可以共享和重用的,哪一部分是针对特定应用的。这种区别往往还随着时间和具体的背景变化[2]。

1.5        用本体描述世界
从描述对象的类型来说,本体既可以用来描述简单的事实,又可以用来描述信念、假设、预测等抽象的概念;既可以描述静态的实体,又可以描述与时间推移相关的概念,如事件、活动、过程等。

从描述对象的范围来说,本体可以定义通用的、适合所有领域知识表示的术语,如空间、时间、部分等;也可以定义特定领域知识才使用的术语,如故障、肝炎等。

不同本体之间存在着差别,但它们在较高的抽象层次上(upper ontology)具有一些共同的特征[6]:

?           世界存在着对象(object);

?           对象具有属性(property or attribute),属性可以赋值(value);

?           对象之间存在着不同的关系(relation);

?           属性和关系随着时间(time)的推移而改变;

?           不同的时刻(time instant)会有事件(event)发生;

?           在一定的时间段上存在着过程(process),对象参与到过程当中;

?           世界和对象具有不同的状态(state);

?           事件能导致(cause)其他事件发生或状态改变,即产生影响(effect);

?           对象可以分解成部分(part)。

从客观的意义上说,本体的描述是和特定的任务和目的无关的,但是我们使用本体总是有一定的任务背景,因此对于所描述的知识的选择是和特定任务相关的。这也是不同顶层本体(upper ontology或top-level ontology)之间存在差异的主要原因。

面向对象的软件设计也依赖于适当的领域本体,对象、属性、方法或多或少会反映领域中与应用相关的方面,OO系统中对于领域的分析往往可以在不同的应用程序中重用。OO系统和本体强调了不同的侧面,但随着时间推移将逐渐融合。由于信息系统要对广泛的领域进行建模,领域本体将在软件系统中起着与AI领域中类似的重要作用。

2          本体的构造
本体作为通讯、互操作和系统工程的基础,必须经过精心的设计,实际上,本体的构造是一个非常费时费力的过程。本节介绍本体构造的准则、方法和工具。

2.1        本体的构造准则
T.R. Gruber在参考文献[4]中提出了指导本体构造的5个准则,即:

?           清晰(Clarity):本体必须有效的说明所定义术语的意思。定义应该是客观的,与背景独立的。当定义可以用逻辑公理表达时,它应该是形式化的。定义应该尽可能的完整。所有定义应该用自然语言加以说明。

?           一致(Coherence):本体应该是一致的,也就是说,它应该支持与其定义相一致的推理。它所定义的公理以及用自然语言进行说明的文档都应该具有一致性。

?           可扩展性(Extendibility):本体应该为可预料到的任务提供概念基础。它应该可以支持在已有的概念基础上定义新的术语,以满足特殊的需求,而无须修改已有的概念定义。

?           编码偏好程度最小(Minimal encoding bias):概念的描述不应该依赖于某一种特殊的符号层的表示方法。因为实际的系统可能采用不同的知识表示方法。

?           本体约定最小(Minimal ontological commitment):本体约定应该最小,只要能够满足特定的知识共享需求即可。这可以通过定义约束最弱的公理以及只定义通讯所需的词汇来保证。

为了说明以上准则,Gruber还在此文中分析了两个具体本体(工程数学本体和图书信息本体)的构造实例。

2.2        本体的构造方法
在参考文献[7]中,Uschold & Gruninger提出了一个本体构造的方法学框架,该框架包括以下组成部分:

?           确定本体的目的和使用范围

?           构造本体,包括:

²        本体捕获:即确定关键的概念和关系,给出精确定义,并确定其它相关的术语;

²        本体编码:选择合适的表示语言表达概念和术语;

²        已有本体的集成:对已有本体的重用和修改。

?           评估:根据需求描述、能力问题(competency question)等对本体以及软件环境、相关文档进行评价。

?           文档记录

?           每一阶段的指导准则

在这个框架内,他们详细的描述了本体捕获和形式化的本体设计和评估方法。

M. Gruninger & M.S. Fox在进行TOVE[8]本体的研究和开发时,也总结了设计和评估本体的方法学,包括背景和需求描述、非形式化的能力问题描述、词汇和术语确定、形式化的能力问题描述、用一阶谓词逻辑进行规范描述、确定完整性定理等步骤。

2.3        本体的表示语言和开发工具
目前的领域知识表达采用谓词逻辑(predicate calculus)作为基本的形式化方法(加上type-of关系表达类的继承关系),情景逻辑(situational calculus)是谓词逻辑的变种,它引入时间的概念来表达状态、事件和过程。如果我们把图像和其它感觉形式也包括到知识范畴中来,就需要非常不同的表达方式。但是目前,谓词逻辑为本体共享技术开了一个好头。

在具体的本体开发环境和工具方面,有斯坦福大学KSL(知识系统实验室:Knowledge Systems Laboratory)的Ontolingua[9]、KACTUS项目使用的CML[10](概念建模语言:Conceptual Modeling Language)、英国Open大学KMI(知识媒体研究所:Knowledge Media Institute)的Tadzebao和WebOnto[11]等,在此不作详细的介绍。

3          本体的研究与应用现状
3.1        领域本体研究
3.1.1          CYC
CYC是位于美国德州奥斯汀的MCC (Microelectronics and Computer Technology Corporation)公司的研究项目[12],其目的是通过本体开发为常识推理(common sense reasoning)提供基础。

CYC中的知识用一阶谓词逻辑的变种CYCL表达。知识库中包含简单的声明、推理规则、推理控制规则。在知识库的基础上,可以使用推理机产生新的推断。

CYC本体按照模块(module)组织,称为微理论(microtheories)。每个微理论包括某一特定领域知识和推理所需的概念,如空间、时间、因果、智能体等。某一领域本体可能包括多个微理论,以反映该领域建模的不同侧面和前提。在这个意义上,CYC不是一体的集成本体,而是一个微理论的网络,该网络的并集为若干领域提供本体约定。

3.1.2          TOVE
TOVE (TOronto Virtual Enterprise)是加拿大多伦多大学的研究项目,其目的是构造企业本体,并具有以下特征:1)为企业的应用软件提供共享的术语;2)用一阶谓词逻辑为每个术语定义尽可能精确的含义;3)用一组Prolog公理来实现本体语义约束,使TOVE能够自动的对与企业有关的常识性问题进行演绎推理;4)定义一套符号,对术语和概念进行图形化的描述。

TOVE本体包括活动、组织、资源、产品、成本和质量等部分,它们组成了集成的企业模型。

3.1.3          Enterprise
Enterprise项目是英国爱丁堡大学人工智能应用研究所(AIAI: Artificial Intelligence Application Institute)的研究项目[13]。其目的是通过一个集成框架,集成企业建模的方法和工具,以改进和代替现有的建模方法。该集成框架以企业建模本体为基础。通过提供一组工具,可以辅助用户进行企业建模和分析,具体内容包括:1)对于企业模型的捕获和描述;2) 描述经营问题和需求;3)在战略、战术和操作层次上,确定和评估解决问题的方法以及系统的设计和实现;4)对相关的度量体系进行表示,并支持高级仿真。

企业本体由以下部分构成:

?           元本体:实体,关系,角色,行动者,事件状态

?           活动和过程:活动,资源,计划,能力

?           组织:组织单元,合法实体,管理,所有权

?           策略:目的,策略,有助于实现,假设

?           营销:销售,产品,零售商,客户,市场

3.1.4          KACTUS
KACTUS是欧洲ESPRIT项目[14]。其目的是开发出技术系统全生命周期的知识重用方法学,以便在设计、诊断、操作、维护、再设计和培训时使用同一知识库。通过构造支持产品知识重用的本体,KACTUS能够支持计算机集成制造方法和知识工程方法的集成。另外,KACTUS还试图将本体同现有标准(如STEP)进行集成。

KACTUS的主要表达方法是CML(概念建模语言:Conceptual Modelling Language)。与其它的本体表达方法不同,CML在领域知识、推理知识、任务知识和问题求解知识之间作了区分。

KACTUS还提供了交互式的环境,支持本体的浏览、编辑和管理。除了CML以外,KACTUS工具还提供了对EXPRESS和Ontolingua的支持。

3.2        表示本体和问题求解模型
3.2.1          KSL Knowledge Sharing Effort
Knowledge Sharing Effort是美国DARPA项目[15],主要由斯坦福大学知识系统实验室承担。其目的是使得知识系统的开发者能够从可重用的模块库中选择构件,进行装配,形成所需的新系统。该项目分为四部分内容:(1)不同语言表示的知识库之间的翻译机制(KIF: Knowledge Interchange Format);(2)在一族表达范式之间建立共同的语言版本和推理模块;(3)基于知识的系统之间的通讯协议(KQML: Knowledge Query and Manipulation Language);(4)本体库,即为构造领域知识库而预置的基础。KIF是一种中性语言,能够表示目前高级知识表示语言中几乎所有重要的概念和区别。

为了解决本体表示不统一的问题,他们还开发了基于Web的Ontolingua系统[16]。Ontolingua是独立于特定表示系统的本体定义机制,它允许用KIF定义类、关系和对象,并能将这些定义翻译成几种特定的表示语言。Ontolingua还进一步定义了框架本体(表示本体),来支持本体的移植。

3.2.2          Guarino对于本体的研究
Guarino是意大利帕多瓦大学LADSEB-CNR(Institute for Systems Theory and Biomedical Engineering)的高级研究员。他分析总结了本体及相关概念的含义[3],提出了“本体层”的概念[17],研究了表示本体的本体约定[18],并探索了本体在物理对象、STEP语义方面的应用[19][20],具有重要的参考价值。

3.2.3          CommonKADS
CommonKADS是欧洲ESPRIT项目[21],它在问题求解模型研究方面有重要作用。它定义了技能模型(Model of Expertise)、解释模型(Interpretation Model)和任务模型(Task Model)等重要概念。技能模型包括启发式模型(基于规则的求解模型)、深度模型(基于功能和结构信息的求解模型)、隐含模型(基于连接主义方法的求解模型)、能力模型(与表示语言独立的对于技能的高层描述)、分布式模型(Multi-agent问题求解系统)等。解释模型是对问题求解方法的描述。任务模型是对问题求解过程控制结构的描述。

3.2.4          本体与标准之间的集成
本体的开发可以使得不同工具之间的表示标准化,目前有几个项目正在进行这方面的工作。如工作流管理同盟、STEP和EXPRESS、CORBA和KIF等。

工作流管理同盟(Workflow Management Coalition)定义了一组词汇[22],包括定义、使用、同义词等。这些词汇作为半形式化的本体进行共享。另外,MIT、斯坦福大学、多伦多大学、爱丁堡大学等还联合开发了PIF(Process Interchange Fromat)[23],来支持不同软件系统之间的过程数据交换。

STEP (Standard for the Exchange of Product Model Data)是进行产品定义和描述的中性语言,其目的是在不同的应用之间进行信息交换和互操作。STEP使用EXPRESS作为建模语言,但EXPRESS并不能完全解决产品建模的语义问题,参考文献[20][24]中对此问题进行了基于本体的初步探讨。

CORBA (the Common Object Request Broker Architecture)标准的出现是为了解决分布式环境下的对象互操作问题[25]。它使用IDL(Interface Definition Language:接口定义语言)来定义远程对象间进行互操作的接口。KSL的Ontolingua服务提供了IDL和Ontolingua之间的翻译。CORBA定义了对象模型,对象的实现提供了对象的语义。业务对象管理组(Business Object Management group)还提供了词汇表,这些都可以看作本体的雏形。

KIF[26]和概念图(conceptual graphs)[27]都是用来表示本体的语言,它们都基于一阶谓词逻辑,但细节上有所不同。目前正在开发系统,实现两者之间的翻译和映射。

3.3        小结与展望
综上所述,目前,本体方面的研究文献已经大大丰富,基于Web的本体构造、编辑、浏览和使用工具已经可用。已经存在几种本体表示的方法,对于本体设计和评估的方法学也有了初步的探索,并可利用工具在不同的表示方法之间进行翻译和互操作。

本体已经在一些商用系统中得到应用,它的重要性已经被半导体制造业、飞机制造、企业过程管理、异构数据库集成、知识工程和规划等不同领域所认识。

目前的主要困难在于[28]:尽管构造本体的目的在于重用,但真正重用的实例却不多见。人们往往喜欢构造自己的本体。造成这种情况的原因主要有两方面,一是本体构造的目的不同;二是本体表示的方法不统一。如何解决这个问题,将是下一步研究的重点。

参考文献
[1]    Clancey, W.J. 1993. The Knowledge Level Reinterpreted: Modelling Socio-Technical Systems. International Journal of Intelligent Systems, 8: 33-49

[2]    Mike Uschold. 1998. Knowledge level modelling: concepts and terminology. The Knowledge Engineering Review, Vol. 13:1, 1998, 5-29

[3]    Guarino, N. and Giaretta, P. 1995. Ontologies and Knowledge Bases: Towards a Terminological Clarification. In N. Mars (ed.) Towards Very Large Knowledge Bases: Knowledge Building and Knowledge Sharing 1995. IOS Press, Amsterdam: 25-32

[4]    Gruber T, 1995. Towards principles for the design of ontologies used for knowledge sharing. International Journal of Human-Computer Studies 43 (5/6): 907-928

[5]    William, S. And Austin, T. 1999. Ontologies. IEEE Intelligent Systems, 1999 Jan/Feb: 18-19

[6]    B. Chandrasekaran, J.R. Josephson, and V.R. Benjamins, 1999. What Are Ontologies, and Why Do We Need Them? 1999 Jan/Feb: 20-25

[7]    Uschold, M and Gruninger, M, 1996. Ontologies: Principles, methods and applications. The Knowledge Engineering Review 11 (2).

[8]    Gruninger, M and Fox, M.S., 1995. The logic of enterprise modelling. In J Brown and D O’Sullivan, editors, Reengineering the Enterprise 83-98. Chapman & Hall.

[9]    Gruber, T, 1995. A translation approach to portable ontology specifications. Knowledge Acquisition 5 (2). 199-220

[10]Schreiber, AT, Wielinga, BJ, Akkermans, JM, Van de Velde, W and Anjewierden, A, 1994. CML: The CommonKADS conceptual modelling language. In L Steels, AT Schreiber and W Van de Velde. Editors. A Future for Knowledge Acquisition: Proceedings of the 8th European Knowledge Acquisition Workshop EKAW94 1-25. Springer-Verlag. (Volume 867 of Lecture Notes in Artificial Intelligence.)

[11]John Domingue, 1998. Tadzebao and WebOnto: Discussing, Browsing, and Editing Ontologies on the Web. Proceedings of KAW98. Available at http://ksi.cpsc.ucalgary.ca/KAW/KAW98/KAW98Proc.html.

[12]Lenat, D and Guha, RV, 1990. Building Large Knowledge-based Systems: Representation and Inference in the CYC Project. Addison-Wesley.

[13]Uschold, M, King, M, Moralee, S and Zorgios, Y. 1998. The enterprise ontology. The Knowledge Engineering Review 13(1).

[14]Schreiber, G, Wielinga, B and Jansweijer, W, 1995. The Kactus view on the ‘o’ word. Workshop on Basic Ontological Issues in Knowledge Sharing: International Joint Conference on Aritificial Intelligence.

[15]Fikes, R, Cutkosky, M, Gruber, T and van Baalen, J, 1991. Knowledge sharing technology project overview, Technical Report KSL-91-71, Stanford University, Knowledge Systems Laboratory.

[16]Gruber, T, 1993. A translation approach to portable ontology specifications, Knowledge Acquisition 5(2). 199-220

[17]N. Guarino 1994. The Ontological Level. In R. Casati, B. Smith and G. White (ed.), Philosophy and the Cognitive Science. Hölder-Pichler-Tempsky, Vienna.

[18]Guarino, N., Carrara, M., and Giaretta, P. 1994. An Ontology of Meta-Level Categories. In D. J., E. Sandewall and P. Torasso (eds.), Principles of Knowledge Representation and Reasoning: Proceedings of the Fourth International Confer-ence (KR94). Morgan Kaufmann, San Mateo, CA: 270-280.

[19]Borgo, S. and Guarino, N. 1997. An Ontological Theory of Physical Objects. In Pro-ceedings of 1997 Workshop on Qualitative Reasoning (QR 97). Cortona, Italy.

[20]N, Guarino, S, Borgo, and C, Masolo, 1997. Logical Modelling of Product Knowledge: Towards a Well-Founded Semantics for STEP. In Proceedings of European Conference on Product Data Technology (PDT Days 97), Sophia Antipolis, France

[21]Breuker, J and van de Velde, W, 1994. CommonKADS Library for Expertise Modeling, IOS Press.

[22]Workflow Management Coalition Members. Glossary – a workflow management coalition specification. Technical report, The Workflow Management Coalition, 1994.

[23]J. Lee, G. Yost, and PIF Working Group. The pif process interchange format and framework. Technical Report 180, MIT Center for Coordination Science, 1995.

[24]Metzger, F. J. 1996. The Challenge of Capturing the Semantics of STEP Data Models Precisely. In Pro-ceedings of Workshop on Product Knowledge Sharing for Integrated Enterprises. Basel, Switzerland, PDTAG-AM, Product Data Technology Advisory Group, ESPRIT project 9049.

[25]T.J. Mowbray and R. Zahavi. The ESSENTIAL COBRA: System Integration Using Distributed Objects. John Wiley and Object Management Group, 1995.

[26]M.R. Genesereth and R.E. Fikes. Knowledge interchange format, version 3.0 reference manual. Technical Report Logic-92-1, Computer Science Department, Stanford University, 1992.

[27]J. Sowa. Conceptual Structures: Information Processing in Mind and Machine. Addison Wesley, Reading, MA, 1984.

[28]M. Uschold and A. Tate, 1998. Putting ontologies to use. The Knowledge Engineering Review, Vol. 13:1: 1-3.

  
曹树金 马利霞(中山大学信息管理系 广东 510275)

论本体与本体语言及其在信息检索领域的应用

  摘 要: 本体论是近年来随着计算机信息处理、人工智能等技术的发展而迅速兴起的一个学科。本文主要介绍本体理论、应用研究现状以及几种主要本体语言, 并分析了未来的本体研究方向和本体在图书情报领域的应用前景。

关键词: 信息检索; 应用研究/ 本体; 本体语言

  Abstract : Ontology is a subject rising rapidly in recent years with the development of computer aided information processing and artificial intelligence. This paper mainly describes the research status of ontology and several major ontology languages. It also discusses the future research direction of ontology and the application of ontology in library and information science.

Keywords : information retrieval ; application study/ ontology ; ontology language

前言简单介绍了本体的应用领域等内容。

1.本体理论与应用研究

1.1 本体的定义与组成

哲学―――计算机―――共享概念模型的明确的形式化的规范说明。

有四层含义:概念模型、形式化、共享、明确

形式上的组成:概念、关系、函数、公理、实例

1.2 本体的作用

信息交换、户操作、系统工程。

帮助系统工程实现重用、可靠性和规范描述。

1.3 本体应用研究

1.3.1 本体在信息检索与集成领域的应用 

多信息源的信息检索和信息集成是本体的一个重要应用领域。多数据源面临的主要问题就是不同信息源在信息的表示上不一致, 应用本体, 建立一套共享的术语和信息表示结构, 不仅可以减少信息转换的难度和工作量, 还为信息集成提供了一个统一的模式。此外, 基于关键词的信息检索已不能满足当前用户对于信息和知识的深度需求, 本体由于具有良好的概念层次结构和对逻辑推理的支持而在信息检索(特别是在基于知识的检索) 中得到了广泛的应用。

在信息检索与集成领域, 目前国际上应用本体的著名项目主要有: (Onto) 2Agent ( —

—An Ontology Based WWW Broker to Select Ontologies , 基于网络代理搜索本体的本体) 、Ontobroker ( ———Ontology Based Access to Distributed and Semi2 Structured Information , 基于本体的分布式半结构化信息获取) 和可升级知识合成(The Scalable Knowledge Composition Project , SKC) , 这3 个项目的研究各有侧重。(Onto) 2Agent 的目的是帮助用户检索网上已有的本体, 主要采用了参照本体, 利用它保存网上现有本体的元数据。而Ontobro2 ker 目的是为用户检索到所需要的网页。Ontobroker 是德国卡尔斯鲁厄大学应用信息学与形式描述方法学院(AIFB) 的一个研究项目, 该项目建立了一个用来处理HTML 、XML 和RDF 格式的信息源和信息源语义描述的系统, 其核心是用形式化本体描述背景知识, 并明确网页的语义, 以便综合利用本体的表达能力和推理机制。SKC 是斯坦福大学目前正在进行的一个项目, 主要研究如何用代数学方法来合成不同领域的主体, 解决信息系统语义异构的问题, 实现异构的自治系统之间的互操作。

国内也有许多学者对于将本体应用于信息检索领域进行了深入的研究。万捷等人提出基于内容的信息检索系统, 利用本体对检索需求进行语义扩充, 并用文档分析器对检索文档进行过滤, 因此增加了检索结果的准确性, 更加符合用户的检索需求。徐振宁等人则把本体作为信息检索系统的核心, 通过构造形式化的领域本体, 提出了一种将知识表示和知识处理引入互联网信息处理的方法, 为互联网上半结构化数据和关系数据库提供了统一的语义模型。武成岗等人也提出了基于本体和多智能主体的信息检索服务器, 该系统利用本体协助智能主体对网络上的各类信息进行领域分类, 并规范用户信息检索的模式, 由于仅提供给用户所关注领域的资源索引, 因而检准率较高

1.3.2  本体在网页自动分类中的应用 

目前应用本体进行信息组织与分类的研究较少。普拉博沃(R1Prabowo) 等人提出了基于本体的网页自动分类系统, 该系统基本上是从杜威十进分类法和美国国会图书馆分类法中抽取概念形成领域本体, 并建立本体与分类法之间的映射, 然后应用本体来辅助分类。刘娇蛟等在其《基于本体实现对网页文本的自动主题分类》一文中探讨了利用本体中主题概念的层次结构和主题词、特征项的各种语义关系来实现多层次文本主题分类的方法, 主要是在对特征项进行匹配的过程中, 应用本体中描述的各种语义关系对特征词进行扩展, 可以提高匹配的效率, 从而提高分类的准确性。当然, 利用本体的层次结构和语义关系进行主题分析取决于本体中对各种概念和关系的描述是否准确。

2  本体语言

在具体的应用中, 本体的表示方式可以分为4 大类: 非形式化、半非形式化、半形式化、形式化语言。也就是说本体可以采用自然语言来描述, 也可以用框架、语义网络或逻辑语言等来描述。若要实现较强的推理能力, 本体一般要用描述语言进行表示。关于本体描述语言的需求分析与设计是目前众多研究项目关注的焦点。

由欧洲信息社会技术(EUIST) 支持的OntoWeb (On2 tology2based Information Exchange for Knowledge Management and Electronic Commerce , 知识管理和电子商务领域中基于本体的信息交换) 项目组的比奇霍弗(S1Bechhofer) 等人在分析了本体设计目标和应用实例的基础上, 提出本体语言应具备: ①明确本体的外延; ②必须为每一个本体提供元数据; ③本体语言应包含类定义原语; ④本体语言应包含属性定义原语; ⑤说明类与性质之间的等价关系; ⑥对特殊的等价关系的说明; ⑦特定领域的公理与假设; ⑧必须给出类实例; ⑨集的势约束; ⑩ 支持字符模型等20 个方面的条件。

概括说来, 从本体的特点与本体应用的需求出发, 本体语言必须满足以下几个基本条件: 首先, 本体语言应该基于某种形式的逻辑, 这样才能进行推理。目前的大部分本体语言都是基于一阶谓词逻辑和描述逻辑的。其次, 由于本体是共享概念模型的明确的形式化规范说明, 因此, 本体语言必须是机器可读的。再次, 本体语言还必须具备编码语言的表达性, 编码的精确性和语言的语义性。此外, 为实现本体间的交流和共享, 本体语言还必须支持语法和语义的互操作性。此外, 从构成上来看, 本体语言作为一种知识表示语言, 应至少提供以下语言工具: 1) 本体语言的版本、名称域、本体描述性元数据等的定义语句和语法形式; 2) 类的定义语句和语法形式; 3) 类属性的定义语句和语法形式; 4) 本体顶层类及其属性; 5) 本体文件的封装方式等等。只有具备了这些基本组成部分, 才可以用计算机来识别和处理本体。

2.1 本体语言基础

本体语言不仅要有描述能力, 同时也应具备推理能力, 因此它一般都是基于某种逻辑语言的, 目前开发的本体语言主要是基于一阶逻辑和描述逻辑的。虽然高阶逻辑是所有已知逻辑中表达能力最强的, 但是它没有好的计算性, 虽存在真命题, 但不可证明。因此, 一般情况下如果不需要高阶语义, 二阶逻辑可以转换为一阶逻辑。

2.1.1一阶逻辑 

一阶逻辑是一种形式语言系统, 研究的是假设与结论之间的蕴含关系, 即用逻辑的方法研究推理的规律。它可以看作是自然语言的一种简化形式。由于其精确、无二义性, 所以容易被计算机理解并进行处理, 同时又与自然语言相似, 具有很强的表达能力, 因此一阶谓词逻辑系统可以用来表示人类的某些知识。但是一阶逻辑作为一种形式语言, 还远远不能表示人类自然语言所能表达的全部知识。

用一阶逻辑表达某一领域有关问题的知识, 实际上就是如何用一阶逻辑对自然语言命题进行符号化的问题。首先要将一个原子命题分解为个体词和谓词两个部分, 接着找出原子命题中所包含的量词(存在量词或所有量词) , 然后用符号表示原子命题中个体词(如x) 与谓词的关系。

目前开发的基于一阶逻辑的本体语言主要有: Cycl , Ontolingua 和Loom 。

2.1.2 描述逻辑 描述逻辑是一种基于对象的知识表示的形式化, 也叫概念表示语言或术语逻辑。它建立在概念和关系之上, 其中概念解释为对象的集合, 关系解释为对象之间的二元关系。描述逻辑是一阶逻辑的一个可判定的子集, 具有合适定义的语义, 并且具有很强的表达能力。一般地, 描述逻辑依据提供的构造算子, 在简单的概念和关系上构造出复杂的概念和关系, 通常描述逻辑至少包含以下算子: 交( ∩), 并( ∪), 非( ∑), 存在量词, 全称量词。在这种最基本的描述逻辑的基础上再添加不同的构造算子, 则构成不表达能力的描述逻辑。

与一阶谓词逻辑不同的是, 描述逻辑系统能提供可判定的推理服务, 它保证推理算法总能停止, 并返回正确的结果。一阶逻辑虽然具有很强的表达能力, 但其推理过程复杂, 不利于本体的检验; 而描述逻辑的推理复杂度可知, 更适用于本体检验。并且, 描述逻辑的语法容易转换成XML/ RDF 形式, 因此基于描述逻辑的本体模型更适合于网络环境下的概念建模与知识共享。

2.1.3 知识交换格式( Knowledge Interchange Format , KIF)

 知识交换格式是由斯坦福大学开发的一种基于一阶逻辑的形式语言, 用于各种不同计算机程序和系统之间进行知识交换。当一个计算机系统需要和其他的系统通信时, 可通过将其内部的数据结构转换成KIF 来实现。KIF 对一阶逻辑进行了扩展和限制, 其核心语义(即没有规则和定义的KIF) 与一阶逻辑语义相似, 也保持了一阶逻辑的简洁性和半决定性, 但增加了处理非标准运算符的功能和对非单调推理和定义的支持。KIF 的主要特点在于: ①KIF 语言具有语义宣布性, 即KIF 表达式的语义是可以理解的, 不需要求助解释程序; ②KIF 语言在逻辑上是可理解的, 可以谓词演算的形式提供任意句子的表达式; ③KIF 语言提供元知识支持, 这样就可以在不修改语言的情况下引进新的知识表示结构。

2.2 基于一阶逻辑的本体语言

2.2.1 CycL  Cyc 是美国的微电子与计算机技术有限公司的研究项目, 其目标是开发本体, 进行常识推理, Cyc 系统目前已发展成为一个庞大的常识系统, 其部分知识本体提供免费使用。CycL 是Cyc 系统的描述语言, 它是一种体系庞大而非常灵活的知识描述语言, 具有很强的表达能力和推理能力。CycL 中的词汇由常量、可分离项、变量、数字、字符串等组成, 特定的项组合起来成为有一定含义的表达式, 进而形成严密的CycL 语句。CycL 在一阶谓词演算的基础上, 扩充了等价推理、缺省推理等功能, 而且具备一些二阶谓词演算的能力。在该语言的环境中还配有功能很强的可进行逻辑推理的推理机。此外, CycL 还具有具体化定义(用已有的声明来定义新的声明) 、映射、模式化、操作符、上下文、分离、否定以及防止产生歧义等功能, 可以用它很容易地分析复杂的句子。

2.2.2 Ontolingua

  Ontolingua 是由美国斯坦福大学知识系统实验室(KSL) 开发的一种基于KIF 的本体语言, 主要用于本体服务器上浏览、创建、编辑、修改和使用本体, 也有一些项目用它作为实现本体的语言。Ontolingua 定义框架本体作为知识表示的基础, 支持 3 种本体定义方式: 一是KIF 表示; 二是使用框架本体的词汇库; 三是同时使用上述两种表示方式。Ontolingua 包含KIF 分析器、本体分析工具和一组Ontolingua 转换器, 通过Ontolingua 转换器可以将用Ontolingua 表示的本体转换成Prolog 、IDL 、CLIPS 、Loom 、Epikit 、Algernon 和标准的KIF 等。目前, 美国斯坦福大学的本体服务器就是采用On2 tolingua 作为本体表示语言。2.2.3 Loom
 Loom 是由美国南加利福尼亚大学信息科学学院人工智能研究小组开发的一种基于一阶谓词逻辑的知识表示语言, 该项目的目标就是为人工智能领域的知识表示与推理提供一种先进的工具。现在, 该研究小组推出了Loom 的第二代知识表示语言Power Loom。
Loom 的描述性知识包括定义、规则、事实和缺省规则等, 它利用向前推理、语义一致化和面向对象的真值维护等技术实现推理, 通过多种技术的高度融合, 使得逻辑范例、产生式规则范例和面向对象范例能集成在同一个应用中。
在Loom 基础上发展的Power Loom , 具有更好的表达和推理能力, 它采用前后链的推理机制, 能够处理复杂的规则、否定、等价推理、包含以及部分高阶推理。
目前开发的基于一阶逻辑的本体描述语言都未能在描述资源方面得到广泛的应用。而描述逻辑有着精确的数学基础, 支持较强的推理能力, 更适合于网络环境下大量知识的描述和推理。
2.3 基于描述逻辑的本体语言
2.3.1 OIL 、DAML 与DAML + OIL  
本体推论层(Ontology Inference Layer , OIL) 是由OnToKnowledge (基于本体演化的内容导向知识管理工具) 项目开发的一种本体语言, 其语义基于描述逻辑, 语法建立在RDF 之上。OIL 提供本体工程中基于框架方法中广泛采用的建模原语, 以及描述逻辑中的规范语义和推理支持。这是最早的基于RDF 的本体描述语言。
OIL 采用分层的方法定义标准的领域模型语言, 包括核心OIL 、标准OIL 、实例OIL 和重OIL 四层 。核心OIL 包括直接映射到RDF 原语的OIL 原语; 标准OIL 是完整的OIL 模型, 采用RDF 以外的原语, 既提供足够的表达能力, 又容易理解, 因而允许语义的精确定义和推论; 实例OIL 将概念和任务增加到已有模型; 重OIL 用于将来的扩展, 加入其他表达和推理能力。其中, 上层在下层基础上增加了功能和复杂性, 这样当领域模型按任何一层的语义进行描述, 即使只能处理和理解低层语义的主体, 也能够部分理解高层的领域模型描述。OIL 的优势在于以描述逻辑为基础。如果两个本体在定义中使用相同的术语集, 自动得出包含关系来合并本体。此外, 丰富的模型结构允许一致性检验, 为构建高质量本体提供方便。但是, OIL 定义的逻辑运算虽可以描述逻辑公式、规则和公理, 却只能表示一些代数属性而不支持广泛的公理描述。此外, OIL 与RDF 一样, 没有明确的输入机制, 不能充分支持本体的发展, 不能表示类和属性的同义, 不能表达同一概念的不同结构间的匹配。
代理标识语言( The DARPA Agent Markup Language , DAML) 是美国国防部高级研究计划局(DARPA) 于2000 年8 月启动的一个项目, 目标就是使Agent 能够动态地标识和理解信息资源, 并为Agent 之间的语义互操作提供支持, 建立一种促进语义Web 发展的语言和工具。DAML 是XML 和RDF 的扩展, 以描述逻辑为基础, 结合了OIL 的优点。同时, 由于建立在RDF 的基础上, 所以DAML 也受到RDF 缺陷的限制。DAML 最早的版本称为DAML-ONT , 现在与OIL 结合形成DAML + OIL (DARPA 代理标识语言+ 实体引入层) 。目前, DAML 研究项目正在探索创建一种具有足够的方法表达公理和规则的DAML 逻辑。
DAML + OIL 是由DARPA 和欧盟合作进行的项目, 是专门为语义Web 设计的一种本体描述语言, 采用面向对象的方法用类和属性来描述领域的结构, 具有清晰的语义。比如, 植物与种子植物的上下位关系可以表示为:
< daml : Class rdf : ID = 植物>
< daml : Class rdf : ID = 种子植物>
 < rdfs : subclassof rdf : resource = 植物>
< / daml : Class >

DAML + OIL 的不足之处主要体现在: ① 约束表达能力较弱, 只能表示属性值的基数约束, 不能表示属性值的区间约束; ② 不能表示任何规则, 而无论是约束表示还是规则表示对本体都是非常重要的[ 5 ] 。目前, 正计划实现DAML2Logic 语言, 在其中加入规则表示, 为DAML + OIL 扩展一阶逻辑提高其表达能力[22 ] 。21312  网络本体语言(Web Ontology Language , OWL)  OWL 是由W3C 网络本体工作组研究设计的一种以DAML + OIL 为基础的网络本体描述语言, 用于构造更加完备的本体信息以支持自动推理。OWL 采用面向对象的方式来描述领域知识, 即通过类和属性来描述对象, 并通过公理(Axioms) 来描述这些类和属性的特征和关系。
OWL 包括类、属性、类实例以及实例间的关系4 种基本元素。首先, OWL 语言的表述能力主要体现在对类和特性的描述上, 它通过构造函数(Constructors) 来构造类和特性。OWL 继承了RDFS 中的Rdfs : Class 等一系列的构造函数, 同时也新增了部分函数。其次, 为了能够进一步描述类和特性的特征和关系, OWL 定义了公理。通过这些公理, OWL 对类和特性之间的关系代数、复合关系、划分关系、部分到整体的关系等进行了细致的定义。并且, 对于类、特性及实例间相似性与不相似性进行约束, 更好地支持本体间的推导和映射, 增强本体信息的复用性。
  下面以飞机场的经纬度为例, 应用OWL 的基本元素
表示为:  < rdfs : Class rdf : ID = “飞机场” >   < rdfs : subClassOf >
   < owl : Restriction >
    < owl : onProperty rdf : resource = “# 纬度”/>
   < / owl : Restriction >
  < / rdfs : subClassOf >
  < rdfs : subClassOf >
   < owl : Restriction >
    < owl : onProperty rdf : resource = “# 经度”/>
   < / owl : Restriction >
  < / rdfs : subClassOf >
 < / rdfs : Class >
 < owl : DatatypeProperty rdf : ID = “纬度”/>
 < owl : DatatypeProperty rdf : ID = “经度”/>
OWL 包括3 个子语言: OWL Full , OWL DL 和OWL Lite 。OWL Full 包括所有的OWL 词汇和RDFS 提供的原语, 能够提供最大程度的知识描述能力, 但是没有计算上的保证。它还允许本体增加预定义词表的含义。OWL Full 可以看作是RDF 的扩展, 而OWL Lite 和OWL DL 可以看作是受控RDF 的扩展。OWL Full 由于过于复杂, 且还不成熟, 因此还在不断地更新中。OWL DL 提供大部分OWL 词汇支持和RDFS 支持, 并在语义上等同于描述逻辑, 它在保证计算的完整性和可判定性的前提下, 对本体进行描述。OWL Lite 用于提供分类结构和简单约束, 是OWL DL 中相对容易实现部分的子集合, 在形式上也没有OWL DL 那么复杂。
这3 个子语言的关系如下: 每一个合法的OWL Lite 都是一个合法的OWL DL 本体; 每一个合法的OWL DL 本体都是一个合法的OWL Full 本体; 每一个有效的OWL Lite 结论都是一个有效的OWL DL 结论; 每一个有效的OWL DL 结论都是一个有效的OWL Full 结论。反之, 则不成立。
3  本体研究方向与应用前景
本体论是近年来随着计算机信息处理、人工智能、知识工程等学科的发展而迅速兴起的一个十分具有活力的研究领域, 研究人员们从各自的专业领域出发对本体工程、本体的表示、转换、集成以及本体应用等进行了深入的研究和探讨。目前, 本体领域的研究重点主要集中于以下几点: 本体方法学的问题; 如何建立本体评价标准; 如何集成本体; 如何不断扩大本体应用领域。
本体理论在我国学术界引起普遍关注是在最近几年, 虽然目前对于本体理论和应用的研究都不深入, 但各专业领域都已认识到本体的应用潜力。在图书情报领域, 本体同样有着广阔的应用前景。本体能够准确地描述概念含义以及概念之间的内在关联, 并能通过逻辑推理获取概念之间蕴涵的关系, 具有很强的表达概念语义和推理的能力, 更适用于数字化时代的信息组织和检索。在信息标引方面, 由于本体可以更好地表达词语之间的概念关系, 可以应用本体辅助主题分析。首先应用主题识别等技术将文本中的概念提取出来, 然后应用领域本体中概念之间的语义关系和层次关系进行综合匹配, 进而确定主题概念。这样可以大大提高主题分析的准确性和科学性, 同时也可以避免使用句子分析、语段分析等目前尚不完善的分析技术。在信息检索方面, 可以利用本体对概念以及概念之间的关系进行精确的描述, 也可以利用本体对用户需求进行语义扩展。传统的基于关键词或分类目录的检索方法由于难以表达概念的深层次语义及内在关系, 导致了大量没有意义的检索结果出现。而本体则全面、细致地描述了概念之间的语义关系, 并可实现一定程度的推理, 建立本体与主题词或分类类目的映射, 利用本体所反映的领域知识可以实现初步分类, 同时也能更准确地分析出主题。另一方面, 在某些情况下, 用户难以简单地用关键词来表达其检索需求, 或产生表达差异等问题, 也可以应用本体对用户给出的词语进行语义扩展, 实现基于语义的检索。
由此可见, 本体与传统的叙词表一样, 都反映了某一领域的语义相关概念, 具有知识性、科学性和层次性, 而本体比叙词表更适用于网络环境下的信息资源组织, 其优势主要体现在以下几点: 首先, 本体更加深入、全面、细致地反映了概念之间的关系, 而叙词表中的语义关系则只有“用、代、属、分、参”等; 同时在组织结构上, 本体中的概念构成了一个语义网络, 而叙词表的知识点则只是线性的。其次, 本体中的概念用自然语言或半自然语言表达, 比叙词表的应用更广, 可以实现基于本体的语义检索或自然语言检索。再次。叙词表建好以后就相对稳定, 不可能经常修订; 而本体则是一个开放的体系, 其概念集可以随着学科领域的发展进行动态更新, 更适应于信息频繁更新与变化的网络环境。本体的建立是一项浩大的工程, 具体某一领域本体的建立也需要投入大量的人力、物力, 在建立过程中可以借鉴该学科叙词表的成果, 在叙词表的基础上完善概念间的语义关系, 扩展语义结构, 然后运用本体语言对概念及其关系进行形式化的表达, 使其能够为计算机所理解和处理。
目前, 本体在图书情报领域的应用已引起了国内学者们的关注和重视。2003 年10 月31 日至11 月2 日在南京召开的“信息构建(IA) 与情报学理论方法的新发展”学术研讨会上, 与会学者们将本体作为核心主题, 对于本体的概念、作用, 本体在信息检索领域的应用以及本体在情报学理论研究、情报系统和情报研究中的应用进行了探讨。同时, 也有研究人员尝试将本体应用于信息检索、自动分类、信息集成、数字图书馆的智能导航、信息过滤等, 但目前这些技术都还不成熟, 基本处于实验或小范围的验证阶段, 尚未有研究成果投入实际应用。

2006年09月30日

·0 3 1· 计算机应用研究2005 年

现代语义技术及其应用
林 岳1, 宋保华2, 段海波2, 黄风雷1
(1. 北京理工大学机电工程学院, 北京100088; 2. 亿维讯科技有限公司, 北京100020)
摘 要: 语义技术成为当前语义W eb 与知识管理的重要支撑技术。就现代语义技术的基本原理、语义模型、知识表达语言及其关键技术给出了具体的论述,介绍了语义技术的典型应用架构及当前主要应用领域。关键词: 语义技术; 自然语言处理技术; 本体论中图法分类号:

TP391; G201    文献标识码:A    文章编号: 100123695(2005) 0620130203
Overview of Semantic Technology and App lications
L IN Yue1, SONG Bao2hua2 , DUAN Hai2bo2 , HUANG Feng2lei1 (11School of Electrom echanical Engineering, B eijing Institute of Technology, B eijing 100088, China; 21 IW IN T, Inc. , B eijing 100020, China)
Abstract: Semantic technology as important support technology for semantic W eb and know ledge management are actively re2searched and imp lemented now. Presents the semantic technology’s basic p rincip les, semantic model, language for know ledge modeling, and introduces the key semantic technologies concretely. The typ ical app lication architecture for semantic technolo2gy and whose main app lications fields are also given. Key words: Semantic Technology; Natural Language Processing; Ontology
1.引言
 语义技术是自然语言处理技术十分活跃的研究与开发内容。 
2  语义技术基础
基础:词义词典,词义分类。
2.1 词义技术实现原理
简单结束语言处理器的组成等问题。
2.2 语义模型
在具体的语义技术应用过程中首先要构建描述周围世界的知识模型,即所谓语义模型。语义技术是基于信息中的关联性表达其含义的,也就是说术语的含义或者概念在模型中都是通过它们之间的相互关联构建起来的 。语义模型表达了系统处理的相关知识,而几个相互连接的模型可以用于表达知识的不同层面,因此一个语义模型可以体现同一对象的多个方面。语义应用系统可以随时查询这些模型,将知识模型作为它推理的基础,推理过程可以是从简单的图形查询过程到复杂的推论。而语义应用处理的都是一些关键数据,所有的商业规则逻辑都存储在模型里,被各应用程序共享。语义模型既可以是简单的树状模型,也可以是集成各种概念关系的知识模型,即本体论知识模型,它不同于我们平时所见的对象和数据模型。对象模型一般用于描述或者反映一个具体系统的属性和功能;数据模型用于描述系统外的世界,很多应用系统都可以分享同一个数据库。但实际上这种数据是针对具体应用要求特别定义好的,每一个表格具有一个共同属性,数据之间的关系体现在检索表里,而没有明显地体现出来。语义模型则允许不同应用系统都可以互用或者共享其中的含义,而且它支持多种可能的解释,这尤其适于互用性问题。
2. 3  建模语言
在HTML 以前也有一些用于语义模型或者知识模型构建的语言,但大多是在XML 出现以后。现在大量出现的是针对语义Web 的标准,它们主要基于人工智能、软件工程和过程模型等,逐渐形成了各种知识表达工具。当前的建模语言主要是基于20 世纪80 年代以来的本体论表达方式。在这之前比较流行的是KL-ONE, 它是基于框架的知识表达语言,它允许类别和实例的表达,带有类别属性继承和表达这些类别或属性的形式逻辑。知识交换格式KIF(Knowledge Interchange Format)和它相应的翻译工具后来被开发出来, 但由于它过于超前, 没有得到商业支持。随着WWW 网络的出现以及XML 逐渐被接受为网络信息表达的标准,本体论的概念被引入。在马里兰大学的一个早期项目中开发出一个用XML 表达本体论的系统,叫做SHOE, 以及基于本体论注释的网页标志,后来这些思想被吸收到W3C组织提出的资源描述框架(Resouce Description Framework, RDF) 语言中。DARPA 代理标志语言DAML 建立在RDF之上。DAML 从一个叫做本体论推理层OIL 那里为它的逻辑方法提取很多形式语义,而OIL 将描述逻辑的语义编写为基于XML 的语言。DAML 和OIL 结合起来就形成了DAML + OIL 语言, 而现在DAML + OIL 变成OWL (W3C 本体论语言)语言的基础 。另外, UML 和元对象框架MOF等也用于知识表达,但基于RDF的语言具有更好的发展潜力。
3  主要语义技术
3.1 信息索引与检索
信息检索的主要目的就是让用户通过查询找到需要的信息。现在有很多种信息检索系统,但主要分为以下两类:
(1)基于搜索方式的信息检索主要包括关键词搜索和自然语言搜索。关键词搜索是基于关键词,一些无价值的词汇被过滤掉,它主要采用布尔算子,可能会带来较大的冗余信息。自然语言搜索是基于对用户的自然语言查询内容的文法、句法和语义分析实现的,因此能给出更加合适的结果。
(2)基于搜索结果的信息检索系统主要包括文档信息检索系统和自然语言应答系统。信息检索系统给出的搜索结果是一个或多个文档。而自然语言应答系统是提供一个特定事实作为搜索结果。但对于回答“谁是美国1988 年的总统?”这样一个问题,需要深层的语言与语义分析,包括词义消歧等,这大大增加了系统实现的复杂度。
语义理解技术与机器翻译是目前搜索引擎的关键技术,应用这些技术的搜索引擎称为智能搜索引擎。由于它将信息检索从目前基于关键词的层面提高到基于知识(或概念) 的层面,对知识有一定的理解与处理能力,因而具有信息服务的智能化、人性化特征。现在,已经有越来越多的搜索引擎宣布支持自然语言搜索特性,如国外的搜索引擎Google, AskJeeves; 国内的搜索引擎网易、尤里卡、问一问、悠游等。
3.2 词义消歧
词义消歧是一个重要的语义技术,它是自然语言问答系统、指代消解、机器翻译等的必要组成部分。基于它的目标就是确定一个词或者一个固定表达在具体上下文中的意义,词义消歧可以说是一种纯粹的语义技术。但作为一种规则,这种技术需要语言处理器作为基础,因为如果不将一个文本分割成一系列词、句子和固定表达,不知道它是否是名词或者动词,要在上下文环境里确定一个词的含义会非常困难。Google 拥有的应用语义技术公司(Applied Semantic Inc) 采用了Circa 技术,它包括语言处理器及其上的一个包含语义消歧模块和文摘工具的语义处理器。基于这种技术该公司提供了一种企业解决方案(分类、概念标志和文摘工具) 、广告解决方案(基于网站内容的关键词提取) 、域名解决方案等。

3.3 自动文摘
自动文摘的目的是生成一个文档摘要,即包含主要意图和主要信息的短文。自动文摘可以让用户不必阅读全文就可以了解文档的主要内容,从而节省时间。基于不同标准的自动文摘可以分为不同的类型:基于处理语言的数量它分为单语言和多语言类型;基于文档长度是否可调节它分为用户可调文摘长度和固定文摘长度类型;基于提取信息(是否基于质询问题) 它分为静态文摘器(提取的内容独立于质询问题)和动态文摘器(基于质询问题提供个性化的摘要);基于具体技术它分为基于关键词、统计性数据等和深层的文本分析技术。
3.4 知识管理
(1)企业信息数据库的分类与聚类
不同的企业都会积累大量的文档数据库,如专利、文章、技术文档、产品描述、商业信件等。这些信息往往都是凌乱的,使得查询非常困难和低效,而基于主题将凌乱的信息结构化有助于数据库中信息的查询和添加。文档的自动分类首先需要基于概念的含义从文档里提取出自动分类法。在文档里概念是通过一系列词汇和上下文关系表达的,理解文档里的主要意图有助于文档分类。在从语义上提取一些重要的概念后,不同的数学方法会被应用到概念分类中,如凝聚法(层次树), K2方法,模糊聚类等。另一种方法是应用人工本体论,即一个大型的数据库。在这里词和概念的意义通过不同的关系连接起来,如同义、反义、上位、下位等,这种关系一般取自WordNet 。
除了自动文档分类法,文档分类还包括文档紧密关系评价,它主要是确定两个或多个文档之间语义紧密的程度。
(2)数据可视化
可视化的目标是以图形形式表达信息,以便于用户理解。可视化的内容主要包括知识库、专利、文档聚类器、网站、本体论词汇等。就像文档聚类一样,可视化的第一步是从文档源提取主要观点、词汇、事实、日期和概念,然后统计处理。数据可视化方式主要有图解(静态图) 、交互树、双曲线树、对象网络以及用于对象和分类的图表等。
3.5 本体论
像词义消歧一样,本体论也是一个重要的语义技术,它是作为一种概念化的说明,是对客观存在的概念和关系的描述。它是通用意义上的概念定义集,是关于种类( Kind)和关系的词汇表。作为一种知识库,本体论反映了人们对周围事物词汇的认知,也就是说在本体论中各种概念及其之间的关系都被表示出来。比如每个人都知道桌子是一种家具,家具是物理实体,桌子有腿和桌面,与它同类的还有亭子、课桌、茶几等。这些知识都应该在本体论中得到反映。因此本体论是一种复杂的知识网络,在这里各种概念基于不同类型的关系连接起来, 应用本体论可以生成自动的文档和概念分级、分类和聚类。OpenCyc 本体论(www. cyc. com /publications.html)就是一种本体论,它具有复杂的格式,由一种叫做CycL的语言写成。它的语法来自一级谓词演算(形式逻辑语言) 和Lisp 语言。CycL主要处理术语,固定术语可以被分成常量、谓词、函数、非原子术语(NATs)、变量和其他类型数据,固定术语组成有意义的CycL表达,用于Cyc知识库中的声明标志。
3.6 机器翻译
机器翻译(Machine Translation)是用计算机把一种自然语言(源语言)转变成另一种自然语言(目标语言),但不改变其语义的过程。机器翻译系统可以将不同语言的文档翻译为一种语言的文档,以便于不同语义机的进一步处理。它还可以用于以不同自然语言表达同一文档及其摘要等,这有助于节省用户时间,降低成本。用于机器翻译的基本方法主要有直接翻译、转换方法、国际语言、翻译记忆、统计翻译等。其中直接翻译是最简单、最普通的方法;翻译记忆法质量非产高,很少有错。当前用到的机器翻译系统有如多语言翻译系统 Prompt 2000 和Prompt XT, Google 内置的单语言网页翻译器等。
4 语义技术应用
语义技术应用领域非常广泛,它可以应用到各种不同的情景中,如应答机、自动内容标志、基于概念的检索、内容注解、动态用户界面等。下面列出了语义技术在一些常见领域的具体应用情况,图2给出了一种典型的语义技术应用架构,其中应用领域可以是我们常见的ERP, CRM , PDM 等。
(1)公司数据库管理主要是完成一些信息检索、自动信息分类及数据的可视化等工作。
(2)办公应用主要是完成文档翻译、文档拼写、风格与语法检查和内部文档流控制等。
(3) Internet 应用主要是实现信息检索、W eb 网页翻译和文档在线翻译等工作。
(4)电子商务应用方案包括自动查询处理、与客户的自动对话、电子商务用户的个性搜索、基于自然语言描述的产品与软件的属性的自动分析和基于自然语言描述的事物与软件的属性的自动比较等。
(5)电子学习工具包括与用户的自然语言对话,自动学习控制,百科全书、词典的自然语言界面,生成面向公司的培训材料等。
(6)游戏包括与用户的自然语言对话:自然语言问题处理与应答集成,素材、目标和情景的自动产生。
(7)桌面自动应答系统包括用户问题综合、分析、分类与匹配,自然语言界面等。
(8)移动技术包括基于词典、语法与语义关系的SM S 短消息文本,面向SM S 服务的自动用户问题处理, 具有自然语言交互界面的专家系统的技术支持,面向WAP 的知识管理。
(9)金融分析包括新闻、文章、股票交易报告及公告的自动处理,以简化用户在金融市场形势导向定位,长期市场调查。
(10)语音识别与分析包括自然语言识别中的多义消解、语法正确及语音合成等。
5 结论
本文介绍了语义技术的基本原理、语义模型、知识表达语言以及主要的语义技术等。语义技术已经逐渐成为当前国内外的研究热点。随着语义技术研究与开发工作的不断深入,基于语义技术的知识管理、语义W eb 、信息检索、机器翻译等将会得到越来越广泛的应用。

第31卷 第3期   计 算 机 工 程2005 年2月Vol.31 №3 Computer Engineering February 2005
·软件技术与数据库· 文章编号:1000—3428(2005)03 —0086—02 文献标识码:A 中图分类号:TP301.2

语义Web中几种语义描述语言的分析比较
卢刘明,朱国进,陈家训
(东华大学信息学院网络与数据库研究所,上海 200051 )
摘要:介绍了语义Web 的概念、产生的背景、革命化的意义, 并讨论RDF 、RDFS 、OIL 、DAML-O 的语义表示特征以及它们在语义Web 中所发挥的重大作用,并举出例子来说明这几种语义描述语言在语义Web 中的应用,同时深入分析比较了它们的语义表示能力。
;
关键词:语义Web; 资源描述框架资源描述框架定义集; OIL; DAML+OIL
Comparative Analysis of Several Semantic Web Languages
LU Liuming, ZHU Guojin, CHEN Jiaxun
(Institute of Network and Database, Information School, Donghua University, Shanghai 200051)
【Abstract 】 In this paper, the concept, background and significance of semantic Web are firstly introduced, and  the knowledge-representation features of RDF, RDFS, OIL, DAML-O are discussed. Several examples are given to demonstrate the application of the languages in semantic Web, and in-depth comparative analysis of the capabilities and limitations of the languages in knowledge representation is presented at the same time.
【Key words 】 Semantic Web; RDF; RDFS; OIL; DAML+OIL
1 概述
万维网(WWW ) 是通过在各种层面上运用所建立的标准保证协同才得以快速发展: TCP/IP 协议确保数据顺利地传输; HTTP 与HTML 协议为获取和表示超文本文档提供了标准。在现代万维网中,静态页面与动态页面都得到大量的应用,但是,这些网页只是直接被人工处理的,如阅读、浏览、填写表单等。下一代网络可称作语义Web, 它的发展目标是网络上的信息可被计算机处理。Tim Berners -Lee, J. Hendler, and O. Lasilla.[1]给出了语义Web 的定义:语义Web不是自成一体的网络,而是现在网络的扩展, 它使网络上的信息能被明确地说明, 从而让计算机或人之间能进行协同工作。正如Tim Berners-Lee 在《Weaving the Web》中所描述的那样,语义Web 能提供智能信息服务、个性化网站、授予语义的搜索引擎等。这种基于知识Web的智能服务超越了现在网络所能提供的服务,因为目前网络只能提供单一的服务,而且这些服务之间不能协同工作。
语义Web使网络信息的内容能被计算机所处理, 因此需要建立更高层次上的互操作标准。这些标准不但定义了网络上文档的语法形式,而且还定义了其语义内容。W3C标准化组织已经公布了XML/XML Schema 与RDF/RDF Schema 规范,这有利于语义上的协同。起初,在万维网中, HTML 提供文档结构化的标准使浏览器能以规范的方式把文档的内容转化为便于人们阅读的形式。一方面,HTML 的简单性促进了万维网的快速发展,另一方面,它的简单性也严重阻碍了许多领域中的高级网络应用的开发。这就导致了XML 的产生,它能使开发者能任意定义特定于某个领域或应用的XML 模式( schema ) 。XHTML 就是XML 在HTML 中的应用,它把HTML 文档表示成符合XML 规范的形式。XML 其实就是基于树结构的序列化语法的定义方法。这是建立语义Web的第一步, 因为在语义Web 中, 应用程序要能直接访问数据中的语义。资源描述框架(RDF)定义了表示计算机可处理的数据语义的语句规范及简单数据模型。RDF 是由W3C提出的一套可描述知识概念和实例的规范标准,它定义了基于三元组对象,属性,值的数据模型。在RDF 技术的基础上, W3C又提出了资源描述框架定义集(RDFS) 。为满足描述信息的需要RDFS 允许用户自定义除了RDF 基本,描述集合以外的特定领域的概念元集合即本体(Ontology) 。利用RDFS ,可以在网络信息中运用类、子类、子属性、属性的作用域及取值范围的限制。而DAML+OIL,OIL 是以RDFS 为出发点,并添加了丰富知识表示功能的基于Web 的本体语言。
2.XML/XML Schema
XML/XML Schema 的规范是由W3C 提出的,它的出现是推动Web 朝着语义Web 方向发展的重要事件。XML 是可以用来描述任意文件结构的标记语言。XML 文档由嵌套的元素组成,这些元素都有一个开始标记(如<RDF> )和对应的结束标记(如</RDF> ) ,每个标记可以包含任意的属性。人们可以任意定义自己的标记和属性。
任何一个所有开始和结束标记都能匹配的XML 文档被称作“格式良好”。更进一步地,可为XML 文档制定一个DTD(Document Type Definition) 或(XML Schema )来对其结构和内容进行限制。符合相关联的DTD/XML Schema 限制的XML 文档被称为“合法”的。虽然XML 文档本身没有包含语义的信息,但是通过分析与其相关的DTD/XML Schema 可以得到该文档的模式。XML 提供了一种树形结构:每个文档有唯一的根元素,元素之间的嵌套结构构成元素之间的父子、兄弟关系。这种固定的文档结构使得XML 的词法分析器可以以操作树的方法操作任何格式良好的XML 文档,因此XML 在语法的可互操作性上可以得到满足。但是, XML 在语义的可互操作性上存在不足。XML 的主要目标在于定义可交换文档的结构(语法), 它并未对包含在其中的数据提供任何解释。因此要增加语义的内容, 就必须在XML/XML Schema 的基础上构造本体语言。
3 RDF/RDFS
RDF-资源描述框架( Resource Description Framework ) 是由W3C提出的用来描述资源及其之间关系的语言规范。RDF 采用了一种非常简单的数据模型来实现对资源的描述, 它包括种对象:资源, 属性和声明。RDF 表达式中描述的所有事物都称为资源,资源可能是整个网页也可能是网页中的一部分;也可以是一些网页的集合,也可能是不能直接通过Web访问的对象。资源的命名是通过URI 加上一个可选的定位ID来表示的。属性用来描述资源的具体方面、特性或相互的关系等。每个属性有特定的含义、取值范围、能够描述的资源类型以及于其它属性的关系。一个有属性及其值的特定资源称为RDF 声明,其中的部分分别称为: 主题,谓词和对象。主题表示资源,谓词表示命名的属性, 而对象则是属性的具体值。
4 OIL (Ontology Inference Language )
OIL 在基于文件类型定义( DTD ) 与XML Schema 定义上有明确定义的语法,这使它作为一本体语言符合当今万维网的信息表示标准。同时, OIL 是RDF 与RDFS 的扩展。OIL 不但结合了基于框架系统的基本建模原语,而且从逻辑语言(DL) 继承了形式语义与有效的推理支持。
OIL 是由一系列不断增加的具有层次结构的次语言组成的,每一个添加的层次是在前一层次的基础上增加另外的功能与复杂性,这样可以满足语义Web中大量用户与应用程序的需要。只能处理底层语言的代理( 包括人或计算机)也可以理解在高层表示的本体的部分语义。标准OIL 旨在包括必要的能提供足够表达功能及能被理解的主流建模原语,因此可明确定义语义并使完全推理可行, 因此它添加了许多描述逻辑原语。实例OIL 包括了个体间的集成,同时也包含了功能齐全的数据库能力。扩展OIL 提供了附加的表示与推理功能, OIL 可与DAML 结合产生更强大的推理语言。下面为OIL的一个应用实例。
 <rdf:RDF>
<oil:DefinedClass rdf:ID="Husband">
   <rdfs:subClassOf rdf:resource="#male">
   <oil: hasSlotConstraint>
<oil:HasValue>
  <oil:hasProperty rdf:resource="#isMarriedTo"/>
  <oil:hasClass rdf:resource="#Female">
</oil:HasValue>
  </oil: hasSlotConstraint>
</oil:DefinedClass>
<rdf:RDF>
OIL 的优势是以表达描述逻辑为基础的。如果两个本体在它们的定义中利用了相同的基本术语集,那么就可能计算出这两个本体结合体中的层次结构。然而由于语义Web中难以控制的实例的多样性,可能会发生逻辑不一致的问题。OIL 的弱项与RDF 类似,它没提供本体的扩展方面的足够功能。它没有说明许多本体集成所必需的映射。例如, OIL 不能表达类及属性之间的同义的概念, 也不能表达出表示同一个概念的不同结构之间的映射。
5 DAML+OIL
DAML+OIL 是作为美国DARPA 代理标记语言(DAML) 一组成部分的DAML 本体语言( DAML-ONT ) 与OIL 相结合的产物。
它采用面向对象的方法,描述有关类与属性的结构。DAML+OIL 有很强的描述逻辑表示能力,一个DAML+OIL 的本体对应着一个描述逻辑的术语。
5 结束语
当前,数据库系统已成为各种计算机应用的基础。同时,随着信息量需求的增加,各种应用数据库越来越庞大,基于关系模型的数据库结构也越来越复杂。在这样的条件下,如何保证各种数据库应用仍然以高效率运行,成为各程序开发员必须考虑的问题。而随着泛关系理论的出现,对数据库的从简化数据库操作的目的出发,提出了一种基于泛关系的多表间最佳连接的算法Double_Dij。
Double_Dij 算法通过对泛关系数据库描述的遍历,以最快的速度来查找数据库中的表间连接关系,从而避免了因频繁读取数据库而引起的数据库效率的降低。该算法适用于任何复杂程度的数据库,而对于结构较为复杂的数据库,它的优势将更为明显。