基于案例推理法研究综述.docx
《基于案例推理法研究综述.docx》由会员分享,可在线阅读,更多相关《基于案例推理法研究综述.docx(8页珍藏版)》请在冰豆网上搜索。
![基于案例推理法研究综述.docx](https://file1.bdocx.com/fileroot1/2023-5/20/abea7089-1e7f-46cf-b12e-9d095569ef93/abea7089-1e7f-46cf-b12e-9d095569ef931.gif)
基于案例推理法研究综述
基于案例推理法研究综述
燕山大学学报(哲学社会科学版)
侯玉梅,许成媛
摘要基于案例推理是人工智能领域一项重要的推理方法,是近年来发展迅速且应用广泛的一个推理模式。
论文主要论述了基于案例推理的原理、过程及其应用,详细描述了基于案例推理的过程以及相关的技术支持。
基于案例推理(CBR)的方法最早由耶鲁大学
教授在1982年提出,是人工智能领域一项重要的推理方法。
基于案例推理是人工智能中发展起来的一种重要的推理模式,属于域内类比推理。
源于美国的CBR随后在欧洲兴起,由于CBR能够很好地模拟人类的认知过程,它的应用范围也变得越来越广泛。
一、基于案例推理简介
基于案例推理简称案例推理,它就是在遇到新问题时,在案例库中检索过去解决的类似问题及其解决方案,并比较新、旧问题发生的背景和时间差异,对旧案例解决方案进行调整和修改以解决新的问题的一种推理模式。
与传统的基于规则推理和基于模型推理相比,CBR的数据形式属于“自由”类型,因此不同于强调数据域、数据长度
和数据类型的传统关系数据模型。
它无需显示的领域知识模型,避免了知识获取瓶颈,而且系统开放,易于维护,推理速度较快。
同时增量式的学习使案例库的覆盖度随系统的使用逐渐增大,判断效果愈来愈好。
可以有效解决传统推理方法中存在的许多问题。
CBR是一种重要的机器学习方法,它将目前面临的新问题称之为目标案例,将过去解决过的问题称之为源案例。
案例推理的过程可以看作是一个相似案例检索、案例重用、案例的修改和调整、案例学习四个步骤的循环(如图1所示)。
遇到新问题时,将新问题通过案例描述输入CBR系统;系统会检索出与目标案例最匹配的案例,若有与目标案例情况一致的源案例,则将其解决方案直接提交给用户;若没有则根据目标案例的情况对相似案例的解决方案进行调整和修改,若用户满意则将新的解决方案提交给用户,若不满意则需要继续对解决方案进行调整和修改;对用户满意的解决方案进行评价和学习,并将其保存到案例库中。
通常CBR系统包含了一个存有源案例及其相应解决方案的案例库,检索案例的属性值和检索机制,计算案例匹配程度的函数和案例修改和调整的方法四部分。
CBR系统解决问题的基础是一个存储了相关领域知识和具体解决问题的案例知识记录;案例检索是CBR的一个关键环节,合适的案例检索方法可以提高CBR系统检索案例的速度和精度;案例的调整和修改方法是CBR系统中较难的一项,具有较高的灵活性,需要根据相关的领域知识和用户的具体要求来进行修改和调整。
二、案例推理的关键技术研究
1.案例的知识表示
案例的知识表示是案例推理的基础,它实际上就是将过去解决问题的实例表示成案例的形式,存储在案例库当中,即使用一些特定的符号语言把实例编码成计算机可以接受的数据结构。
案例表示首先要解决案例应当包含什么信息。
案例一般由问题的描述、相应的解决方案以及方案实施效果三部分组成,其中问题的描述及相应的解决方案是案例描述时必须包含的信息,方案的实施效果则是根据案例库建立的需求而定的。
因此,一般的案例表示应至少包括问题的描述及相应的解决方案,一般案例描述为二元组的形式,即为(问题;解决方案);若要描述出解决方案的实施效果,则可表述为三元组的形式(问题;解决方案;实施效果)。
我们在进行案例描述时,首先应当分析搜集到的大量的源案例,抽取其主要的共同特征,根据这些共同特征来进行案例描述。
对案例进行知识表示时,必须要反映知识的结构,联系案例的上下文环境,常见的案例表示方法有案例特征属性、框架表示、基于XML的表示和面向对象法等。
2.案例的检索
相似案例的检索是CBR的一个关键环节,案例检索就是从案例库中搜索出与目标案例最为相似,对目标案例最有帮助的案例,案例检索的过程就是一个查找和匹配的过程。
在CBR中相似案例的检索要达到检索出的相似案例尽量的少和检索出的案例与目标案例尽可能的相似这两个目标。
(1)案例检索的方法
目前比较常用的案例检索算法有知识引导法、神经网络法、归纳索引法和最近相邻法。
知识引导法是根据已有的知识来决定案例的特征属性在案例检索时的重要程度,赋予其属性一定的权值,并根据权值大的属性特征对案例进行检索。
由于知识是在不断累积和增加的,因此这种检索方式具有一定的动态性,若应用于领域知识比较完善的CBR系统,该检索方法会相对稳定一些。
通常该检索方法会与其他检索方法结合使用。
神经网络法是根据案例的特征属性将案例库分为若干个子案例库,在每个子案例库中建立一个神经网络系统,对子案例库中的案例进行检索,运用这种方法进行检索时最主要的一个方面是要对数据进行训练,即对案例的问题描述和解决办法这些数据进行训练,得到输入与输出的关系。
运用神经网络法检索案例的过程为:
将目标案例的特征属性输入神经网络系统,由神经网络系统对子案例库进行检索,从而检索出与目标案例最为相似的案例。
神经网络检索法具有快速和自适应的特征。
归纳索引法是根据最能将案例与其他案例区分开来的特征属性对案例进行分类,并利用这些特征属性重新对案例划分组织结构。
归纳索引法又分为群索引方法和案例结构索引法,群索引法是根据案例的特征属性将案例进行聚类,分为若干个案例群,在案例检索中群索引法一般是与最近相邻法结合使用的,首先根据目标案例的特征属性,运用群索引法将案例库中的案例划分为两个案例群(与目标案例属性相似和不相似案例群),然后用最近相邻法对与目标案例属性相似的案例群中的案例进行相似度计算,找出与目标案例最为匹配的案例。
结构索引法是根据案例的内容及其特征属性,对其进行分类,将案例库组织成树型、链状、网状等结构,其案例检索的过程就是对案例库组织结构模型划分和搜索的过程。
最近相邻法是比较常用的一种案例检索方法,是一种基于距离的相似性的度量方法。
这种方法首先给出案例间距离的定义,将目标案例视为空间中的一个点,找出与这个点最近的点,即为相似案例,利用这种方法不仅要计算案例属性之间的距离,由距离得出相似度,同时还要给出属性的权值。
即将目标案例的特征和候选集中的案例描述的特征指标进行相似度计算,然后根据特征指标的权值计算出两个案例之间的相似度,从而求得与目标案例最为相似的案例。
其计算公式为
其中,
表示属性指标j的权重(
)
表示目标案例与候选集中的案例i关于属性指标j的相似度。
无论是案例相似度还是案例属性之间的相似度,它们的取值范围都是在0—1之间,取值越大代表相似度越大,当取值为1时代表两个案例或两个案例的某一属性完全匹配。
随着案例库中案例知识的增多,以上几种方法的检索效率就会降低,单独使用都会存在一定的不足,因此我们提出在案例检索时将归纳索引法与最近相邻法结合使用。
首先根据目标案例中权值比较大的特征属性对案例库中的案例进行分类,初步检索出与目标案例较为匹配的案例候选集;然后使用最近相邻法对案例候选集中的案例逐个进行匹配,选出与目标案例最为匹配的案例。
(2)特征权值的确定
在案例的检索中,都要基于案例属性特征的权值。
案例的特征对案例的匹配程度的计算和与其他案例区分时所起到的作用是不同的,特征权值反映了特征的相对重要程度,因此赋予特征合适的权值
是极其重要的。
确定特征权值的方法有专家打分法、AHP方法、改进的AHP法和ID3算法等。
专家打分法比较简单,应用方便,但实施主观性太强,一般不予采用,我们主要介绍一下改进AHP的法和AD3算法。
改进的AHP算法是在传统AHP算法思想的指导下的一种简化算法,它将判断矩阵的标度简化为三阶度,减少了决策者在判断指标重要程度时的模糊性。
此外,改进的AHP算法引入了最优传递矩阵,使之在一开始就具有一致性,而不需要进行一致性判断和调整判断矩阵,可直接求出权值。
具体步骤如下:
首先由专家打分给出特征属性的初始权值:
然后计算判断矩阵A的最优传递矩阵S,其元素
为
再把最优传递矩阵B转换为一致性矩阵C,
最后计算出一致性矩阵C的特征值,最大特征值所对应的特征向量即为指标的权重向量。
ID3算法是决策树中的一个重要算法,主要是将信息增益引入了决策树算法中,将其作为判别属性能力的一个重要指标,据此来构造决策树。
构造决策树的过程如下:
首先计算各属性的信息增益,然后将信息增益最大的属性置为树的根节点,根节点下又会根据根节点产生的可能值进行分枝,样例会排入分枝中,接着会重复上述的过程对分枝
进行划分,直到满足终止条件。
用ID3算法来确定属性权值最重要的步骤就是计算属性的信息增益,它是根据信息增益的值的大小来确定属性权值大小的,即信息增益值大的属性是案例中最有价值的属性,赋予其最高的权值。
在计算信息增益时我们首先要引入信息熵的概念,信息熵是数学上的一个抽象概念,我们可以把它理解成某种特定信息出现的概率,可以说是对一个系统有序化程度的度量。
即系统越是有序,信息熵就会越低;反过来,系统越是混乱,信息熵就越高。
信息熵的计算公式为:
上述公式即为特征属性a在案例结合v中的信息增益。
其中,a表示案例的某一特征属性,value(a)表示属性a取值的集合,v是a的某一属性值,vs表示的是v中a的取值为s的案例集合,
表示的是vs中所含的案例的个数。
3.案例的调整和修改
为了更好地解决新问题,根据新问题的情况对检索到的相似案例进行调整和修改的过程称为案例的调整和修改。
案例的调整和修改可以是对一个相似案例进行,也可以是对多个相似案例重组并修改。
案例的调整和修改是CBR的一个难题,许多领域的CBR系统一般都还停留在检索阶段,且案例调整是针对特定的领域知识来进行的,因此不存在普遍的适用方法。
根据案例调整和修改的执行者可以将其分为系统修改和用户修改两类。
系统修改是CBR系统根据提前预定义的某种案例修改策略来对相似案例的解决方案进行调整和修改,并将调整和修改后的方案交给用户。
用户修改是指用户根据问题的情况以及自身的要求对相似案例进行相应的调整和修改以得到新问题的解决方案。
一般情况下,这两种案例调整和修改的方法是结合使用的,首先对案例进行系统修改,将系统修改和调整后的案例提交给用户,用户再根据需求和新情况对案例进行修改和调整,最终产生适用于新问题的解决方案。
4.案例学习
案例学习是保证案例库质量的一个重要手段,案例学习不仅包括案例库的维护,同时还包含了案例评价。
案例评价是案例学习的一个前提条件,案例评价是对新案例的应用效果做一个评述,若新案例的解决方案应用效果极好,则要对新案例进行存储;若新案例的解决方案应用效果不佳,则不再将其添加到案例库,并考虑为其寻找新的解决方案。
案例的维护主要包括向案例库中添加新的案例即案例存储或删除一些不常用的案例,若案例库中不存在解决目标案例的方案,可以考虑将解决新问题的方案添加到案例库中,使得案例库更加完备,使得系统具有解决新问题的能力。
将一个新的解决方案加入到案例库中,案例库中可用的成功案例将会增加,从而提高了案例复用的可能性以及案例推理的准确性。
若案例库中的一些案例基本上没有与其他案例所匹配的时候,那么这些案例就没有必要存在了,可以考虑将这些案例删除,以便提高案例推理时案例检索的效率。
案例的维护不仅仅包括案例存储或删除一些不常用的案例,它还包括调整和修改一些不成功的案例或有关参数的过程,将这些调整或修改的信息存储起来以便为以后解决类似的问题提供解决方案。
案例的学习是对案例库不断更新与扩充的一种手段,同时也是确保所建案例库长期有效的一个重要条件。
三、CBR的应用
基于案例推理产生的时间虽然不是很长,但它的发展速度是非常快的。
由于案例推理的应用需要有丰富的案例经验支持,因此其主要应用于一些具有丰富的经验知识却缺乏很强的理论模型的领域,如故障诊断、计算机信息科学、企业管理、法律案件、医疗领域、突发事件应急管理等领域,除此之外,它在其他领域的应用也初见端倪。