本体论是哲学的一个分支,是对现实的每个领域中的对象,属性,事件,过程和关系的种类和结构的科学,目前重要的应用方向有人工智能、语义网、软件工程、生物医学信息学、图书馆学以及信息架构。
在计算机信息科学领域,本体提供的是一种共享词表,也就是在特定领域之中存在的对象类型概念及其属性和相互之间的语义关系。或者说,本体就是一种特定类型的术语集合,具有结构化的特点,能够在计算机系统之间相互传递,达到共享的目的。也可以说本体实际上就是对特定领域内某套概念你相互之间关系的形式化表达,形成一种行业领域内的共同语言。在领域内构建的本体,一般可根据语义关系或者属性来进行推理,亦或者是对领域内的知识进行结构化的表达,也就是对该领域进行建模。
一、本体构建方法
目前来看,对于本体的构建方法主要有七种,包括TOVE法,METHONTOLOGY法,骨架法,KACTUS法,SENSUS法,IDEF5法,七步法,其中七步法最为成熟和常用。
本体构建是个知识获取和组织整理的过程,因此需要遵循一定的原则,可以归纳为一下五条:
(1)明确性和客观性。创建的本体应该有效地场地所定义的术语及其含义。
(2)一致性。创建的本体应该是前后一致的,即由该本体推理出来的概念定义应该与本体中的概念定义一致。
(3)可拓展性。一个本体是一个领域内的共享词汇库,一方面它应该在预期任务范围内提供基础的概念,另一方面它能够使得人们能够单调地或者系统地对概念说明进行拓展。也就是说,新的使用者可以在不改变原有本体的概念定义情况下,以已有的本体概念为基础拓展定义新的术语。
(4)最小编码差。本体应该处于知识的层次,而与特定的符号级编码无关。
(5)最小本体承诺。即本体应对所模拟的事物产生尽可能少的推断,而让共享
者自由地按照他们的需要去专门化和实例化这个本体。
创建的领域内本体表示的是领域内现实世界模型,因此创建的本体必须能够客观反映现实世界。“七步法”创建本体方法步骤如下:
(1)确定本体的领域与范围。首先要明确构建的本体将覆盖的专业领域、应用本体的目的、作用以及它的系统开发、维护和应用对象。应当明确对于特定的专业领域的一些特殊的表达法和特定的详细内容等的注释。
(2)列举领域内的术语。在创建领域本体的初始阶段,尽可能列举出系统能表达的或要向用户解释的所有概念、概念的属性、概念间的关系以及属性之间的关系。
(3)建立本体框架。上一步列举出的领域中的概念,是一些毫无组织和结构的词汇,需要按照规则和相关性把它们进行分组,构成不同的工作领域。另外,对每一个概念的重要性要进行评估,选出关键性术语,以尽可能准确而精简的表达出所在领域的知识,得到领域本体的框架结构。
(4)设计元本体,重用已有的本体,定义领域中概念及概念之间的关系。元本体是指本体的本体,用于定义本体中的概念,如实体、关系、角色等。是更高层次的本体,是领域内概念的抽象。设计元本体时,尽量做到领域无关性,并且包含的元概念数目尽可能少。为了描述各个概念,需要利用术语对概念进行标识,并对其含义进行定义。概念的定义可以使用元本体中定义的元概念,也可以重用已有的本体。
(5)定义类和类层次。领域中的概念,主要使用类来描述。而对类层次的定义有以下3种方法:
①自上向下法(top-dowm):先定义概括性的概念,然后细化、说明;
②自下向上法(botton-up):先定义特殊的概念,然后对这些概念泛化,聚合成综合性的概念;
③混合法(combination):混合使用自上向下法与自下向上。
(6)定义类的属性和属性约束。仅仅定义类不足以确切的描述一个领域,还要进一步描述类的内部结构。本体中使用属性用来描述类的内部结构。属性通常应该被定义为在拥有该属性的基类上。属性值的集合称为属性类。属性类也有属性,即属性约束。属性约束一般描述属性值的类型、属性值的基数、属性的领域和取值范围、属性的逆属性以及属性的默认值。
(7)对领域本体编码、形式化。选择合适的本体描述语言对建立的领域本体进行编码、形式化。
二、本体表达方法
用于描述本体的语言众多,而W3C推荐的语言本体描述语言主要有三种,即RDF、RDPS、OWL。
(1)RDF(Resource Description Framework,资源描述框架)
客观世界中任何一种关系都可以用一个三元组(主体/主语、谓语、客体/宾语)来进行表达。RDF用于描述web上的资源,是使用XML语言编写、计算机可读的,不是为了向用户展示。RDF使用web标识符(主体/主语)来标记资源,使用属性(谓语)和属性值(客体/宾语)来描述资源。这里的资源、属性和属性值就构成了一个陈述(或者被称为陈述中的主体、谓语和客体)。
本体中的类(概念)就是RDF三元组中的主体/客体,类的属性就是RDF三元组中的谓语。RDF数据也可以被表示为一个带有标记的有向图,图上的节点对应三元组中的主体和客体,边对应谓语。
(2)RDFS(RDF Schem,RDF词汇描述语言)
RDFS是在RDF基础上对其进行扩展而形成的本体语言,解决了RDF模型原有的缺点,定义了类、属性、属性值来描述客观世界,并且通过定义域和值域来约束资源,更加形象化表达了知识。
(3)OWL(Web Ontology Language,Web本体语言)
OWL是由W3C开发的网络本体语言,用来对本体进行语义描述。OWL保持了原有RDF、RDFS的兼容性,有保证率较好的语义表达能力,根据表达能力的增强顺序OWL分为三种子语言:OWL-Lite、OWL-DL和OWL-Full。OWL本体中有3中基本元素:类、属性和实例。