基于本体化知识模型的知识库构建模式研究.docx
《基于本体化知识模型的知识库构建模式研究.docx》由会员分享,可在线阅读,更多相关《基于本体化知识模型的知识库构建模式研究.docx(10页珍藏版)》请在冰豆网上搜索。
基于本体化知识模型的知识库构建模式研究
基于本体化知识模型的知识库构建模式研究
袁磊1张浩2陈静3陆剑峰1
1(同济大学CIMS中心,上海2(0092)
2(上海电力学院,上海200092)
3(华东师范大学地理系,上海200062)
【摘要】在研究了知识模型及知识库相关理论和技术的基础上,结合本体论,提出了一种基于本体的知识模型,并从领域知识推理、方法知识和任务知识三个角度给出了本体化知识模型基于BNF范式的表达式;基于所建立的本体化知识模型,在对知识进行可拓性分析的基础上,提出了一种知识库结构模式,对于知识模型与知识库的匹配问题进行了讨论,并在理论研究的基础上,给出了利用SQLServer数据库系统建立的知识库示例。
【关键词】本体;知识模型;知识库;设计模式;知识工程
1引言
对于知识的研究与探索,人类自始至终从未停止过,直至人类进入信息化社会并正在向知识化社会迈进的过程中,人类通过计算机的应用才开始真正把知识从概念跃升到知识科学。
知识工程便是一门新兴的关于知识获取、表示和推理,以及用一种特定形式把知识表示为计算机可操作对象的科学。
其研究的目标是挖掘和抽取人类知识,这也使得计算机具有了人类的一定智能。
知识工程是在20世纪70年代后期,从构建专家系统、基于知识的系统和知识密集型的信息系统的技术发展而来的。
GuusSchreiber认为"知识工程是一种建模活动,模型是对现实的某一部分进行的一种有目的的抽象。
建模是对知识的少数几个方面建立一种好的描述,而忽略其他方面"。
因此,知识工程领域最主要的研究内容是知识表示以及基于此的知识应用。
知识模型本身是一个阐述"知识一密集型信息一处理任务结构"的工具。
一个应用的知识模型可提供应用所需的数据和知识结构的规范说明。
对于知识表示而言,建立一组结构良好的知识模型可以方便地对相关知识进行描述、整理,利用知识模型可以将知识方便的表示成文本形式,但是文本形式的知识不利于知识的处理,如推理、分类等操作,因此,在对知识进行表示的同时,需要建立知识库系统对知识进行存储。
要对知识进行存储,必须建立相应的知识库系统,同时,需要将知识模型与知识库进行映射匹配。
2知识模型与知识库
2.1知识模型中知识本体的引入
对于知识模型而言,其中最核心的部分是"如何合理有效的表示知识",即知识表示。
对于不同类型的知识范畴,选用不同的知识表示方法对知识处理的影响很大。
所谓知识表示是对知识的一种描述或一组约定,是知识的形式化和符号化过程。
知识表示方法常可以分为基于符号的表示方法与基于连接机制的表示方法。
前者主要是面向逻辑知识的表示,如一阶谓词逻辑表示法、产生式表示法、框架表示法,脚本表示法等;后者则主要是面向形象知识的表达,如语义网络表示法、过程表示法、Petri网表示法以及面向对象的表示法等。
在实际的知识表示过程中,传统知识表示方法在知识表示、传递和共享过程中存在先天性的缺陷。
一方面,所表达的知识无法保证在传递和共享过程中知识理解的唯一性与无二义性;另一方面,在大量的原子性知识的环境中对复杂知识的表达与推理可能会产生组合爆炸。
因此,冲突消解能力的强弱以及知识原子的大小、多少与组织方式直接决定了这种知识表示方法的可用程度。
为了解决上述知识表示方法中存在的问题,在知识工程领域引入了知识本体的概念。
从本体的角度,知识表示可以看作是由逻辑、本体和计算三部分组合而成问。
逻辑提供了通过逻辑运算从现有知识演绎出新的逻辑描述的功能;计算则是指确定一个描述是否能够从给定描述演绎得出的过程。
而本体是对相关知识的共享概念模型和明确的形式化规范说明,它提供了知识模型中基本术语(知识原子)与关系,并利用这些术语和关系构成知识的外延规则和复杂定义:
2.2知识库系统概述
知识库的概念是将传统的数据库(DB)技术和人工智能(AI)技术相结合的产物间。
AI和DB技术都是计算机科学两个十分重要的领域,它们各自独立发展已有几十年的历史,并在各自的领域取得突出的成绩得到广泛的应用。
然而,它们都存在十分突出的问题和矛盾。
一方面,现有的AI系统(如专家系统)可以使用成百上千条基于规则的知识去进行启发式搜索与推理,但却没有高效检索访问现存数据库和管理海量数据的能力;另一方面,现在的DBMS虽已优化到可以处理海量数据和事务的水平,但却无力表达和处理基于规则的知识。
因此,将两者结合起来建立和实现新一代的知识表示、存储系统一→知识库,它是合理组织的关于某一特定领域的陈述性知识和过程性知识的集合。
知识库和传统数据库的区别在于它不但包含了大量的简单事实,而且包含了规则和过程性知识。
知识库所能表示的知识必须具有一个统一的结构模式、优先一致的符号以及符号和模式能够能的一个合理的体系。
目前知识库系统中一般采用的是"事实一概念一规则"所表示的三级知识体系。
(1)事实处于最底层,是对象、符号和事件之间的各种关系之集合。
事实可用语句、链表、二维表、树图、框图和文本等数据结构表示。
事实是可利用的数据块的基础,通常组织成簇的形式。
簇被用于形成有关对象的概念。
(2)概念处于第二层,是关于具有共同属性的一组对象、事件或符号的知识。
包括例子集合、模型和复杂的元素,可以具体或抽象地刻画、定义某一对象类的一般特征,也可以高层或低层地表示具有层次结构的一组概念的集合。
(3)规则处于第三层,是一组操作和步骤,用于完成某一目标,解决某一问题或产生的某种结果。
规则被定义为类似于E…四:
-nei语句的条件表达式,被用于推理和问题求解,是一种形式化的知识表示方法阴。
上述三层知识表示体系与基于知识本体的知识表示相明合,因此,从理论角度讲,基于知识本体可以很好的构建知识库。
同时,结合具体的应用需求,知识库中通常还存储相应的任务信息,即使用事实、概念及规则要解决的任务描述。
3基于知识本体的本体化知识模型
知识模型本身是一个阐明"知识一密集型信息一处理结构"的工具,一个知识模型可提供应用所需要的数据和知识结构的规范性说明。
一个知识模型包括三部分,每一部分包含-组相关的知识结构,即知识范畴I町。
范畴1领域知识
领域知识详细描述特定领域知识和在一个应用中所讨论的信息类型。
例如,一个涉及设备故障诊断应用的领域知识将包含相关故障信息、故障表现和不同故障之间的关系等信息。
领域知识在某种程度上相当于软件工程中的"数据模型"或"对象模型"。
范畴2推理/方法知识
推理知识也可以称之为方法知识,描述了使用领域知识的基本推理步骤,可以将这些推理步骤看作是推理机或推理引擎的基本构件。
推理知识定义了这些基本构件的模型。
范畴3任务知识
任务知识描述了一个应用所要达到的目标,以及如何通过任务分解成子任务和推理来实现这个目标。
基于以上对知识范畴的分类,知识模型将有三部分组成:
领域知识模型、推理/方法知识模型和任务知识模型。
知识模型的结构如图1所示。
对应于知识表示体系,领域知识模型属于"事实/概念"层次,推理/方法知识模型属于"规则"层次,任务知识模型对相应的应用任务进行了描述。
所有的知识模型需要基于知识本体加以构建,即满足前面知识本体的定义模式,将上述三个知识模型的组成部分结合知识本体的原话,利用BNF(Backus-NaurForm)范式对知识模型进行统一的描述和表示,其知识框架如下所示.
4知识库结构研究
4.1知识库静态结构模型:
三库四层结构
根据知识模型的组成和知识表示体系的定义,本文提出了一种知识库静态结构模型:
三库四层结构。
图2为三库四层结构模型。
由于整个知识模型由三部分组成,所以整个知识库由三个子知识库组成:
领域知识库、推理/方法知识库和任务知识库。
各个子知识库与相应的知识模型相对应,即存储由不同知识模型表示的知识。
对于知识库而言,其内部存储的知识要满足"事实一概念一规则"的表示体系所以整个知识库由四个层次组成:
知识模型层、模型子层、基本信息层和关联信息层。
其中,知识模型层只对相应的知识模型本身的组成信息,即知识模型的根元素,进行高度概括性描述,主要由相关的索引信息、组成,如指明知识模型的索引、对应相关模型子层的索引信息等;对于不同的知识模型,根据需要分为不同的模型子层,如在领域知识模型中定义的DomainPattem和UseBase即属于模型子层,它们存储了基本信息层的索引信息,通过这些索引信息可以方便的找到相应的基本信息(事实或概念等);基本信息层包含了对知识原子的定义,如事实、概念、属性以及概念之间的关系等信息;关联信息层主要存储了不同模型之间的关联信息,如不同概念、关系之间的引用、参考等约束信息。
随着层次的上升,由关联信息层到知识模型层,其信息的综合程度逐渐上升。
基本信息层和关联信息层主要由知识原子构成,基本不存在相关的综合性索引信息,模型子层主要对基本信息层进行一定的概括抽取出相应的索引信息加以存储,知识模型层是对整个基于一定知识模型表示的知识文本信息的高度概括,信息的综合程度最高。
4.2基于知识可拓性的知识模型与知识库的映射匹配分析
对于知识模型和知识库而言,虽然前文提出了一种知识库的结构模型,但是,要使得知识模型与知识库很好的匹配,必须建立知识模型与知识库的结构模型映射匹配机制,实现基于知识模型创建的知识文本信息在知识库中的分类对应存储。
由于知识是人们在社会实践中获得并积聚起来的认识和经验,它表现为以各种方式把一个或多个信息单元联系起来的信息结构。
知识模型即是这种信息结构。
为了更好地表示知识模型与知识库的映射匹配机制这里我们引入了可拓性的概念。
引人知识本体建立知识模型是为了更好的对知识表示进行概括性、抽象性的描述,这里引人可拓性是为了强调知识/信息之间的关联性。
可拓学用物元、事元作为描述物体、事件的基本单元,物元、事元用三元组R={N,C,V}表示,其中N为物元、事元名称,C为特征,v为特征值。
进一步,融合关系表示和语义网表示的基本思想,可以组成知识的可拓网络,用SE表示,即SE={E,L},其中,E是以三元组为基本形式表示的物元及事元组成的节点集合,L是连接E中节点的带算符的有向标的集合,用来表示节点间的可拓性、可拓变换或可拓逻辑联系。
在可拓网络中,认为:
(l)物元及事元发散性的表示,可以接在物元或事元的集合中,从事物或行为、特征与量值等角度来揭示这类联系,从而构成发散树;
(2)物元及事元的可拓性可以表示为,用从对象指向结果的有向边将对象和结果联系起来,每条边使用相应的运算符或运算条件来表示二者的关系。
为了表示的方便,在知识模型中使用不同的标签将物元或事元以及相互之间的关系进行了标识。
图3简单表示了知识模型与子知识库之间的映射匹配关系其中左侧的知识模型树状表示
其中Root表示知识模型的根节点,对应整体知识模型中的领域知识模型、推理/方法知识模型、任务知识模型中的根元素,在知识库中表示为相关知识模型根元素的索引信息表;Logic-port为知识模型中的逻辑节点,对应于知识模型中的模型子层,逻辑节点由叶子节点和属性节点组成,在知识库中可以表示为独立的信息表或相关的索引信息表;叶子节点(Leaf)和属性节点(Leaf-attribute)对应于整个知识模型的基本信息层,在知识库中可表示为信息表中的字段或信息表,结合前面可拓网络的定义,前三部分属于物元/事元集合E的范畴;知识模型的关联信息层表示为树状图中节点之间的连接,即R(*),由于关联信息的多态性,即有同层节点之间的关系又有层间节点间的关系,所以关联信息层在知识库中一般不以独立的信息表形式出现,而表现为不同表之间的约束信息,属于可拓网络中节点间联系L的范畴。
由于所建立的知识模型符合可拓性的要求,同时,从可拓性的表示形式可以看出,由物元、事元描述的信息单元形成的知识可以基于关系型数据库建立知识库,具体用二维表表示物元、事元,其中表的纵向为物元名称,横向为特征、特征值。
知识库中多个表进行关联,从而能够形成知识的可拓网络。
以液压系统中的各测点信息形成的知识可以形成表1。
对于表1可以方便地以关系型数据表加以表示,因此,在建立相应的知识库时,可以根据知识模型,从领域知识、推理/方法知识和任务知识三个层次建立不同的子知识库,对于各种不同的知识类别,利用物元、事元的可拓性,即发散性、可扩性和共辄性对基本信息加以拓展扩充,形成不同类型子知识库。
如对表中"泵出口",发散出(泵出口、油温、<40"C),(泵出口、油帖度、>46mm2/s)等物元;对表中的(上腔、流量、200l/min),根据共辄性,可得到(上腔、空气流量、<5ν'min)。
这次通过扩展得来的信息可以生成知识库中新的表生成的二维表每一行描述
客观世界中的一个知识单元,利用物元、事元的可拓性从各个方面对基本表进行拓展,充分保证了这个表的丰富性。
知识库中各个知识单元之间的联系也可以使用一个主元组来表述,即R={矶,N2,D},其中N1,N2为物元、事元特性,客观世界中的各知识单元的联系表现为各物体特征之间的联系,即物元或事元之间的二元或多元联系。
D表示了它们之间的相关、蕴含、约束等信息,它可以是一个数学表达式,也可以是一个定性的关系,不能用数学表达式进行定量表示。
由于篇幅关系,这里就不对此部分进行展开讨论了。
在知识库中,各表之间的关联关系是基于此定义的。
5知识库示例分析
基于以上对知识模型和知识库的分析,结合MicrosoftSQL系列数据库,建立的知识库关系图如图4所示(只给出部分关联字段名)。
所构建的知识库中共有25张信息表,整个知识库中的信息表分为四个层次,第一层次主要由DomainBase、ReasonBase和TaskBase三张信息表组成,对应于"知识模型层";第二层次由PattemTable、UseBase、Inference、TransferFunc、TaskBasic和MethodBasic六张信息表构成,对应于"模型子层";其余信息表为第三、四层次,对应于"基本信息层",由于基本信息之间的关联较为密切,所以,在知识库中使用两个层次表示"基本信息层";所有信息表之间的关系构成了"关联信息层",共有38个关系组成,其中同级别信息表之间的关系为11个。
根据前面定义的物元/事元三元组,在知识库中所有的知识均采用三元组方式存储同时由于知识单元之间的关联性,在表中还存储了表示知识单元关系的关联性信息。
为了减少表之间的耦合性,同时考虑到所存储知识的可拓性,根据知识单元关系的三元组表示,所有关系均采主键/外键约束关系,如领域知识库中表ConceptAttribute中的主键与表ConceptBasic中的AttributeIndex构成主/外键关系。
由于表中的关系更多的是表示知识单元的关联性,所以采用定性关系来表示。
根据可拓性原理构建的知识库由于知识存储表示的层次性,可以方便地进行知识推理、搜索等处理操作。
同时,基于关系型数据库构建的知识库可以方便的进行查询、插入、删除和更新等操作,并且知识库的改变不会影响应用程序的执行,不需要对应用程序进行改变,保证可拓性知识库良好的开放性、动态性。
6小结与展望
知识模型及知识库是目前知识工程领域一个比较热门的研究热点,国内外很多机构、学者对此进行了大量研究。
本文在研究了知识模型与知识库相关理论与技术的基础上,建立了一种基于本体的本体化知识模型,从领域知识、推理/方法知识和任务知识三个角度对知识模型进行了阐述。
根据建立的知识模型,提出了一种知识库的结构,并对二者之间的映射关系进行了讨论。
但是,目前所做的工作还不彻底,有许多问题值得进一步研究。
进一步的研究将对知识库系统的完备性进行验证,并结合具体的应用环境,如故障诊断、工艺规划设计等方面实现面向具体应用的知识库系统。
【参考文献】(略)
文章选自《计算机工程与应用》(2006.42卷)