基于神经网络专家系统的推理研究

2014-01-21 00:51管艳娜李孝安
电子设计工程 2014年20期
关键词:推理机样例知识库

管艳娜,李孝安

(西北工业大学 计算机学院,陕西 西安 710129)

近年来,随着信息技术的飞速发展,人工智能技术得到了广泛的应用。专家系统[1]作为人工智能的一个重要分支,自20世纪60年代初期产生以来,就在医疗诊断、图像处理、地质勘探、航空航天等领域得到了迅速的发展。随着各类专家系统的研制成功[2],例如斯坦福大学研制成功的DENRAL专家系统、麻省理工学院研制的MACSYMA专家系统、卡内基-梅隆大学开发的HEARSAY专家系统、肖特立夫等人的MYCIN系统、DEC公司与卡内基-梅隆大学合作开发的XCON-R1专家系统等,专家系统越来越受到学术界以及工程领域的广泛关注。

但是,专家系统自身存在一定的缺陷,如知识获取困难、推理效率低以及存在冲突消解等,这些问题极大限制了专家系统的进一步发展。近十年来,神经网络[3]与专家系统相结合的混合型专家系统的提出,可以克服专家系统的局限性,同时也解决了神经网络的“黑箱”缺陷,实现了专家系统在知识库构建、知识推理技术上的发展,为特殊任务环境下的自主决策提供了新的发展方向。因此,神经专家系统成为当今人工智能技术中具有广阔发展前景的研究领域。

本文在对基于神经网络专家系统不同模块关键技术进行研究的基础上,将基于神经网络的推理和与基于规则的推理结合,设计了一种基于神经网络专家系统的混合推理机制,该推理机制能够克服传统专家系统的不足,大大提高推理的准确性和效率,为构建新型的专家系统提供了新的思路。

1 神经网络专家系统模型

神经网络专家系统的模型可采用多种形式,神经网络的输出是专家系统系统的输入,专家系统用来为神经网络收集数据或分析结果,神经网络作为被调用的函数嵌入专家系统中等。根据实际应用情况的不同,可以采用不同的神经网络专家系统结构,本文提出的一种基于神经网络的混合推理机制是基于如图1所示的神经网络专家系统模型[4],该模型包括知识库、推理机、知识处理机制、用户界面4大部分[4]。

1)知识库是解决问题相关的领域知识,包括神经知识库和规则知识库两个部分。神经知识库中存储的知识是通过神经网络算子自动获取的,根据用户所要解决的问题及提供的数据类型选择合适的神经网络结构,对网络进行训练,然后把网络结构,权值矩阵等作为隐式知识存储在神经知识库;规则知识库中的知识来自两个不同的渠道,第一是通过知识工程师从领域专家直接获取经验知识,第二是从训练得到的专家级神经网络中抽取出知识,目前比较典型的基于神经网络的规则抽取算法有Setiono提出的RX[6]、saito和Nakano提出的subset算法[7]、Towell和 Shavlik 提出的 MofN[8]等。

图1 神经网络专家系统模型Fig.1 Model of ANN expert systems

2)推理机制是神经专家系统的核心部分,根据当前给定的条件以及知识库中存储的知识,经过若干次步骤的推导,通过神经推理引擎的近似推理找到问题解决方案。推理机是模仿人类专家的思维方式,按照推理方向可以分为正向推理、反向推理和正反向混合推理,按照专家系统知识库中知识类型可以分为基于规则的推理、基于模型的推理、基于案例的推理等。

3)知识处理机制包含两方面的作用:第一,将用户提供的数据编码为神经专家系统可以理解和处理的数据,并将神经专家系统推理得出的结论解码为用户可以理解的形式;第二提供再学习功能,如果领域专家认为得到的结论不正确,则领域专家提供相应的反馈信息,专家系统进行再学习,以提高其推理水平。

4)用户界面是实现用户和专家系统之间交流的途径,用来给专家系统提供训练使用的数据、推理的事实以及接收专家系统推理得出的结论。

2 两类专家系统的推理机制

2.1 基于规则的推理

在基于规则的专家系统中,将领域知识表示成IF…THEN…形式的规则,多条规则储存起来形成知识库。系统使用这些规则和动态数据库中信息来求解问题。推理引擎把每条规则的条件部分和数据库中给定的数据进行比较。如果规则的IF部分和数据库中的数据相匹配,则激发规则并执行其THEN部分,在基于规则的专家系统中,需要精确的匹配,因此,推理机制不能够处理噪声数据和不完整的数据。

2.2 基于神经网络的推理

神经专家系统用训练过的的神经网络取代知识库,基于神经网络的推理过程实际上就是一个数学运算的过程,具体步骤为:首先,通过用户和知识处理机制获取神经网络输入信息;从神经知识库中得到具体的神经网络结构以及权值矩阵进行数学运算,直到网络输出一个稳定的结果。神经网络能够归纳,新的输入数据不一定要和网络训练中使用的数据精确匹配,因此,神经专家系统能够处理噪声数据和不完整数据。

3 一种基于神经网络的混合推理机制

神经网络专家系统模型的推理机制包括正向推理和反向验证解释两个部分。其中正向推理是基于神经网络的推理和基于规则的混合推理,两种推理并行进行,提高推理的效率和准确性;反向验证则是基于规则的反向验证过程,用于对神经网络做出的推理结果进行解释。具体推理流程如下:

1)初始时,神经网络专家系统应该具有一定的领域知识和代表该问题的专家级的神经网络结构。用户通过人机交互界面将问题信息输入神经网络专家系统,知识处理机制将原始信息转化为推理机可以处理的形式;

2)推理机接受用户的数据,开始使用规则推理机和神经网络推理机进行并行推理,直到推理结束得到结论,将结论反馈给用户进行判断;

3)如果能够推出正确的结论,且结论可由领域知识库直接推出,则直接把结论以及解释机制提供的解释返回给用户;如果结论是由神经网络推出,说明领域知识库不完备,则可以通过规则抽取技术完善规则库;

4)如果推理结论不正确或者无法推出结论,领域专家可以提供反馈信息,指导专家系统进行再学习,以充实知识库中的知识,然后在进行推理。

这种基于神经网络的混合推理机制存在一定的优势:两类推理机并行工作,优先以推理速度较快的推理机的结果进行判断,推理效率提高;当领域专家对输出的结果不满意时,可以给出教师信息对神经网络进行重新训练,替换神经知识库中已不再适用的知识,使得知识库可以动态的改变。

4 神经网络专家系统推理实验及分析

为了验证神经专家系统的推理机制的可行性和有效性,本文对基于神经网络专家系统的推理与基于规则的推理进行了仿真实验。鉴于不同学科问题的规模和复杂度不同,本文选取UCI机器学习仓库Breast-Cancer和Car Evaluation两组不同的数据集,在weka平台下进了多次实验对比。其中基于规则推理选用算法JRIP和PART。

4.1 基于Breast-Cancer数据集的对比实验

Breast-Cancer数据集包含286组数据。实验从原始样例中随机抽取第 21-30,第 71-80,第 121-130,第 171-180四段共40个样例作为最终的测试样例,剩余的246个样例则作为训练样例。实验中在Weka环境下我们选择functions中BP神经网络、rules中的JRIP算法、PART算法以及基于JRIP与神经网络的混合推理算法进行验证,参数都选用Weka下的默认参数。

表1为4种不同算法对Breast-Cancer数据集在推理时间及正确率方面的比较。

表1 Breast-Cancer数据集不同算法推理结果比较Tab.1 Comparison of different algorithm reasoning results of Breast-Cancer data set

4.2 基于Car Evaluation数据集的对比实验

Car Evaluation数据集表示的是一个分类问题,数据集包含1 728组数据。实验从原始样例中随机抽取第301-400,第801-900,第1 301-1 500,三段共300个样例作为最终的测试样例,剩余的1 428个样例则作为训练样例。和4.1中实验算法的选择一样,表2为4种不同算法对car Evaluation数据集在推理时间及正确率方面的比较。

从实验结果可以看出,基于神经网络模型的推理与基于规则的推理算法相比,无论是对训练集还是测试集都有较高的正确率,尤其是对于测试样例,基于神经网络的推理在正确率方面有明显的优势。由于训练样例及测试样例中一般存在噪音数据,而神经网络具有较好的泛化能力和容噪性。在推理时间方面,神经网络的推理比基于规则的推理算法的明显要慢,尽管神经网络可以并行计算,但是从输入到输出每个节点需要大量的计算开销,需要的推理时间较长。而基于JRIP与神经网络的混合推理算法充分利用了神经网络推理准确率高和规则推理响应时间快的优点,实验数据显示,该混合推理算法的推理准确率比基于规则的算法和基于神经网络的算法都高,而推理时间明显比基于神经网络的推理低很多。因此,在那种对准确性以及推理时间要求都比较严格的系统中,构建基于神经网络与专家系统的混合推理机制就显得尤为重要。

表2 Car Evaluation数据集不同算法推理结果比较Tab.2 Comparison of different algorithm reasoning results of Car Evaluation data set

5 结论

针对神经网络与传统专家系统存在的问题,本文在介绍神经网络专家系统模型的基础上提出了一种基于神经网络的混合推理机制,该机制结合神经网络和规则推理的优点,充分利用规则的快速匹配和可解释性,以及神经网络的学习和近似推理能力,使得神经网络专家系统具备良好的学习能力、泛化能力和信息处理能力。通过对基于神经网络推理算法、规则推理算法以及神经网络与规则的混合推理算法的实验结果的比较,表明混合推理机制能有效提升专家系统的效率,提高推理的准确性和泛化能力。因此,神经网络与专家系统的结合在人工智能领域具有广阔的发展前景,需要我们进一步的深入研究。

[1]蔡自兴,约翰.德尔金,龚涛.高级专家系统:原理、设计及应用[M].北京:科学出版社,2005.

[2]郑伟,安佰强,王小雨.专家系统研究现状及其发展趋势[J].电子世界,2013(4):87-88.ZHENG wei,AN bai-qiang,WANG xiao-yu.Expert systems research status and development trend[J].Electronic World,2013(4):87-88.

[3]Simon Haykin.神经网络原理[M].北京:机械工业出版社,2004.

[4]Michael Negnevitsky.人工智能 (智能系统指南)[M].北京:机械工业出版社,2010.

[5]梅杰.基于人工神经网络的旋转机械故障诊断专家系统[D].武汉:武汉理工大学,2011.

[6]Setiono R.Extracting Rules from Neural Networks by pruning and Hidden-Unit Splitting[J].Neural Computation,1997,9(1):205-225.

[7]Saito K,Nakanno R.”Medical diagnostic expert system based on PDP model[C]//IEEE Proceedings of IEEE International Conference on Neural Network,1988,1:55-262.

[8]Towell G G,Shablik J W.Extracting refined rules from knowledge-based neural network[J].Machine Learning 1993,13(1):71-101.

猜你喜欢
推理机样例知识库
样例呈现方式对概念训练类别表征的影响
“样例教学”在小学高年级数学中的应用
基于TRIZ与知识库的创新模型构建及在注塑机设计中的应用
面向对象的几何定理推导系统的设计与实现
基于Naive Bayesian算法改进的智能诊病系统研究
高速公路信息系统维护知识库的建立和应用
基于Drupal发布学者知识库关联数据的研究
继电保护整定计算模块的设计
基于样例学习研究的几点展望
样例教学法回归课堂教学之新认识