1 引言
网络信息检索已成为我们获取信息主要手段。根据CNNIC的统计数据[1]:目前中国用户上网的最主要目的中,信息获取以42.3%位居榜首;有98.7%的人表示通过互联网来获取信息,其中有71.9%的人是通过搜索引擎来查找相关网站的。然而网络信息检索面临两个亟待解决的关键问题:
(1)搜索的结果相关度低,冗余信息太多;
(2)搜索引擎无法对常识性问题给予回答,智能化水平低。
出现上述问题的原因在于目前检索技术主要依赖于编码技术,通过分类模式来描述给定的信息;通过基于字符串匹配的全文检索技术,来搜索用户提交的关键词。由于编码描述只能反映出部分语义,因此不能保证语义的匹配;检索过程是把用户的查询关键词与全文中的每一个词进行比较,而不考虑查询请求与文档语义上的匹配。针对上述两个关键问题,本文运用本体论的相关知识,提出基于本体构建的语义搜索引擎模型。该模型能够根据用户的查询关键字或者询问问题,进行基于知识的推理,从而提高检索结果的相关度,并且实现一定水平的语义检索。
2 本体论
2.1 本体的概念
本体这个术语来自于哲学,根据韦氏词典的解释,本体是形而上学的一个分支。目前本体在人工智能领域得到广泛研究和应用,但尚未形成统一的定义,最广为流传的定义有[2]:
定义1:本体是对共享概念模型的形式化明确说明。它有几个要点:
★ 概念模型(conceptualization):指通过抽象客观世界中一些现象(Phenomenon)的相关概念而得到的模型,其表示的含义独立于具体的环境状态;
★ 明确(explicit):指所使用的概念及使用这些概念的约束都有明确的定义;
★ 形式化(formal):指Ontology是计算机可读的;
★ 共享(share):指Ontology中体现的是共同认可的知识,反映的是相关领域中公认的概念集,它所针对的是团体而不是个体。
简单地说,本体给出构成相关领域词汇的基本术语和关系,以及利用这些术语和关系构成的确定词汇外延的有关规则的定义;其目标是捕获相关的领域的知识,提供对该领域知识的共同理解,确定领域内通用的词汇,并给出这些词汇(术语)和词汇之间相互关系的明确定义。
定义2:本体论是关于词汇或概念的理论,这些诃汇和概念用于构建人工智能系统。该定义认为,本体实际上是一种表示性的词汇,这种词汇可以应用于特定领域。比如电子设备领域的本体,它包含一些描述基本概念的词汇——晶体管,运算放大器,电压等;也包含这些基本词汇间的关系——运算放大器是电子设备的一种,而晶体管是运算放大器的组件。一般来说,识别这种词汇和潜在的概念需要仔细分析领域内存在的各种对象和关系。这一定义描述的本体建设方法与面向对象方法有一定的共通之处。
定义3:本体论是用来定义某一领域的知识主体。该定义认为,本体是描述某个领域的知识,它不仅仅是简单的词汇表,而是整个上层知识库(包括用于描述这个知识库的词汇)。
综上所述,本体是某个领域内(可以是特定专业的,也可以是宽泛范畴的)不同主体(人、代理、机器等)之间进行交流(对话、互操作、共享等)的一种语义基础,即由本体提供定义明确的词汇表,描述概念和概念之间的关系,作为使用者之间达成的共识。
2.2 本体的作用
本体的作用可归结为通讯(communication)、互操作(interoperability)和系统工程(systems engineering)。
(1)所谓通讯是指本体为人与人之间或组织与组织之间的通讯提供共同的词汇,即交流的基础。
(2)互操作说明本体建立了在不同的建模方法、范式、语言和软件工具之间进行翻译和映射的机制,以实现不同系统之间集成。
(3)系统工程:本体分析能够为系统工程提供以下方面的好处:
★ 重用(reusability):本体是领域内的重要实体、属性、过程及其相互关系形式化描述的基础。这种形式化描述可成为软件系统中可重用和共享的组件(component)。
★ 知识获取(knowledge acquisition):当构造基于知识的系统时,用已有的本体作为起点和基础来指导知识的获取,可以提高其速度和可靠性。
★ 可靠性(reliability):由于本体的描述是形式化的,形式化的表达使得自动的一致性检查成为可能,从而提高了软件系统的可靠性。
★ 规范描述(specification):本体分析有助于确定系统(如知识库)的需求和规范。
3 基于本体语义搜索引擎
3.1 基于本体搜索引擎的设计思想
本体提供了人机交流的机制,使得机器可以理解语义,从而为搜索引擎提高效率奠定了基础。
基于本体的搜索引擎的基本设计思想:
(1)在领域专家的帮助下,建立相关领域的本体(Ontology);
(2)收集信息源中的数据,并参照已建立的Ontology,把收集来的数据按规定的格式存储在元数据库(关系数据库、知识库等)中:
(3)对用户检索界面获取的查询请求,查询转换器按照Ontology把查洵请求转换成规定的格式,在Ontology的帮助下从元数据库中匹配出符合条件的数据集合;
(4)检索的结果经过定制处理后,返回给用户。
3.2 知识库
实现基于本体的语义搜索引擎,建立知识库是必需的。知识库是语义搜索引擎进行推理和知识积累的基础和关键,而Ontology则是知识库的基础。一般来说,本体提供一组术语和概念来描述某个领域,知识库则使用这些术语来表达该领域的事实。例如医药本体可能包含“白血病”、“皮肤病”等术语的定义,但它不会包含具体某一病人的诊断结果,而这正是知识库所要表达的内容。比如张三患有皮肤病、李四患有皮肤病和白血病、王五患有白血病,其中的皮肤病、白血病就是本体。而各个病症的实例(张三、李四、王五)及其病症描述就是知识库的内容。
本体和知识库的关系有几个要点:
★ Ontology为知识库的建立提供一个基本的结构;
★ Ontology提供一套概念和术语来描述某一领域,并且获取该领域的本质的概念结构;
★ 知识库就运用这些术语去表达现实或者虚拟世界中的正确知识。
因此,建设一个知识库的第一步就是对该领域进行有效的Ontology分析。
3.3 构造本体
本体的构造是整个基于Ontology的信息检索系统的底层基石,决定着系统的性能、通用程度以及系统运行的质量。如何正确、有效、合乎逻辑的建立本体是这个系统建立的关键。
(1)本体的构造准则
对同一领域,同一事物,不同人往往会建立不同的本体。由于本体应该是规范化的描述,因此遵循统一的构造准则是必要的。目前最为常用的是Gruber提出的指导本体构造的5个准则,[3]即:
清晰(Clarity):本体必须有效的说明所定义术语的意思。定义应该是客观的,与背景独立的。当定义可以用逻辑公理表达时,它应该是形式化的。定义应该尽可能的完整。所有定义应该用自然语言加以说明。
一致(Coherence):本体应该是一致的,也就是说,它应该支持与其定义相一致的推理。它所定义的公理以及用自然语言进行说明的文档都应该具有一致性。
可扩展性(Extendibility):本体应该为可预料到的任务提供概念基础。它应该可以支持在已有的概念基础上定义新的术语,以满足特殊的需求,而无须修改已有的概念定义。
编码偏好程度最小(Minimal encoding bias):概念的描述不应该依赖于某一种特殊的符号层的表示方法。因为实际的系统可能采用不同的知识表示方法。
本体约定最小(Minimal ontological commitment):本体约定应该最小,只要能够满足特定的知识共享需求即可。这可以通过定义约束最弱的公理以及只定义通讯所需的词汇来保证。
(2)本体的表示
目前有两种本体表示方法应用比较广泛,一是传统的四元素表示方法、二是较新的六元组表示法。前者在世界范围内得到了比较高的认同,但是形式过于灵活,不易掌握。后者因为定义规范,可操作性强,得到了广大国内研究者的欢迎。
★ 四元素表示方法
四元素表示方法的基本思想是;一个本体中的四个主要元素是:概念(concepts)、关系(relations)、实例(instances)和公理(axioms)。
概念表示某个领域中一类实体或事物的集合。通常概念可以分成两大类,一类是简单概念(primitive concepts),另一类是详细概念(defined concepts)。简单概念是那些只具备必要条件(即属性)的类成员(注:英文原文:Primitive concepts are those which only have necessary conditions(in terms of their properties)for membership of the class.)。详细概念是指对类成员的描述既充分又必要(注:英文原文:Defined concepts are those whose description is both necessary[1] [2] 下一页