基于rbf神经网络分类器的设计及其应用.docx
《基于rbf神经网络分类器的设计及其应用.docx》由会员分享,可在线阅读,更多相关《基于rbf神经网络分类器的设计及其应用.docx(38页珍藏版)》请在冰豆网上搜索。
基于rbf神经网络分类器的设计及其应用
存档编号
华北水利水电大学
NorthChinaInstituteofWaterConservancyandHydroelectricPower
毕业设计
题目
基于RBF神经网络分类器的
设计及其应用
学院电力学院
专业自动化
姓名
学号
指导教师
完成时间2017.05.18
教务处制
独立完成与诚信声明
本人郑重声明:
所提交的毕业设计是本人在指导教师的指导下,独立工作所取得的成果并撰写完成的,郑重确认没有剽窃、抄袭等违反学术道德、学术规范的侵权行为。
文中除已经标注引用的内容外,不包含其他人或集体已经发表或撰写过的研究成果。
对本文的研究做出重要贡献的个人和集体,均已在文中作了明确的说明并表示了谢意。
本人完全意识到本声明的法律后果由本人承担。
毕业设计作者签名:
指导导师签名:
签字日期:
签字日期:
毕业设计版权使用授权书
本人完全了解华北水利水电学院有关保管、使用毕业设计的规定。
特授权华北水利水电学院可以将毕业设计的全部或部分内容公开和编入有关数据库提
供检索,并采用影印、缩印或扫描等复制手段复制、保存、汇编以供查阅和借阅。
同意学校向国家有关部门或机构送交毕业设计原件或复印件和电子文档(涉密的成果在解密后应遵守此规定)。
毕业设计作者签名:
导师签名:
签字日期:
签字日期:
摘要I
AbstractIII
第1章绪论5
1.1国内外发展状况5
1.2课题研究的意义5
第2章分类器7
2.1分类的概述7
分类,即是对已知的物体,数据等进行“分门别类”。
分类是在数据挖掘、模式识别和机器学习里的一个十分重要的研究领域。
分类的概念就是,在原有的数据基础上通过对一个分类函数的学习来进行分类或者是建造出一个进行分类的模型(常常称为分类器)来进行分类。
对于一个数据库,如果它里面的数据类别是不知道的,那么就把它输入到分类器里,通过分类器里的学习,训练把它分类。
所以它可以用来对数据进行预测。
总而言之,分类器就是在数据的挖掘中对给定的样本来分类的所有方法的一个总称,这些方法包括逻辑回归算法、决策树算法或模型、贝叶斯算法和神经网络算法或模型等。
随着科技的不断进步和发展,关于分类的应用也越来越广泛。
7
2.1.1分类的实现过程8
2.1.2分类器评价标准9
2.1.3构造分类器的方法及特性9
2.2神经网络分类器11
2.2.1神经网络概述12
神经网络,即人工神经网络(ArtificialNeuralNetwork,ANN)是一种能够对输入的信息进行分析处理的系统,它能够产生的灵感来自于人类大脑的神经网络系统,并且对神经元等的基本单元进行具象化,简单化等最后模拟出来的。
对人工神经网络的研究用它被提出距今已经有大半个世纪的历史了。
虽然在1943年就开始了对神经网络的研究。
但之后的发展并不是一帆风顺的。
在经过了初级阶段和上世纪70年代的过渡期后在80年代迎来了高潮,并在80年代后期一直到现在都处在研究神经网络的热潮中。
目前,神经网络的应用越来越广泛,科研人员不仅把神经网络与控制系统相结合,更在此基础上与摸出控制相结合,虽说神经网络目前为止仍然算一门“年轻”的学科,但我们的生活中到处是对它的应用。
目前神经网络主要应用于[6]:
12
2.2.2神经网络的学习方法13
2.2.3神经网络分类器16
第3章RBF神经网络19
3.1RBF神经网络概述19
3.2RBF神经网络的学习算法22
3.3RBF神经网络的特点24
第4章基于RBF神经网络分类器的设计25
4.1数据集介绍25
4.2分类器设计25
4.3基于RBF神经网络分类器的仿真及分析26
4.3.1实验一27
4.3.2实验二28
第5章基于RBF神经网络的柴油机故障诊断32
5.1工业背景介绍32
5.2柴油机燃油系统32
5.3基于RBF神经网络分类器的实验仿真33
5.4基于BP神经网络分类器的实验仿真38
5.4.1BP神经网络简介38
5.4.2BP神经网络的算法39
5.4.3BP神经网络设计40
5.4.4故障仿真及分析41
由上图和表可得,在6个测试样本中,有2个不能被正确的诊断(用“*”表示),准确率为66.67%。
43
5.4.5BP网络的局限性43
5.5RBF网络与BP网络的比较44
第6章总结与展望47
6.1总结47
6.2前景展望48
参考文献49
致谢52
附录5:
程序81
基于RBF神经网络的分类器设计及其应用
摘要
随着科技和智能化的发展,人工神经网络因其独特的信息处理的能力在各个领域的应用越来越广泛,并且都取得了较好的效果。
神经网络不仅具有十分强大的非线性映射能力,而且具有自适应、自学习和容错性等。
径向基函数(RBF)是神经网络中的一种新颖有效的前馈式神经网络,它具有分类能力强、最佳逼近和全局最优的性能,同时训练方法快速易行等优点。
基于这些优点,我们可以根据RBF神经网络设计分类器以解决现实生活和工业生产中的一些实际分类问题。
本文主要介绍了基于径向基函数神经网络的分类器设计方法。
在知道怎样设计之前,首先要了解径向基函数神经网络和分类器,所以在前几章先介绍了它们的基本原理和结构以及神经网络分类器的设计方法。
其次对于设计的RBF分类器,用IRIS数据集在MATLAB环境中测试它的分类能力和性能及各参数的变化对RBF分类器性能的影响。
最后,把RBF分类器应用于工程实例中。
本文选取了对柴油机的故障诊断这项工程实例,把柴油机燃油系统典型故障数据作为RBF神经网络的训练样本,通过RBF分类器,对模拟故障进行诊断。
再建立BP神经网络分类器对同样的数据进行分类。
并且把两个网络分类器的分类结果进行对比。
最终实验的仿真结果显示,基于RBF神经网络的分类器对柴油机故障的诊断正确率要高于基于BP神经网络分类器的诊断正确率。
进一步的验证了径向基函数有较强的分类能力。
关键词:
径向基函数神经网络;分类器;故障诊断
中图分类号:
TP183;TM411
DesignandApplicationofClassifierBasedonRBFNeuralNetwork
Abstract
Withthedevelopmentofscienceandtechnologyandintelligence,artificialneuralnetworkbecauseofitsuniqueabilitytodealwithinformationinvariousfieldsmoreandmorewidely,andhaveachievedgoodresults.Neuralnetworknotonlyhasaverystrongnon-linearmappingcapabilities,butalsohasadaptive,self-learningandfaulttolerance.Radialbasisfunction(RBF)isanovelandeffectivefeedforwardneuralnetworkinneuralnetwork.Ithastheadvantagesofstrongclassificationability,bestapproximationandglobaloptimalperformance,andrapidtrainingmethod.Basedontheseadvantages,wecandesigntheclassifieraccordingtotheRBFneuralnetworktosolvesomepracticalclassificationproblemsinreallifeandindustrialproduction.
Thispapermainlyintroducesthedesignmethodofclassifierbasedonradialbasisfunctionneuralnetwork.Beforeweknowhowtodesign,wemustfirstunderstandtheradialbasisfunctionneuralnetworkandclassifier,sointhepreviouschaptersfirstintroducedtheirbasicprinciplesandstructureandneuralnetworkclassifierdesignmethod.Secondly,fortheRBFclassifier,theIRISdatasetisusedtotestitsclassificationabilityandperformanceandtheinfluenceoftheparametersontheRBFclassifierperformanceintheMATLABenvironment.Finally,theRBFclassifierisappliedtotheengineeringexample.Thispaperchoosesthedieselenginefaultdiagnosisprojectexample,ThetypicalfaultdataofdieselenginefuelsystemisusedastrainingsampleofRBFneuralnetwork,andthesimulationfaultisdiagnosedbyRBFclassifier.AndcomparedwiththeclassificationresultsofBPneuralnetworkbasedclassifier.ThesimulationresultsofthefinalexperimentshowthatthecorrectrateofdieselenginefaultdiagnosisbasedonRBFneuralnetworkishigherthanthatbasedonBPneuralnetworkclassifierfurtherverificationoftheradialbasisfunctionhasastrongclassificationability.
KeyWords:
RadialBasisFunctionNeuralNetwork;Classifier;FaultDiagnosis
第1章绪论
1.1国内外发展状况
自从1943年McCulloch和Pitts把神经元的数学模型提出来后,人工神经网络就逐渐的取得了相当大的发展,在各方面的应用也更加的广泛起来,逐渐成为了一门有着自己与众不同风格的能够对信息进行处理的学科[1]。
1988年,Broomhead和Lowe,将径向基函数引入神经网络设计,产生了径向基函数神经网络,即RBF神经网络。
这种网络具有分类能力强,训练速度快等优点,主要被用来进行分类,如故障诊断等。
国内对神经网络的起步叫国外来说是比较晚的,但在对神经网络的研究和应用上却丝毫不比国外逊色。
近年来,研究人员提出了一种最近邻聚类中心选取法和梯度下降训练法的新型混合学习算法[2],这用优化的算法速度快,准度率高,但对于某些参数,可能需要人工进行手动输入。
科研人员通过对RBF神经网络算法的研究改进,提高它的性能,并且把基于RBF的分类器用于工业案例,金融预测等各个方面,而且都取得了较好的效果。
在基于RBF神经网络的分类技术理论和实际应用中,虽然已经有了大量的研究与实践。
但目前仍然存在着以下几个问题:
(1)如果要进行分类的样本是不平衡的,那么它的分类效果就会比较差;
(2)如果样本集没有进行降噪等的预处理,可能会导致总体的误差变大。
1.2课题研究的意义
现代社会,正是处在科技,智能化迅速发展的时代,对神经网络的研究是十分必要而且是十分重要的,而RBF神经网络作为神经网络的一种,不仅使用起来比较简便方便,训练的速度快,而且它不存在局部极小值的问题,在函数逼近,分类问题和预测问题中的作用尤为显著,对RBF神经网络的研究不仅可以应用于理论数学等的学术研究中,对人们的生活工作也是有巨大影响的。
如,可以把RBF神经网络用于与工业中的故障诊断,地质的判断分析等方面、对潜在客户的预测、对癌症等病情的诊断、对特定样本的分类等各个方面。
随着人们不断对神经网络的研究,一些领域如,多媒体、医疗、金融、电力系统等日后可能会随着神经网络的发展取得巨大的进步。
所以说,对神经网络,对RBF神经网络分类器的研究就具有十分重要的意义。
第2章分类器
2.1分类的概述
分类,即是对已知的物体,数据等进行“分门别类”。
分类是在数据挖掘、模式识别和机器学习里的一个十分重要的研究领域。
分类的概念就是,在原有的数据基础上通过对一个分类函数的学习来进行分类或者是建造出一个进行分类的模型(常常称为分类器)来进行分类。
对于一个数据库,如果它里面的数据类别是不知道的,那么就把它输入到分类器里,通过分类器里的学习,训练把它分类。
所以它可以用来对数据进行预测。
总而言之,分类器就是在数据的挖掘中对给定的样本来分类的所有方法的一个总称,这些方法包括逻辑回归算法、决策树算法或模型、贝叶斯算法和神经网络算法或模型等。
随着科技的不断进步和发展,关于分类的应用也越来越广泛。
2.1.1分类的实现过程
分类的实现通常由三个阶段构成[3]:
(1)数据的预处理;
(2)构造分类器;(3)应用分类器。
(1)数据的预处理
在进行分类前,为了保证能较好的实现分类,必须要按照分类的要求对用来分类的数据集进行预处理,这个对数据集进行预处理的过程通常包括以下的几个步骤:
①对数据进行清理。
对数据进行去噪加权的处理,对数据集中有明显错误的数据进行删除并处理空缺值。
②对数据的相关性进行分析。
在需要进行分类的数据集中,可能存在与分类任务不相关的属性,而它们的存在可能会拖慢学习过程,更有甚者可能会导致分类结果的错误。
所以要对这些数据进行相关性分析来删除掉和原有数据无关或多余的属性。
③对数据进行变换。
对数据集中连续的数据进行离散化处理,对于定性的数据要进行定量化的处理。
④对数据的归一化处理。
对于一些数据集,可以对它们进行归一化处理,使它们落在[-1,1]或者是[0,1]区间内。
(2)构造分类器
分类器的构造过程分为两个阶段:
第一个是训练阶段,第二个是测试阶段。
所以在构建模型前,要把已经拥有的样本数据集随机或按照要求地分为训练集和测试集。
在第一个阶段即训练阶段,使用一定的规则或算法分析训练集中由属性或特征所描述组成的数据库内的元组,并由此来构建所需要的模型。
因为我们已经事先知道在训练数据集中每个样本所属的类别,所以这个学习过程可以称之为“有导师学习”的过程。
在第二个阶段即测试阶段,通过测试数据集对所设计的分类器的性能进行测试。
输入测试数据集会得到一个输出分类,把这个输出与已经预先知道的类别进行对比,如果分类的结果较好,那么就可以说分类器的设计是比较成功的。
(3)运用分类器
在进行完前两个步骤并测试完所设计的分类器的性能后,如果满足要求,则可以使用该分类器来进行分类。
如果不能,则调整分类器中的算法或规则中的参数,使其满足要求后再对其他的数据集进行分类。
2.1.2分类器评价标准
因为各个分类器被设计出来的作用目的各不相同,所以对分类器性能评价的标准也各不相同。
但仍可以通过下列几个标准对分类器做一个简单的评价[4]:
(1)分类的准确率。
分类器的作用就是分类,所以分类器准确率的高低是评价一个分类器最重要的标准之一,如果准确率越高,那么就说明分类效果越好,分类器的分类能力越强。
(2)算法的运行速度。
计算速度所用的时间包括学习过程和分类过程所用时间的总和,速度越快,说明分类器的性能越好。
(3)健壮性。
是指分类器对数据处理的能力,如去噪的能力,处理不稳定数据的能力和处理空缺数据的能力,对数据的处理能力越强,分类器的性能越好。
(4)可伸缩性。
是指针对不同规模的数据集构造模型的能力。
(5)算法的简洁性和易理解性。
若算法简单易懂,则给分类器的推广也会相对容易,使用也会广泛。
2.1.3构造分类器的方法及特性
有许多种方法可以用来构建分类器,目前应用比较广泛的有:
贝叶斯算法、k-近邻法、决策树、关联规则、支持向量机和神经网络等[5]。
(1)贝叶斯算法
贝叶斯(Bayes)算法是一种基于概率统计知识来进行分类的算法。
假定样本
是由d维实数特征组成的,即
,其中T是转置符号。
假定要研究的类别有c个,记做
,i=1,2,...,c。
其中,
是已知的,并且且每一类的先验概率也都是已知的。
另外,还假定
是已知的,
为条件密度,即是各类中样本的分布密度。
要做的就是,判断某个未知样本
是属于哪一类的。
用公式表达为
,其中
。
所表达的意思样本
的类别为概率大的哪一类。
概率可以由式(2-1)的贝叶斯公式计算
:
(2-1)
其中,
是先验概率,
是条件概率。
如果样本之间的属性是相互独立的,那么这种算法的分类效果就是比较理想的,若样本之间的属性不相互独立,那么计算量会大大增加,分类结果也会不太理想。
而且贝叶斯算法没那么适合小样本数据,它只有在样本数据足够多的时候分类效果才会比较理想。
(2)k-近邻算法
k-近邻(kNN,k-NearestNeighbors)算法可以表示为:
设有N个样本数据是已经知道的,并且也已经知道他们分别属于c个类别,表示为
,
考查新样本
在这些样本中的前k个近邻,设其中
个属于
类,则
类的判别函数就是:
,
(2-2)
决策规则就是若:
,则
(2-3)
由于k-近邻算法的分类方法是在实际案例的基础上进行的,并且如果需要进行分类的样本数据集较为复杂,则计算量就会大大增加,所以这种算法一般无法用于实时性较强例子中。
(3)决策树算法
在面对一些非数值型特征时,人们很多决策过程都是按照一定的树状结构进行的,而所谓的决策树方法则是利用一定的训练样本,从数据中“学习”决策规则,自动构成决策树。
决策树由根节点,子节点和叶节点组成,这些节点都代表了所用到的特征和规则。
每一个节点分别代表一个。
进入子节点的数据是通过根节点的被划分后的所有样本。
在子节点里的数据会被子节点里的特征和规则进一步划分决策,数据通过子节点后被划分为单独的一类进入叶节点。
此时叶节点里的数据就是被划分好的样本数据,不用再进行其他的决策分类等。
所以说,构建决策树的过程就是:
①选取特征;②确定决策规则。
(4)关联规则算法
关联规则算法(ClassificationBasedonAssociationrule,CBA)是以Apriori经典算法为代表的在关联规则发现方法的基础上来进行分类的一种算法,。
这种经典算法把它分为两步:
首先进行迭代,找出满足支持度的所有项集,然后在这些项集中找出质量较高的来当分类规则。
由于Apriori对计算机硬件要企业较高并且需要花费的时间也较多,所以现在人们广泛应用在这种算法基础上改良的分类算法。
(5)支持向量机算法
支持向量机(SupportVectorMachine,SVM)的基础是前苏联学者Vapnik和Chervonenkis在20世纪70年代提出的最优超平面思想。
它的主要思想就是通过最大间隔准则求取最优超平面使期望风险的置信范围尽可能小。
这种算法对数据的维数没有要求,并且对线性和非线性的分类问题都同样适用。
2.2神经网络分类器
2.2.1神经网络概述
神经网络,即人工神经网络(ArtificialNeuralNetwork,ANN)是一种能够对输入的信息进行分析处理的系统,它能够产生的灵感来自于人类大脑的神经网络系统,并且对神经元等的基本单元进行具象化,简单化等最后模拟出来的。
对人工神经网络的研究用它被提出距今已经有大半个世纪的历史了。
虽然在1943年就开始了对神经网络的研究。
但之后的发展并不是一帆风顺的。
在经过了初级阶段和上世纪70年代的过渡期后在80年代迎来了高潮,并在80年代后期一直到现在都处在研究神经网络的热潮中。
目前,神经网络的应用越来越广泛,科研人员不仅把神经网络与控制系统相结合,更在此基础上与摸出控制相结合,虽说神经网络目前为止仍然算一门“年轻”的学科,但我们的生活中到处是对它的应用。
目前神经网络主要应用于[6]:
(1)文字与字符识别,如快递单号,邮政编码的识别。
(2)图形识别,如搜索引擎的读图,交通标志、车牌号码的识别等。
(3)声音识别,如手机上的语音通话功能等。
(4)生物医学工程,如通过基因序列的来判断是否患有某种疾病等。
(5)工业应用,如故障诊断等。
(6)社会和管理科学,如对潜在客户的预测等。
(7)其它:
生态学、生物、地理学、地球科学等,如可根据地震勘探数据对地下储层性质的识别来预测地下是否存在地下水、石油、天然气等能源。
神经网络之所以那么广泛,主要因为它具有许多其他计算所不具有的特性:
(1)自学习,自组织和自适应性
因为人工神经网络来源于人类的神经网络,所以它能像人类的一样进行学习,并通过不断地学习积累对不同的情况进行判断,对未知的数据进行分析等。
(2)并行性
人工神经网络不同于传统计算机的串行计算,它不仅在结构上是并行的,而且网络中的各个单元也能够同时和并行的处理过程,所以人工神经网络的计算速度大大超过串行的计算机,并且神经网络网络在进行并行运算时,能同时完成数据的计算与存储,这是目前的计算机与人工智能所望尘莫及的。
(3)分布存储和容错性
信息在神经网络中不是只存储在某一个或者是某几个神经元中,而是根据其内容分布在整个网络里,而且每个神经元能够存储许多信息的一部分。
这种方式,即分布存储,能够使信息的储存和计算合二为一。
所以,在使用网络时,如果需要使用网络中的信息,便可以用“联想”的方法在整个网络中所有已经存在的信息里检索出与要使用的信息相似程度最高的信息并进行处理后再输出即可。
而这种联想的方式使得如果输入信息不完整或存在错误时,它仍然可以运用自己的容错能力恢复出原来正确完整的信息,然后使系统仍然能够继续并且没有错误的运行下去。
而神经网络的这种容错性和联想记忆功能,使得神经网络具有较强的鲁棒性,即面对不完整或错误信息的干扰时仍能保证系统的稳定与正确的输出。
但神经网络仍然具有一些缺陷,由于一些神经网络是“黑箱”结构,它内部的计算处理过程是看不到的,而且这些计算量通常是十分大的,所以这对神经网络的学习是不容易的。
神经网络对所处理数据的类型也有要求,它只能处理数值型数据,而对非数值型数据要进行量化处理后才能使用。
并且由于神经网络的学习算法不稳定,可能稍微改变