收藏 分销(赏)

第5章-人工神经网络-matlab工具箱教程文件.ppt

上传人:人****来 文档编号:7811522 上传时间:2025-01-18 格式:PPT 页数:39 大小:356KB
下载 相关 举报
第5章-人工神经网络-matlab工具箱教程文件.ppt_第1页
第1页 / 共39页
第5章-人工神经网络-matlab工具箱教程文件.ppt_第2页
第2页 / 共39页
第5章-人工神经网络-matlab工具箱教程文件.ppt_第3页
第3页 / 共39页
第5章-人工神经网络-matlab工具箱教程文件.ppt_第4页
第4页 / 共39页
第5章-人工神经网络-matlab工具箱教程文件.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第5章-人工神经网络-matlab工具箱,0,引例,:,神经网络函数拟合,(,预测,),试构造合适的神经网络模型拟合如下数据点,并预测,x=10,的值,:,x,0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,y,0,0.43,0.69,0.74,0.61,0.36,0.08,-0.17,-0.34,-0.4,x,5,5.5,6,6.5,7,7.5,8,8.5,9,9.5,y,-0.35,-0.23,-0.08,0.06,0.16,0.21,0.2,0.15,0.07,-0.01,matlab,

2、代码,x=0:0.5:9.5;,y=,0,0.43,0.69,0.74,0.61,0.36,0.08,-0.17,-0.34,-0.4,-0.35,-0.23,-0.08,0.06,0.16,0.21,0.2,0.15,0.07,-0.01,;,net=newff(0,9.5,5,1);,net.trainParam.epochs=100;,net.trainParam.goad=0.000001;,net=train(net,x,y);,x1=0:0.1:10;,y1=sim(net,x1);,figure;plot(x,y,.);hold on;plot(x1,y1,r);,f,f,f,f

3、,f,f,x,y,w,11,w,12,w,13,w,14,w,15,w,21,w,22,w,23,w,24,w,25,b,1,b,2,b,3,b,4,b,5,b,网络结构,y=f,(,w,21,*f,(,w,11,*x+b,1,),+w,25,*f,(,w,15,*x+b,5,),+b,),w1=net.IW1;,w2=net.LW2;,b1=net.b1;,b2=net.b2;,a=tansig(w1*x0+b1);,y=tansig(w2*a+b2),Sigmoid,函数,1 matlab,神经网络工具箱,1.1,网络数据对象的建立,net=newff(xm,xM,h1,hk,f1,fk)

4、;,xm,xM,分别为列向量,(,行数为变量个数,),,分别存储每个变量的最小值和最大值。,h1,hk,表示网络各层的节点数,一共有,k,层,.,f1,fk,表示各层使用的传输函数,默认为,tansig,,即,Sigmoid,函数。还可使用函数,purelin,,即,f(x)=x,。,其它可看,matlab,帮助,:help newff,1.2,网络数据对象,net,的属性,net.IW,:来自输入层的加权矩阵。,BP,网络只用,net.IW1,表示各个输入变量对第,1,层各节点的加权矩阵。,net.LW,:来自中间层的加权向量。,BP,网络用,net.IW2,1,表示第,1,隐层个节点向下一

5、层个节点的加权矩阵;,net.IW3,2,表示第,2,隐层向下一层的加权矩阵,net.b,:各层的偏移。,Net.b1,表示第,1,隐层个节点的偏移,net.trainParam.epochs,:最大训练步数。不过当误差准则满足时,即使没达到此步数也停止训练。缺省为,100,。,net.trainParam.goad,:网络误差准则,当误差小于此准则时停止训练,缺省为,0,。,net.trainFcn,:训练算法。缺省为,trainlm,,即,Levenberg-Marquardt,算法。还可使用,traingdx,,即带动量的梯度下降算法;,traincgf,,即共轭梯度法。,其它可看,ma

6、tlab,帮助,:h,elp-contents-Neural Network Toobox-Network Object Reference;,help(net.trainFcn),help newff,Caution:trainlm is the default training function because it is very fast,but it requires a lot of memory to run.If you get an out-of-memory error when training try doing one of these:,Slow trainlm t

7、raining,but reduce memory requirements by setting net.trainParam.mem_reduc to 2 or more.(See help trainlm.),Use trainbfg,which is slower but more memory-efficient than trainlm.,Use trainrp,which is slower but more memory-efficient than trainbfg.,1.3,网络的训练,net,tr,Y1,E=train(net,X,Y);,net,是函数,newff,建立

8、的数据对象。,X,为,n*m,的矩阵,n,为输入变量个数,m,为样本数,(,即把每个样本是一个列向量,),。,Y,为,k*m,的矩阵,k,为数出变量个数。,tr,返回训练的跟踪信息,tr.epochs,为训练步数,tr.perf,为各步目标函数的值。,Y1,和,E,返回网络最终的输出和误差。,训练结束后可以用,plotperf(tr),来绘制目标值随着训练步数变化的曲线。,1.4,网络的泛化,(,预测,),Y=sim(net,X);,net,是函数,newff,建立的数据对象。,X,为,n*m,的矩阵,n,为输入变量个数,m,为样本数,(,即把每个样本是一个行向量,),。,Y,为,k*m,的矩

9、阵,k,为数出变量个数。,2,人工神经网络,(ANN),简介,2.1,人工神经网络,(ANN),的研究内容,(,1,),理论研究,:,ANN,模型及其学习算法,试图从数学上描述,ANN,的动力学过程,建立相应的,ANN,模型,在该模型的基础上,对于给定的学习样本,找出一种能以较快的速度和较高的精度调整神经元间互连权值,使系统达到稳定状态,满足学习要求的算法。,(,2,),实现技术的研究,:探讨利用电子、光学、生物等技术实现神经计算机的途径。,(,3,),应用的研究,:探讨如何应用,ANN,解决实际问题,如模式识别、故障检测、智能机器人等。,2.2 ANN,研究的目的和意义,(1),通过揭示物理

10、平面与认知平面之间的映射,了解它们相互联系和相互作用的机理,从而揭示思维的本质,探索智能的本源。,(2),争取构造出尽可能与人脑具有相似功能的计算机,即,ANN,计算机。,(3),研究仿照脑神经系统的人工神经网络,将在模式识别、组合优化和决策判断等方面取得传统计算机所难以达到的效果。,2.3,人工神经网络,研究的局限性,(,1,),ANN,研究受到脑科学研究成果的限制。,(,2,),ANN,缺少一个完整、成熟的理论体系。,(,3,),ANN,研究带有浓厚的策略和经验色彩。,(,4,),ANN,与传统技术的接口不成熟。,一般而言,ANN,与经典计算方法相比,并非优越,只有当常规方法解决不了或效果

11、不佳时,ANN,方法才能显示出其优越性。尤其对问题的机理不甚了解或不能用数学模型表示的系统,如故障诊断、特征提取和预测等问题,ANN,往往是最有利的工具。另一方面,ANN,对处理大量原始数据而不能用规则或公式描述的问题,表现出极大的灵活性和自适应性。,3,前馈神经网络,(BP,网络,),3.1,前馈神经网络,(BP,网络,),的特点,非线性映照能力,:神经网络能以任意精度逼近任何非线性连续函数。在建模过程中的许多问题正是具有高度的非线性。,并行分布处理方式,:在神经网络中信息是分布储存和并行处理的,这使它具有很强的容错性和很快的处理速度。,自学习和自适应能力,:神经网络在训练时,能从输入、输出

12、的数据中提取出规律性的知识,记忆于网络的权值中,并具有泛化能力,即将这组权值应用于一般情形的能力。神经网络的学习也可以在线进行。,数据融合的能力,:神经网络可以同时处理定量信息和定性信息,因此它可以利用传统的工程技术(数值运算)和人工智能技术(符号处理)。,多变量系统,:神经网络的输入和输出变量的数目是任意的,对单变量系统与多变量系统提供了一种通用的描述方式,不必考虑各子系统间的解耦问题。,3.2,BP,网络,输入,/,输出变量的确定,BP,网络的输入变量即为待分析系统的内生变量(影响因子或自变量)数,一般根据专业知识确定。,若输入变量较多,一般可通过主成份分析方法压减输入变量,,也可根据剔除

13、某一变量引起的系统误差与原系统误差的比值的大小来压减输入变量。,输出变量即为系统待分析的外生变量(系统性能指标或因变量),可以是一个,也可以是多个。一般将一个具有多个输出的网络模型转化为多个具有一个输出的网络模型效果会更好,训练也更方便。,3.3,BP,网络,数据的预处理,由于,BP,神经网络的隐层一般采用,Sigmoid,转换函数,为提高训练速度和灵敏性以及有效避开,Sigmoid,函数的饱和区,(,即输入值若大于,1,,则取为,1),,,一般要求输入数据的值在,01,之间,(,每个数都除于最大值,),。,如果输出层节点也采用,Sigmoid,转换函数,输出变量也必须作相应的预处理,为保证建

14、立的模型具有一定的外推能力,最好使,数据预处理后的输出变量的值在,0.20.8,之间,。,预处理的数据训练完成后,网络输出的结果要进行,反变换,才能得到实际值。,3.4 BP,网络隐层数的确定,一般认为,,增加隐层数可以降低网络误差,(也有文献认为不一定能有效降低),提高精度,但也使网络复杂化,从而增加了网络的训练时间和出现,“,过拟合,”,的倾向。,Hornik,等早已证明:,若输入层和输出层采用线性转换函数,隐层采用,Sigmoid,转换函数,则含一个隐层的网,MLP,络能够以任意精度逼近任何有理函数,。显然,这是一个存在性结论。在设计,BP,网络时可参考这一点,,应优先考虑,3,层,BP

15、,网络,(,即有,1,个隐层,+,输入层输出层,),。,一般地,靠增加隐层节点数来获得较低的误差,其训练效果要比增加隐层数更容易实现。,对于,没有隐层的神经网络模型,,实际上就是一个线性或非线性(取决于输出层采用线性或非线性转换函数型式),回归,模型。,3.5 BP,网络隐层节点数的确定,在,BP,网络中,隐层节点数的选择非常重要,它不仅对建立的神经网络模型的性能影响很大,而且是训练时出现,“,过拟合,”,的直接原因,但是,目前理论上还没有一种科学的和普遍的确定方法,。,确定隐层节点数的最基本原则是:,在满足精度要求的前提下取尽可能紧凑的结构,即取尽可能少的隐层节点数。,研究表明,隐层节点数不

16、仅与输入,/,输出层的节点数有关,更与需解决的问题的复杂程度和转换函数的型式以及样本数据的特性等因素有关。,在确定隐层节点数时必须满足下列条件:,(1),隐层节点数必须小于,N-1,(其中,N,为训练样本数),否则,网络模型的系统误差与训练样本的特性无关而趋于零,即建立的网络模型没有泛化能力,也没有任何实用价值。同理可推得:输入层的节点数(变量数)必须小于,N-1,。,(2),训练样本数必须多于网络模型的连接权数,一般为,210,倍,否则,样本必须分成几部分并采用,“,轮流训练,”,的方法才可能得到可靠的神经网络模型。,3.6 BP,网络的训练算法,由于,BP,网络采用误差反传算法,其实质是一

17、个无约束的非线性最优化计算过程,在网络结构较大时不仅计算时间长,而且很容易限入局部极小点而得不到最优结果。,目前虽已有,改进,BP,法,、,遗传算法(,GA,),和,模拟退火算法,等多种优化方法用于,BP,网络的训练,(,这些方法从原理上讲可通过调整某些参数求得全局极小点,),,但在应用中,这些参数的调整往往因问题不同而异,较难求得全局极小点。,这些方法中应用最广的是增加了冲量(动量)项的改进,BP,算法。,3.7 BP,网络的学习率和冲量系数的选择,学习率,影响系统学习过程的稳定性。大的学习率可能使网络权值每一次的修正量过大,甚至会导致权值在修正过程中超出某个误差的极小值呈不规则跳跃而不收敛

18、;但过小的学习率导致学习时间过长,不过能保证收敛于某个极小值。所以,一般倾向选取较小的学习率以保证学习过程的收敛性(稳定性),通常在,0.010.8,之间。,增加冲量项,的目的是为了避免网络训练陷于较浅的局部极小点。理论上其值大小应与权值修正量的大小有关,但实际应用中一般取常量。通常在,01,之间,而且一般比学习率要大。,3.8 BP,网络的初始连接权值,BP,算法决定了误差函数一般存在(很)多个局部极小点,不同的网络初始权值直接决定了,BP,算法收敛于哪个局部极小点或是全局极小点。因此,要求计算程序,(matlab),必须通过多次(通常是几十次)改变网络初始连接权值求得相应的极小点,才能通过

19、比较这些极小点的网络误差的大小,确定全局极小点。由于,Sigmoid,转换函数的特性,一般要求,初始权值分布在,-0.50.5,之间比较有效,。,神经网络的训练过程本质上是求非线性函数的极小点问题,,因此,即使网络误差相同,各个网络连接权值也可能有较大的差异,这有时也会使各个输入变量的重要性发生变化,检验样本和测试样本的网络计算结果会产生很大变化,即多模式现象。,3.9 BP,网络的性能和泛化能力,因为训练样本的误差可以达到很小,因此,用从总样本中随机抽取的一部分测试样本的误差表示网络模型计算和预测所具有的精度(网络性能)是合理的和可靠的。,值得注意的是,判断网络模型泛化能力的好坏,主要不是看

20、测试样本误差大小的本身,而是要看,测试样本的误差是否接近于训练样本和检验样本的误差,。,4,实例:多元神经网络预测,实验号,臭氧浓度,(mg/L),入口,UV,254,UV,254,去除率,(%),1,1.16,0.116,50.2,2,1.35,0.104,59.5,3,1.72,0.078,58.8,4,1.86,0.107,66.2,5,1.97,0.136,65.5,6,2.15,0.082,64.5,7,2.23,0.125,73.6,8,2.48,0.076,76.4,9,2.79,0.122,78.5,10,2.85,0.092,79.2,11,3.07,0.081,81.4,1

21、2,3.45,0.068,90.3,13,3.59,0.077,93.1,14,3.80,0.108,98.2,15,3.93,0.128,97.3,16,4.14,0.063,98.1,17,4.46,0.135,97.3,18,4.55,0.070,98.8,19,4.84,0.126,96.9,20,5.03,0.087,98.6,训练样本,实验号,臭氧浓度,(mg/L),入口,UV,254,UV,254,去除率,(%),1,1.42,0.086,58.1,2,2.51,0.071,78.8,3,3.21,0.107,89.6,4,4.29,0.096,96.5,5,5.24,0.65,

22、97.8,检验样本,网络分为,4,层。各层节点数分别为:输入层,2,个;第一隐层,12,个;第二隐层,6,个;输出层,1,个。,输入层,输出层,隐层,1,和,2,BP,网络模型,臭氧浓度,入口,UV,254,UV,254,去除率,网络结构,模型的参数,数据预处理,输入数据和输出数据都规格化为,0,到,1:,最大训练步数,net.trainParam.epochs=100000,收敛误差界值,n,et.trainParam.goad,=0.0001,BP,网络训练误差曲线,UV,254,值,臭氧浓度,mg/L,UV,254,去除率,,网络模型,实验号,臭氧,(mg/L),UV,254,去除率,(%),相对误差,(,%,),实测值,网络预测值,1,1.42,58.1,49.3,-,15.1,2,2.51,78.8,76.6,-2.85,3,3.21,89.6,81.9,8.62,4,4.29,96.5,97.7,1.25,5,5.24,97.8,97.1,0.7,模型预测结果与实测值比较,5,实验:神经网络分类,此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服