神经网络原理与控制.pptx

上传人:wuy****n92 文档编号:68489474 上传时间:2022-12-28 格式:PPTX 页数:264 大小:3.59MB
返回 下载 相关 举报
神经网络原理与控制.pptx_第1页
第1页 / 共264页
神经网络原理与控制.pptx_第2页
第2页 / 共264页
点击查看更多>>
资源描述

《神经网络原理与控制.pptx》由会员分享,可在线阅读,更多相关《神经网络原理与控制.pptx(264页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2022/12/28第五章 NN1第五章 神经网络原理5.1神经网络的基本概念5.2前向神经网络及主要算法5.3反馈网络5.4神经网络控制2022/12/28第五章 NN2神经系统的复杂性2022/12/28第五章 NN32022/12/28第五章 NN4分子2022/12/28第五章 NN5突触2022/12/28第五章 NN6单个神经元2022/12/28第五章 NN7神经网络2022/12/28第五章 NN8信息处理2022/12/28第五章 NN95.1 神经网络的基本概念5.1.1生物神经元n人的大脑由人的大脑由1012个神经元构成,神经元互相连个神经元构成,神经元互相连接成神经网络

2、接成神经网络n神经元组成:细胞体为主体n神经元功能:刺激、兴奋、传导、效应n形状图n突触传递信息特点2022/12/28第五章 NN10形状图2022/12/28第五章 NN115.1.2 人工神经元模型BNN信息传递过程为MISO系统,信号为脉冲,当脉冲到达突触前膜时,前膜释放化学物质,结果在突触后产生突触后电位,其大小与脉冲密度有关(时间总合效应)。各通道都对电位产生影响(空间总合效应)2022/12/28第五章 NN12BNN脉冲,ANN模拟电压nANN等效模拟电压近似BNN脉冲密度,仅有空间累加无时间累加(可认为时间累加已隐含于等效模拟电压之中)nANN中未考虑时延、不应期及疲劳等可建

3、立更为精确的模型,但一般NN研究无此必要(方法论)2022/12/28第五章 NN13人工神经元模型BNN信息传递过程为MISO系统,信号为脉冲,当脉冲到达突触前膜时,前膜释放化学物质,结果在突触后产生突触后电位,其大小与脉冲密度有关(时间总合效应)。各通道都对电位产生影响(空间总合效应)。2022/12/28第五章 NN14 单个单个神经元特性神经元特性神经元的神经元的膜电位膜电位与时间关系如下与时间关系如下spike2022/12/28第五章 NN15实际神经元记录:膜电位膜电位Recordingfromarealneuron:membranepotential2022/12/28第五章

4、NN16神经元模型(1)n神经元是人工神经网络的基本处理单元,它一般是一个多输入多输入多输入多输入/单输出单输出单输出单输出的非线性元件。神经元输出除受输入信号的影响之外,同时也受到神经元内部其他因素的影响,所以在人工神经元的建模中,常常还加有一个额外输入信号,称为偏差(偏差(偏差(偏差(biasbias),),),),有时也称为门限值或阈值(阈值(阈值(阈值(thresholdthreshold)。2022/12/28第五章 NN17神经元模型(2)n。2022/12/28第五章 NN18抽象可得数学表达式:y=(s)(5-2)式中:i加权值(weights)阀值(threshold)(s)

5、作用函数(activatedtransferfunction)2022/12/28第五章 NN19几种常用的作用函数1、阈值型(硬限制型)2、线性型3、S型函数(Sigmoid)4、辐射基函数2022/12/28第五章 NN20(1)、阈值型(硬限制型)生物学背景:生物学背景:神经细胞的兴奋与抑制兴奋与抑制兴奋与抑制兴奋与抑制;单极性单极性单极性单极性2022/12/28第五章 NN21生物学背景:神经细胞的兴奋与抑制:兴奋与抑制:兴奋与抑制:兴奋与抑制:双极性双极性双极性双极性2022/12/28第五章 NN22(2)、线性型a)全线性 n生物学背景:神经细胞的比例作用比例作用比例作用比例作

6、用(全(全(全(全方位)方位)方位)方位)2022/12/28第五章 NN23b)正线性生物学背景:神经细胞的线性比例作用线性比例作用线性比例作用线性比例作用(单方向)(单方向)(单方向)(单方向)2022/12/28第五章 NN24(3)、S型函数(Sigmoid)a)对数正切 y=1/(e-n+1)生物学背景:神经细胞的非线性比例作用(单向)2022/12/28第五章 NN25b)双曲正切 y=tanh(n)生物学背景:神经细胞的非线性非线性非线性非线性比例作比例作比例作比例作用(全方位)用(全方位)用(全方位)用(全方位)2022/12/28第五章 NN26(4)辐射基函数a)高斯函数生

7、物学背景:视觉,听觉等类神经细胞的区域性非线性区域性非线性区域性非线性区域性非线性用用用用2022/12/28第五章 NN27b)三角波函数生物学背景:视觉,听觉等类神经细胞的区域性非线性区域性非线性区域性非线性区域性非线性用的线性近似用的线性近似用的线性近似用的线性近似2022/12/28第五章 NN285.2.2 人工神经网络的构成n基本模型n连接的几种基本形式n前向网络(feed-forwardNetworks)n回归网络(recurrentNetworks)n互联网络(全互连与局部互连)n也可是以上几种形式的组合2022/12/28第五章 NN29人工神经网络种类1).前向型感知器、线

8、性网络(ADALINE),BP网络RBF网络,2).反馈型Hopfield网络3).竞争型ART,SOFM等2022/12/28第五章 NN30Perceptron 应用举例1。水果分类Matlab演示nnd3pc.m(chap3)2022/12/28第五章 NN31复习与讲解复习复习1)BNN特点2)ANN原理类型,作用函数讲解讲解1)学习算法2)ANN与自动控制3)感知器网络2022/12/28第五章 NN32前向型神经网络基本模型 2022/12/28第五章 NN33前向网络n结构图2022/12/28第五章 NN34前向网络特点1).神经元分层排列,可又多层2).层间无连接3).方向由

9、入到出多层感知器(BP)网络(perceptron/BP即为此)应用最为广泛2022/12/28第五章 NN35回归网络全反馈结构图2022/12/28第五章 NN36Inner RNN结构图2022/12/28第五章 NN37回归网络特点nOutput与Input相连(全反馈)特点:1.内部前向2.输出反馈到输入例:Fukushima网络nInnerrecurrent特点:层间元互相连接2022/12/28第五章 NN38互联网络n结构图2022/12/28第五章 NN39互联网络特点n每个元都与其它元相连例:HopfieldBoltzmann机2022/12/28第五章 NN40Hopfi

10、eld反馈神经网络结构2022/12/28第五章 NN41反馈网络特点n系统:反馈动力学系统,有一稳定时间n作用:联想记忆,求解优化问题2022/12/28第五章 NN42ANN与BNN的比较BNNANN单元上差别单元上差别影响因素多忽略了影响关系简单信息上差别信息上差别脉冲模拟电压规模及智能规模及智能大,高小Ha1=tansig(IW1,1p1+b1)tansig(x)=tanh(x)=(ex-e-x)/(ex+e-x)nH-Oa2=purelin(LW2,1a1+b2)输入层神经元个数nn隐含层神经元个数s1n输出层神经元个数s22022/12/28第五章 NN80学习(训练)的基本原理采

11、用最小二乘方法,利用梯度搜索技术,使网络的实际输出值与期望输出值的误差均均方值最小。基本的EBP算法是极小化二次性指标函数E而得到的。2022/12/28第五章 NN81学习(训练)n输入q组样本 p1,p2,.,pqpiRnn期望输出T1,T2,.,Tq,TRs2n网络输出a21,a22,.,a2qa2Rs2n均方误差向量情况2022/12/28第五章 NN82BP算法流程(学习算法)由两部分组成:信息的正向传播和误差的反向传播。在正向传播过程中,输入信息从输入经隐含层逐层计算传向输出层,每一层神经元的状态只影响下一层的神经元的状态。如果在输出层没有得到期望的输出,则计算输出层的误差变化值,

12、然后转向反向传播,通过网络将误差信号沿原来的连接通道反传回来修改各层神经元的权值直到达到期望目标。2022/12/28第五章 NN83学习过程设输入为P,输入神经元有r个,隐含层内有s1个神经元,作用函数为f1,输出层内有s2个神经元,对应的作用函数为f2,输出为A,目标为T。2022/12/28第五章 NN84学习(训练)2n解决方法误差最小n实质为一个优化问题n思路1:梯度法(gradient)n找出误差与加权系数的关系n得到加权系数改变的规律2022/12/28第五章 NN85梯度法原理(1)1.对无约束极值问题设:F(X)二次可微,具有极小点X*,2022/12/28第五章 NN86梯

13、度法原理(2)2022/12/28第五章 NN87最速下降法,要求最速下降法,要求E的极小点的极小点wijE0,此时,此时wij0取取E0wij2022/12/28第五章 NN88学习训练算法(思路)近似最陡下降法2022/12/28第五章 NN89链式法则例应用于梯度计算2022/12/28第五章 NN901)信息的正向传递隐含层中的第i个神经元的输出为:输出层第k个神经元的输出为:定义误差函数为:2022/12/28第五章 NN91学习训练算法学习训练算法 正向传播正向传播I-H H-O 2.计算误差ek=tk-a2k2022/12/28第五章 NN92寻找加权系数改变与误差的关系考虑一个

14、样本输入到网络的情况,此时误差平方和为1。输出层权系数的调整(误差与输出层关系直接)net2k2022/12/28第五章 NN93定义:因为:式中:2022/12/28第五章 NN94小结:2022/12/28第五章 NN95隐含层权系数的修正ANiANkANjw1ij1i21w2k1w2ki2kw2km2m输入层输入层输出层输出层隐含层隐含层2022/12/28第五章 NN96隐含层权系数的修正误差e与w1无显函数关系,采用链式法则找关系2022/12/28第五章 NN97不能直接计算,需通过其他量间接计算2022/12/28第五章 NN98隐含层权值修正小结:2022/12/28第五章 N

15、N99总结输出节点k隐含节点j统一形式2022/12/28第五章 NN100BP算法解释输出层误差ej(j=1s2)隐含层误差ei(i=1n1)ei与ej的关系?ei可以认为是由ej加权组合形成的。由于作用函数的存在,ej的等效作用为j i=ejf()2022/12/28第五章 NN101 初始化 加输入和期望输出计算隐层和输出层的输出迭代次数加1调节输出层和隐层的连接权值改变训练样板训练样终止?迭代终止?BP算法的基本流程NoNoyy2022/12/28第五章 NN102n导数nlogsigmatlab 函数:dA_dN=dlogsig(N,A)ntansignmatlab 函数:dA_dN

16、=dtansig(N,A)2022/12/28第五章 NN103复习n感知器网络分类nBP网络分类与函数逼近反向传播学习算法,调整权值。讲解1)示例2)MATLAB实现2022/12/28第五章 NN104示例:函数逼近 1-2-1Network+-taexgx()1/x=2022/12/28第五章 NN1052022/12/28第五章 NN106修正公式:1.前向计算2.权值修正2022/12/28第五章 NN107具体步骤(一步一步):前向计算(输入输出计算)y1/1=1s1=w1*x+b1=1.0*1.0+0=1.0;s2=w2*x+b2=-1.0*1.0+0=-1.0z1=logsig

17、(s1)=logsig(1.0)=0.7311;z2=logsig(s2)=logsig(-1.0)=0.2689t=v1*z1+v2*z2+b=0.7311+0.2689+0.5=1.5误差计算e=1-1.5=-0.52022/12/28第五章 NN108输出层权值修正(O-I)V1*e*z10.1*(-0.5)*0.7311=-0.0366,V1=V1+V1=0.5+(-0.0366)=0.4634V2*e*z20.1*(-0.5)*0.2689=-0.0134,V2=V2+V2=0.5+(-0.0134)=0.4866b=*e=0.1*(-0.5)=-0.05 b=bb0.5-0.05=

18、0.4952022/12/28第五章 NN109隐含层权值修正nw1=*v1*e*f(s1)*x=*e*v1*z1*(1-z1)*x=0.1*0.4634*(-0.5)*0.7311*(1-0.7311)*1=-0.0046nw1=w1+w1=1.0+(-0.0046)=0.9954nw2=*v2*e*f(s2)*x=*e*v2*z2*(1-z2)*x=0.1*0.4686*(-0.5)*0.2689*(1-0.2689)*1=-0.0046nw2=w2+w1=(-1.0)+(-0.0046)=-1.0046nb1=b1+b1=0-0.0046=-0.0046;nb2=b2+b2=0-0.00

19、46=-0.0046;2022/12/28第五章 NN110示例:函数逼近(nnd11bc.m)1-2-1Network+-taep2022/12/28第五章 NN111网络1-2-1网络ap参看matlab工具箱演示例子Nnd11bc.m演示训练过程nndemos(chap11demo22022/12/28第五章 NN1122022/12/28第五章 NN113Matlab 例Nnd11bc.m演示训练过程nndemos(chap11demo2)2022/12/28第五章 NN114初始条件2022/12/28第五章 NN115前向传播2022/12/28第五章 NN116反向传播s1Fn1

20、()W2()Ts21a11()a11()001a21()a21()0.090.172.522=2022/12/28第五章 NN117权值更新2022/12/28第五章 NN118示例3:两层XOR网络【模式分类】x1x2y0000111011102022/12/28第五章 NN119输入输出关系2022/12/28第五章 NN120加权值修改(Vi)2022/12/28第五章 NN121加权值修改(Wij)2022/12/28第五章 NN122具体计算步骤:见matlab程序Bpxor2_demo_step.m的执行过程:2022/12/28第五章 NN123bpxor2_demo_step.

21、m%BP神经网络解决异或问题%采用的一个2-2-1的网络clearclcBP_LEARNING=0.1;%学习速率为0.1wish_error=0.002;%期望误差studytimes=20000;%定义最大学习次数result=zeros(1,4);%生成一个矩阵,存放最后的输出结果P=0011;0101;T=0110;%初始化神经网络隐含层的权值和域值%根据权值下标,例如weight12表示第一个输入对隐含层第二个神经元的权值weight11=rands(1)weight21=rands(1)weight12=rands(1)weight22=rands(1)b1=rands(1)b2=

22、rands(1)%初始化输出层的权值和域值weight1=rands(1)weight2=rands(1)b=rands(1)pause2022/12/28第五章 NN124%开始训练网络fori=1:studytimes;real_error=0;%初始化中间变量:修改权值的变量的累加值change_b1=0;change_b2=0;change_b=0;change_weight11=0;change_weight21=0;change_weight12=0;change_weight22=0;change_weight1=0;change_weight2=0;forj=1:4;%前向计算

23、%第一个隐含层神经元的输出hidelayer1=weight11*P(1,j)+weight21*P(2,j)+b1%经过S函数之后的输出S_hidelayer1=1/(1+exp(-hidelayer1);%第二个隐含层神经元的输出hidelayer2=weight12*P(1,j)+weight22*P(2,j)+b2%经过S函数之后的输出S_hidelayer2=1/(1+exp(-hidelayer2)%输出层的输出线性输出outlayer=weight1*S_hidelayer1+weight2*S_hidelayer2+b%计算误差deta=T(j)-outlayer2022/12

24、/28第五章 NN125%计算输出层加权值W1,W2,偏置值b的修正量change_weight1=change_weight1+BP_LEARNING*S_hidelayer1*detachange_weight2=change_weight2+BP_LEARNING*S_hidelayer2*detachange_b=change_b+BP_LEARNING*deta%计算隐含层第一个神经元权值的deta1deta1=S_hidelayer1*(1-S_hidelayer1)*weight1*deta%计算隐含层第二个神经元权值的deta2deta2=S_hidelayer2*(1-S_h

25、idelayer2)*weight2*deta%计算输出层加权值W11,W21,W12,W22,偏置值b1,b2的修正量%偏置值b1,b2修正量的累加change_b1=change_b1+BP_LEARNING*deta1change_b2=change_b2+BP_LEARNING*deta2%权值W11,W21,W12,W22修正量的累加change_weight11=change_weight11+BP_LEARNING*P(1,j)*deta1change_weight21=change_weight21+BP_LEARNING*P(2,j)*deta1change_weight12

26、=change_weight12+BP_LEARNING*P(1,j)*deta2change_weight22=change_weight22+BP_LEARNING*P(2,j)*deta2%判断误差real_error=real_error+(T(j)-outlayer)*(T(j)-outlayer)end2022/12/28第五章 NN126%开始调整权值b1=b1+change_b1b2=b2+change_b2b=b+change_bweight11=weight11+change_weight11weight21=weight21+change_weight21weight12

27、=weight12+change_weight12weight22=weight22+change_weight22weight1=weight1+change_weight1weight2=weight2+change_weight2ifreal_errorwish_errorbreak;end;end;2022/12/28第五章 NN127%输出最后结果forj=1:4;hidelayer1=weight11*P(1,j)+weight21*P(2,j)+b1;%第一个隐含层神经元的输出S_hidelayer1=1/(1+exp(-hidelayer1);%经过S函数之后的输出hidela

28、yer2=weight12*P(1,j)+weight22*P(2,j)+b2;%第二个隐含层神经元的输出S_hidelayer2=1/(1+exp(-hidelayer2);%经过S函数之后的输出outlayer=weight1*S_hidelayer1+weight2*S_hidelayer2+b;%输出层的输出result(j)=outlayer;end;clcreal_error,i,result2022/12/28第五章 NN128用MATLAB求解BP网络训练问题第一步:建立一个网络net=newff(-22,51,tansig,purelin,traingd);第二步计算输出:y

29、1=sim(net,P);2022/12/28第五章 NN129绘图:plot(P,T,*);训练:net,tr=train(net,P,T);训练函数有很多种,如:traingd,traingdm,traingdx,trainlm在训练之前要对网络进行初始化,并设置好训练参数。初始化:net.iw1,1=W10;net.b1=B10;net.lw2,1=W20;net.b2=B20;2022/12/28第五章 NN130参数设置:net.trainParam.epochs=100;%最大训练次数net.trainParam.goal=0.01;%训练所要达到的精度net.trainParam

30、.show=10;%在训练过程中显示的频率net.trainParam.lr=0.1;%学习速率2022/12/28第五章 NN131例题函数逼近例例应用两层BP网络来完成函数逼近的任务,其中隐含的神经元个数选为5个。网络结构如图5.4.1所示。图:5.4.12022/12/28第五章 NN132解首先定义输入样本和目标矢量P=-1:.1:1;T=-.9602-.5770.0729.3771.6405.6600.4609.1336-.2013-.4344-.5000-.3930-.1647.0988.3072.3960.3449.1816-.0312-.2189-.3201;上述数据的图形如图

31、所示。图:2022/12/28第五章 NN133利用函数newff建立一个bp神经元网络net=newff(minmax(P),51,tansigpurelin,traingd,learngd,sse);然后利用函数train对网络进行训练net.trainParam.show=10;net.trainParam.epochs=8000;net.trainParam.goal=0.02;net.trainParam.lr=0.01;net,tr=train(net,P,T);2022/12/28第五章 NN134图5.4.3至图给出了网络输出值随训练次数的增加而变化的过程。图给出了454次训练

32、后的最终网络结果,以及网络的误差纪录。同时还可以用函数sim来计算网络的输出a1=sim(net,P)下面给出本例的MATLAB程序2022/12/28第五章 NN135图5.4.3训练100次的结果图5.4.4训练200次的结果图5.4.5训练300次的结果图5.4.6训练400次的结果2022/12/28第五章 NN1365.4.7训练结束后的网络输出与误差结果2022/12/28第五章 NN137%Example 3.13%clf;figure(gcf)setfsize(500,200);echo on%NEWFF 建立一个BP网络%TRAIN 对BP网络进行训练%SIM 对BP网络进行

33、仿真pauseP=-1:.1:1;T=-.9602-.5770-.0729 .3771 .6405 .6600 .4609.1336-.2013-.4344-.5000-.3930-.1647 .0988.3072 .3960 .3449 .1816-.0312-.2189-.3201;plot(P,T,+);title(Training Vectors);xlabel(Input Vector P);ylabel(Target Vector T);pausenet=newff(minmax(P),5 1,tansig purelin,traingd,learngd,sse);echo off

34、k=pickic;if k=2 net.iw1,1=3.5000;3.5000;3.5000;3.5000;3.5000;2022/12/28第五章 NN138 net.b1=-2.8562;1.0774;-0.5880;1.4083;2.8722;net.lw2,1=0.2622-0.2375-0.4525 0.2361-0.1718;net.b2=0.1326;endnet.iw1,1net.b1net.lw2,1net.b2pauseecho onme=8000;net.trainParam.show=10;net.trainParam.goal=0.02;net.trainParam.lr=0.01;A=sim(net,P);sse=sumsqr(T-A);for i=1:me/100 if ssetraingdm/a/x-trainlm

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁