[文学研究]数据库系统与技术7基于知识的数据库技术.ppt_第1页
[文学研究]数据库系统与技术7基于知识的数据库技术.ppt_第2页
[文学研究]数据库系统与技术7基于知识的数据库技术.ppt_第3页
[文学研究]数据库系统与技术7基于知识的数据库技术.ppt_第4页
[文学研究]数据库系统与技术7基于知识的数据库技术.ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,数据库系统与技术(7) -基于知识的数据库技术,汤 庸 博士 ,计算机科学系 协同软件研究开发中心,2/26,知识的概念 知识表达与推理 知识库系统 基于知识的数据库技术 主动数据库技术 决策支持系统 数据挖掘技术,知识库技术,3/26,1数据、信息与知识 数据是对事实的一种表达形式,包括数字、字符和图形。数据可以通过人工或自动化装置进行处理。 信息是对人有用的、能够影响人们行为的数据。信息通过对数据加工处理而产生。 知识是人类对客观规律的认识,是系统的有条理的信息。一般地,知识是数据经过一系列加工,如归纳、综合、比较、分类、联想等得到的上层信息。,1. 知识的概念,4/26,例如,摄氏39度是一个数据,如果用来表示一个人体温,则成为一种信息;对于医生或具有保健常识的人来说,如果一个人的体温达到摄氏39度,则其正在发烧,需要及时治疗,这就称为一种知识。,1. 知识的概念,5/26,2. 知识的要素 概念给出知识的最基本内容,是知识的最底层基础,通常以名词形式出现,例如花,红色,太阳,风,雨等。 事实是知识所表示的有关问题涉及到的事物、环境的常识性知识,如事物的分类、属性、事物之间的关系、科学事实和客观事实等。事实建立了概念之间的联系。事实是静态地为人们所共享、最低层次的0层的知识,通常以“是”的形式出现。 规则由事实组成,建立了事实间的联系。规则是有关问题中与事物的行动、动作相联系的因果关系知识,这种知识是动态的,通常以“如果则”的形式出现。例如启发式规则:如果下雨,则出门带伞。,1. 知识的概念 (2),6/26,3知识的类型 过程型知识 过程型知识针对特定问题,用一系列过程来表达具体的处理步骤,优点是执行效率高,但它也有不少缺点: 不易表示大量知识,且表示的知识难于理解和修改。 只适合表达完全正确的知识,稍有含糊的知识就难于用程序表达。 只适合于处理完整、准确的数据。 过程型知识表示要求待处理的问题具有成熟的解法和完整、准确的数据,同时这也大大地限制了它的适用范围。 描述型知识 事实知识描述有关对象、事件以及行为等特征。例如“鸟会飞”、“雪是白色的”等。 判断型知识是指对事实的判断和推断的过程,基于主观理解和感情色彩对客观事件的解释和推理过程,例如“他看起来很开心”。,1. 知识的概念 (3),7/26,元知识 组织知识的元知识。这种元知识用来刻画知识的内容和一般特征,描述知识的分类、综合信息等。 利用知识求解问题方向的元知识。这类元知识对领域知识的运用起到指导作用。例如,在问题求解中所用到的推理方法,为解决一个特殊任务而完成活动的计划、组织和选择方面的知识。 从知识源获取知识的元知识。这类知识源包括书本、大脑和其他知识系统。,1. 知识的概念 (4),8/26,1谓词逻辑方法 在知识库中目前大都采用“概念-事实-规则”三级层次的知识构造体系。这种体系的知识表示方法也很多,在人工智能和知识工程学科中知识表示方法已经成为一个专门领域。由于谓词逻辑本身很好的一些基本特点,当前的知识库系统中一般采用谓词逻辑表示方法。,知识表达与推理,9/26,2产生式方法 产生式知识表达方法也称为产生式规则知识表示方法,该方法可以方便地描述事实、规则并进行不确定性推理,具有和图灵机一样的表达能力。 产生式表示的特点:产生式表示格式固定,形式单一,规则(知识单位)间相互较为独立,没有直接关系使知识库的建立较为容易,处理较为简单的问题是可取的。另外推理方式 单纯,也没有复杂计算。特别是知识库与推理机是分离的,这种结构给知识的修改带来方便,无须修改程序,对系统的推理路径也容易做出解释。所以,产生式知识表示方法常作为构造专家系统知识表示方法的第一选择。,知识表达与推理,10/26,知识表达与推理,产生式系统结构,11/26,3语义网络表示法 逻辑表示法和产生式表示法常用于表示有关论域中各个不同状态间的关系,然而用于表示一个事物同其各个部分间的分类知识就不方便了。槽(slot)与填槽表示方法便于表示这种分类知识。语义网络和框架表示方法就属于其中的两种。,知识表达与推理,12/26,4框架表示法 1975年Minsky的论文“A framework for representing knowledge”中提出了框架理论。 其基本观点是人脑已存储有大量典型情景,当人面临新的情景时,就从记忆中选择一个以框架形式存放的知识空框,其具体内容依新的情景而改变,对这空框的细节加工修改和补充,形成对新情景的认识又重新记忆于人脑中。框架理论将框架视作知识单位,将一组有关的框架连接起来便形成框架系统。系统中不同框架可以有共同结点,系统的行为由系统内框架的变化来表现。推理过程是由框架间的协调来完成的。 框架表示法是一种适应性强、概括性高、结构化良好、推理方式灵活又能把陈述性知识与过程性知识相结合的知识表示方法。,知识表达与推理,13/26,1Prolog Prolog是一种基于一阶谓词的逻辑程序设计语言,它是由R.Kowalskv和A.Colmerauer首先提出的,它在AI和知识库的实现技术中具有重要作用。Prolog语言作为数据库系统中演绎推理公理系统的语言,具有很强的逻辑描述能力和推理能力。它使数据库系统和知识库系统两者具有共同的坚实的数学基础。实际上,利用Prolog的演绎推理及处理数据库中的检索等过程就是证明定理的过程。因此,在逻辑上Prolog对应于数学的证明论。,知识库语言,14/26,2Datalog Datalog语言是Prolog语言的一种特殊形式,由于prolog语言是一种适应面较为广泛的通用语言,它在数据库、知识库领域中虽然也能适应,但是也存在一定的不足之处,这主要是数据库及知识库领域中具有一定的特殊性。 知识数量有限:在知识库中,知识个数是有限的; 操作受限:在知识库中,一般只有知识操作而很少有计算操作。 因此在实际上需要对prolog进行一定的限制,使其在知识库领域中发挥更大作用,而Datalog即是Prolog的一种适应于知识库的改进形式语言,是一种受限的Prolog语言,适用于知识库。,知识库语言,15/26,3LISP LISP(LISt Processing),由约翰.麦卡锡在1960年创造的一种基于演算的函数式编程语言。约翰.麦卡锡1960年发表了一篇非凡的论文,这篇论文展示了在只给定几个简单的操作符和一个表示函数的记号的基础上, 如何构造出一个完整的编程语言。麦卡锡称这种语言为Lisp, 意为List Processing, 因为其主要思想之一是用一种简单的数据结构表(list)来代表代码和数据。经过几十年的发展,LISP有很多种版本,各个实现中的语言不完全一样。1980年代Guy L. Steele编写了Common Lisp试图进行标准化,这个标准被大多数解释器和编译器所接受。在Unix/Linux系统中,还有一种Emacs Lisp非常流行,并建立了自己的标准。由于LISP的符号处理能力非常强,所以也被认为是一种人工智能程序设计语言,经常被用于知识表达和处理系统的开发。,知识库语言,16/26,1知识库 从知识存储的角度来看,知识库可以简单看为是知识的集合。当然,这些知识包括概念、事实与规则。由于概念一般均包含在事实内,实际上知识库中主要包含事实与规则两个部分,而仅由事实组成的知识库只能认为是广义的知识库。 知识库中的事实与数据库中的元组具有相同的含义,它是由若干确定的概念(常值)组成。知识库中的规则具有一定的通用性,比如以下规则:如x和y是兄弟,y和z是兄弟,则x和z是兄弟。 从知识使用的角度来看,知识库是由知识和知识处理机构组成。知识库在形式上是一个知识域,该知识域中除了事实、概念和规则等知识基本要素外,还包含有推理、归纳、演绎等知识处理方法,以及逻辑查询语言、语义查询优化、人机交互界面等。 一般而言,从知识存储角度出发的知识库概念比较常用,也比较符合知识库使用的实际情况。,知识库与知识库系统,17/26,知识库管理系统应当具有以下功能: 支持传统数据库管理系统的一切功能 具有一种对知识进行操纵和处理的描述性语言 这种观点是Ulman在其名著“Principle of database and knowledge system”中提出的。他将KDMS看作是DBMS的扩充,即在功能上KBMS应当包含DBMS,并且在此基础上用一种描述性语言例如逻辑语言来操纵与处理知识数据库中的知识(包括事实与规则)。,知识库与知识库系统(Cont),18/26,知识库与知识库系统(Cont),知识库系统组成,19/26,知识库与知识库系统(Cont),知识库系统,20/26,数据库与知识库,数据库与知识库是关系非常密切的两个概念,正如数据与知识的关系一样,知识库可以看作是数据库的一种特例。本节从数据库与知识库、数据库系统与知识库系统、数据库管理系统与知识库管理系统,以及数据库应用开发与知识库应用开发方面简要的比较数据库与知识库的各自侧重点。,21/26,基于知识的数据库技术,主动数据库 数据挖掘 决策支持系统 ,,22/26,面向外部应用:支持外部应用,为外部应用提供主动服务的方面包括情形监控、报警、支持实时处理、支持合作与协同工作、支持推理、数据交换与配置管理策略的施加等。 面向数据库本身:主动数据库设施还可以用来实现或扩展DBMS本身的一些功能,包括:完整性控制、安全性控制、导出数据处理、面向对象数据模型中继承机制的定义与应用和性能测度。,1.主动数据库的应用需求,23/26,实际应用经常遇到的主动性需求: l MIS中的预警功能 l 系统的实时监控功能 l 例外或错误情况的主动处理和自动恢复功能 l 系统瞬时状态的输出或关键点状态的输出 l 协同工作或协同解决问题 l 灵活而方便的实时处理能力 l 方便而灵活的人机交互接口 l 自适应和学习功能 l 演绎推理功能 l 更强的系统交互性 l 原有数据库功能的加强和集成也需要主动性的帮助,1.主动数据库的应用需求(2),24/26,传统的数据库管理系统只能根据用户的命令被动地完成相应的动作,被动地为用户服务,唯一称得上主动完成的一类工作是对各种约束条件的检查,例如,数据完整性,一致性,安全性等。 主动数据库的一个突出的思想是让数据库系统具有各种主动进行服务的功能,并以种统一而方便的机制来实现各种主动性需求,1.主动数据库的应用需求(3),25/26,功能组成: ADBSDBS+EB+EM l DBS(Database System):等同于一般的传统数据库系统,主要用来存储数据和对数据进行维护、管理与运用; l EB(Event Base):也是一个数据库,用来存储规则和对规则进行维护、管理与应用,是由事件驱动的一组知识组成的集合(规则集合),称为“事件库/规则库”,其中每一项知识表示在相应的事件发生时,如何来主动地执行其中包含的由用户预先设定的动作; l EM(Event Monitor):随时监视EB中的事件是否已经发生的监视模块,一旦监视到某事件已经发生时就主动地触发系统按照EB中指明的相应知识执行其中预先设定的动作。,2 主动数据库组成与结构,26/26,2 主动数据库组成与结构(2),27/26,主动(ECA)规则 事件 条件 动作 事件驱动的“事件条件动作”规则的语义是:“一旦指定的事件发生,计算机就主动触发执行其后的条件判断规则。即如果条件为真,则执行其后的动作。,3.1 ECA规则的构成,28/26,事件是在数据库系统在运行过程当中某特定时刻发生的,对系统有特定意义的事情,包括基本事件和复合事件,复合事件事是有基本事件经过各种事件运算构成的,复合事件是一种表达复杂事件的手段,使用户可以根据实际需要定义复杂事件,方便了规则的设计、维护与传送。 条件是关于当前或某个特定事件的数据库状态的一种假定,用某种逻辑(例如模糊逻辑)中的任意的一个合法的逻辑公式来表示一个条件,对于条件,可以依据逻辑运算将条件定义成简单的条件,也可以构造出很复杂的条件。 动作时数据库可以执行的一组操作序列,这些序列中可以有系统预先定义的一些标准动作,也可以由用户定义复杂的动作,或是用某种程序设计语言表现的一个过程,而这些单个地动作可以组合成动作序列,共同完成更加复杂的操作。,3.1 ECA规则的构成(2),29/26,RULE(规则名)(参数列表)ON(事件列表) IF(条件1)THEN WHERE EXCEPTION IF(条件n)THEN WHERE EXCEPTION END RULE,3.2 ECA规则描述,30/26,规则名用来在系统中唯一标识该规则,在进行规则的匹配,管理是用来指定规则 参数列表,参数列表是可选的,在检查该规则时,这些参数将带入系统的实时值。 事件列表描述的是该规则要处理的事件。 条件表达式是一种合法的逻辑公式,如果条件表达式的值为真,则其后描述的动作序列将被执行。 动作序列是当相应的事件发生并且条件满足时执行的一系列预定的动作,在动作当中,我们可以进一步引发另一个事件。 约束指这条规则执行时必须遵循的约束条件,包括对执行时间的约束、动作开始前的前置条件以及在动作完成后结果应满足的后置条件等等,约束时可选的,当不指明WHERE子句时,表示没有约束。 例外处理动作指出在规则的执行过程当中,当出现异常或约束未被满足时所应作的一系列预定的动作,异常处理动作是可选的,当不指明EXCEPTION子句时,表示没有异常处理,3.2 ECA规则描述(2),31/26,事件定义:事件是在数据库系统运行中的某特定时刻对系统有某种意义的“发生”,包括两方面的含义: (1)事件标志着系统行为,数据库系统的行为可以是数据库操作、事务管理操作、时间行为或系统与外部环境的交互等。事件又分为基本事件和复合事件,各种基本事件经过各种事件运算构成了复合事件。复合事件的引入,减少了类似规则关于不同基本事件的重复定义,使一条规则能对多种复杂的触发事件进行监控,便于规则的设计、维护与传送。 (2)事件还标志着系统行为发生的时间属性,由于系统行为往往发生在一个时间段,或是一个时间点,事件可以用一个时间参照点来指明。我们可以选择的系统行为开始的瞬间,也可以是系统行为结束的瞬间作为事件的时间参照点,还可为周期事件或区间事件,通常,我们对于数据库中的每种数据操作可以定义以下五个事件:Before。After、At、Every、Within。具体应用中参照点的选择必须根据我们实际应用的要求,考虑事件应用的语义。 事件都具有“原子性”,在某一时刻,或者完全发生,或者根本不发生,没有第三种状态。,3.3 ECA事件,32/26,原子事件是规则系统预先定义的,不可分割的最小事件,只有有限种,事件按发生的持续时间可分为瞬时事件与区间事件。每个事件都有一个事件名标识,并有开始(发生)时间B(e)、终止(发生)时间E(e)和发生期D(e)等属性,其中e是一个事件名。 复合事件:在实际应用中,单纯用原子事件事不能将环境描述出来的,不能充分地监视复杂的情形,这就限制了系统的应用范围。许多数据库系统都提供了更高层次的事件规范机制,提供了一个事件操作符集合。事件操作符允许将一个复杂事件Ec描述为任意称之为Ep的基本事件的原子事件或复合事件的组合,即将若干成分事件(原子事件或复合事件)用系统规定的事件操作符联结起来,作为单个的事件处理复合事件的发生也有原子性。并且同样用事件修饰符界定具体发生的时刻。导致某复合事件Ec发生的原子事件Ep称为其结束事件:“before(after)Ec”的发生时刻即为“before(after)Ep”的发生时刻,3.3 ECA事件(2),33/26,当一个事件被激发后,主动系统就能确定要触发的规则。根据ECA规则定义,而要真正的触发一个规则,还必须进行条件的计算和判断,如果条件满足,才执行响应的动作。 条件通常认为是关于当前或某个特定时间的数据库状态的一种假定,在评价条件数据库状态的变迁、趋势及所经历的数据都是要考虑的因素。条件一般用逻辑公式表示。条件规定执行行动时数据库相关部分处于何种状态,即它告知必须评价什么,规则触发后必须接着竞选条件的评价。规则条件部分的复杂性对规则的应用来说是关键性的因素,这不仅涉及它的说明、评价与监视,还直接关系到其数据库模型的规范说明。,3.4 ECA规则条件,34/26,事件触发,然后经过条件的评价,如果条件满足,规则的动作部分就要执行。数据库采取的一组操作序列就是规则中的动作,这些动作可以是系统预定义的一些标准动作,也可以是用户定义的一个动作,包括数据修改、数据检索操作、类似于提交或终止的事务操作、调用的任意过程/方法等。,3.5 ECA规则动作,35/26,监视器被激活和执行的模式有如下的分类: 按事件监视器监测到某事件后激活执行相应动作的时间分类 按事件监视器可能被激活执行的位置或时间分类 按事件监视器的物理实现模式分类 按事件监视器内部的执行模式分类,4 事件监视器,36/26,一个有效的事件监视器对整个主动数据库的性能起着关键作用,一个设计良好的事件监视器既能有效地检测出各种事件的发生,又不能因为它的加入运行而使原应用程序的执行速度太大地变慢。当前,软硬件结合的实现方式比较广泛,能够比较好的解决这两方面的问题,特别,当事件是一些中断性质的事件时,必须有相应硬件的支持。下面提供几种可供选择的实现机制。 1) 在单处理器系统中,用操作系统控制下的一个优先级校高的独立进程来实现事件监视器,这样的进程我们通常称为服务经常或精灵进程,高的优先级能保证它总能经常地被运行,起到主动监视各种事件发生的作用。另外,可以将事件库被分成块时,对较小的块进行规则的匹配,可以进一步提高监视器的运行效率。 2) 在多处理器系统中,由于事件监视器需要频繁执行,消耗大量的CPU资源,因此,适合用一个独立的CPU来实现事件监视器,这样可以有效的将主动数据库的负载进行分配,数据库的传统功能和事件处理功能分开,可以实现最大的处理并行度。 3) 定点检查的方式,在系统执行过程中的某些指定位置,这些位置可以使系统默认指定的,也可以根据用户定义进行指定,当系统运行到指定位置的时候,暂停系统的执行,监测事件是否发生。如果事件发生则进行相应的处理,否则系统继续运行。,4 事件监视器(2),37/26,决策支持系统,决策支持系统(

温馨提示

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

评论

0/150

提交评论