1、智能控制理论与方法刘成林1第4章 基于神经元网络的智能控制系统2Jiangnan University4.1 概述(1)n大脑区域间的神经连接3Jiangnan University4Jiangnan University概述(2)n什么是人工神经网络(简称为:神经网络)?n神经网络是由简单处理元构成的规模宏大的并行分并行分布处理器布处理器,具有存储经验知识和使之可用的特性。n神经网络从两个方面上模拟大脑:n神经网络获取的知识是从外界环境中学习得来的。n内部神经元的连接强度,即突触权值,用于储存获取的知识。n学习算法是用于完成学习过程的程序,其功能是以有序的方式改变系统权值以获得想要的设计目标
2、。突触权值的修改提供了神经网络的一种设计方法。5Jiangnan University概述(3)神经元是构成神经网络的最基本单元(构件),神经元神经元是构成神经网络的最基本单元(构件),神经元的六个基本特征:的六个基本特征:n1)神经元及其连接;n2)神经元之间的连接强度决定信号传递的强弱;n3)神经元之间的连接强度是可以随训练改变的;n4)信号可以是起刺激作用的,也可以是起抑制作用的;n5)一个神经元接受的信号的累积效果决定该神经元的状态;n6)每个神经元可以有一个“阈值”6Jiangnan University概述(4)n神经网络特性:n非线性:非线性关系是自然界的普遍特性。大脑的智慧就是
3、一种非线性现象。人工神经元处于激活或抑制两种不同的状态。这种行为在数学上表现为一种非线性。n非局域性:一个神经网络通常由多个神经元广泛连接而成。一个系统的整体行为不仅取决于单个神经元的特征,而且可能主要神经元之间的相互作用、相互连接所决定。通过单元之间的大量连接模拟大脑的非局域性。7Jiangnan Universityn非定常性:人工神经网络具有自适应、自组织、自学习能力。神经网络不但处理的信息有各种各样,而且在处理信息的同时,非线性动力系统本身也在不断变化。经常采用迭代过程描写动力系统的演化过程。n非凸性:一个系统的演化方向,在一定条件下,将取决于某个特定的状态函数,如能量函数,它的极值相
4、应于系统比较稳定的状态。非凸性是指这种函数有多个极值,故系统具有多个较稳定的平衡态,这将导致系统演化的多样性。8Jiangnan University概述(5)n发展史n1943年McCulloch(心理学家)和Pitts(数理逻辑学家)发表文章,提出M-P模型。描述了一个简单的人工神经元模型的活动是服从二值(兴奋和抑制)变化的。总结了神经元的基本生理特性,提出了神经元的数学描述和网络的结构方法。标志神经计算时代的开始 输出表达式MP模型的意义意义:nM-P模型能完成一定的逻辑运算 n第一个采用集体并行计算结构来描述人工神经元和网络工作。iixxy019Jiangnan Universityn
5、1949年Donala U.Hebb(心理学家)论著The Organization of Behavior(行为自组织),提出突触联系强度可变的假设,认为学习的过程最终发生在神经元之间的突触部位,突触的联系强度随着突触前后神经元的活动而变化。赫布规则 多用于自组织网络的学习,即:若两个神经元输出兴奋,则它们之间的连接权加强,反之减少。赫布规则意义意义(提出了变化的概念)n提出了一个神经网络里信息是储藏在突触连接权中 n连接权的学习律是正比于两个被连接神经细胞的活动状态值的乘积 n细胞的互相连接的结构是他们权的改变创造出来的jiijijSSww10Jiangnan Universityn195
6、7年Frank Rosenblatt定义了一个神经网络结构,称为感知器(Perceptron),采用 规则学习。意义:意义:第一次把神经网络研究从纯理论的探讨推向工程实现,在IBM704计算机上进行了模拟,证明了该模型有能力通过调整权的学习达到正确分类的结果。掀起了神经网络研究高潮。0001)()(1jjjnijiijjuuufxwfy11Jiangnan Universityn1969,M.Minsky和S.Papert发表了Perceptrons的论著,指出感知器仅能做线性划分。对于非线性或其他分类会遇到很大困难。一个简单的XOR问题的例子就证明了这一点。神经网络研究一度达到低潮。原因还有
7、:计算机不够发达、VLSI还没出现、而人工智能和专家系统正处于发展高潮。12Jiangnan Universityn1982年John J.Hopfield(物理学家)提出了全连接网络,离散的神经网络模型。全新的具有完整理论基础的神经网络模型。基本思想是对于一个给定的神经网络,对于一个能量函数,这个能量函数是正比于每一个神经元的活动值和神经元之间的连接权。而活动值的改变算法是向能量函数减少的方向进行,一直达到一个极小值为止。证明了网络可达到稳定的离散和连续两种情况。3年后AT&T等做出了半导体芯片。神经网络复兴时期开始13Jiangnan Universityn1986年美国的一个平行计算研究
8、小组提出了前项反馈神经网络的Back Propagation(BP)学习算法。成为当今应用最广泛的方法之一。该方法克服了感知器非线性不可分类问题,给神经网络研究带来了新的希望。jujnijiijjeufxwfy11)()(114Jiangnan Universityn 1990年汉森(L.K.Hansen)和萨拉蒙(P.Salamon)提出了神经网络集成(neural network ensemble)方法。他们证明:可以简单地通过训练多个神经网络并将其结果进行拟合,显著地提高神经网络系统的泛化能力。神经网络集成可以定义为用有限个神经网络对同一个问题进行学习,集成在某输入示例下的输出由构成集成
9、的各神经网络在该示例下的输出共同决定。15Jiangnan University概述(6)n基于神经元网络的智能控制系统又称为基于连接机制的智能控制系统。n随着人工神经网络(ANN)研究的发展。神经网络越来越多地应用于控制领域的各个方面:过程控制、机器人控制、生产制造、模式识别、决策支持等。n由于ANN自身的特点,它在系统辨识、建模、自适应控制中特别受到关注。尤其它较好地解决了具有不确定性、严重非线性、时滞或滞后复杂系统的建模与控制问题。n 神经网络的分析与综合、ANN的拓扑结构问题、以及ANN与基于规则的系统的有机结合,还有待于进一步研究。16Jiangnan Universityn再认识与
10、应用研究(1991)n问题:1)应用面还不够宽 2)结果不够精确 3)存在可信度的问题 n研究:1)开发现有模型的应用,并在应用中根据实际运行情况对模型、算法加以改造,以提高网络的训练速度和运行的准确度。2)希望在理论上寻找新的突破,建立新的专用/通用模型和算法。3)进一步对生物神经系统进行研究,不断地丰富对人脑的认识。概述(7)17Jiangnan University4.2 神经元网络的基本原理和结构n4.2.1 神经元网络的基本单元图4.1 生物神经元 18Jiangnan Universityn细胞体:由细胞核、细胞质和细胞膜组成。n 轴突:由细胞体向外伸出的一条分支,称为轴突,即神经
11、纤维。轴突相当于细胞的传输电缆,其端部的许多神经末梢为信号的输出端,用以送出神经激励。n树突:由细胞体向外伸出的其它许多较短的分支,称为树突。它相当于神经细胞的输入端,用于接收来自其它神经细胞的输入激励。n 突触:细胞与细胞之间通过轴突与树突相互连接,其接口称为突触。每个细胞约有103-104个突触。n 膜电位:细胞膜内外之间有电势差,约为70-100mV,膜内为负,膜外为正。19Jiangnan University4.2.2 神经元的模型1()()niiiy tfw x t f(x)为激励函数,通常取1和0的双值函数或连续、非线性的Sigmoid函数。wi为连接权值yx1x2x nw1w2
12、w n s20Jiangnan University神经元的工作过程:神经元的工作过程:xi(i=1,2,n)是输入,是输入,wi为该神经元与各输入间的连为该神经元与各输入间的连接权值,接权值,为阈值,为阈值,s外部输入的控制信号,外部输入的控制信号,y为输出为输出(1)从各输入端接收输入信号从各输入端接收输入信号xi。(2)根据各连接权值根据各连接权值wi,求出所有输入的加权和求出所有输入的加权和:ni=1wi xi s (3)利用某一特征函数利用某一特征函数f进行变换,得到输出进行变换,得到输出y:y=f()f(ni=1wi xi s )yx1x2x nw1w2w n s21Jiangna
13、n Universityn连接权连接权wij通常在通常在-1,1之间取值:之间取值:wij 0,称为正连接,表示神经元称为正连接,表示神经元uj对对ui有激活作用有激活作用 wij 0为一常数,称为饱和值,为该神经元的最大输出。24Jiangnan University非线性斜面函数(非线性斜面函数(Ramp Function)25Jiangnan Universityc、阈值函数(Threshold Function)26Jiangnan University阈值函数(阈值函数(Threshold Function)27Jiangnan Universityd、S形函数 压缩函数(Squas
14、hing Function)和逻辑函数(Logistic Function)。f(net)=a+b/(1+exp(-d*net)a,b,d为常数。它的饱和值为a和a+b。最简单形式为:f(net)=1/(1+exp(-d*net)函数的饱和值为0和1。S形函数有较好的增益控制形函数有较好的增益控制28Jiangnan UniversityS形函数形函数29Jiangnan University神经元的一般模型框架(控制论角度)mkikikinjijiwtubtyatv11)()()(图4.330Jiangnan University式中 aij 和bik 为权系数,i,j=1,2,n,k=1,
15、2,m.n 个加法器可以写成向量形式:wtButAytv)()()(wuByAv N维列向量 N维列向量(单元输出)NN维矩阵NM维矩阵 M维列向量(外部输入)M维常向量31Jiangnan University 线性动态系统线性动态系统)()()(svsHsxii传递函数形式:)()(dttvtthxili按时域形式:典型的有:10(/)/0100,01()1,()();(),()1,01111(),();(),()1(),()()t a at TsTtH sh ttH sh ttsH sh teH sh tesTTa s aaH seh tt T32Jiangnan University静
16、态非线性系统静态非线性系统:g(.)可从线性动态系统输出x给出模型的输出.g(x)g(x)g(x)xxx阈值函数阈值函数Sigmoid函数典型的有:yi=g(xi)33Jiangnan Universityn非线性函数分类:(1)可微和不可微:区别平滑函数还是陡函数;(2)类脉冲和类阶跃:区分当输入在零附近的数是大的输出值还是有大的改变;(3)正函数和零均函数:正函数由-处为0变到在+处为1;零均函数从-为-1变到+为+1。34Jiangnan University4.2.3 神经元的连接方式n对于神经元,按多种不同方式连接之后,可以在变量之间建立不同关系,给出多种强大的信息处理能力。(1)图
17、4.3中,线性动态系统为:H(s)=1,则35Jiangnan Universityn(2)多层前馈网络36Jiangnan Universityn多层前馈网络多层前馈网络-层次划分层次划分n信号只被允许从较低层流向较高层(从左至右)。n层号确定层的高低:层号较小者,层次较低,层号较大者,层次较高。n输入层:记为第0层。该层负责接收来自网络外部的信息n第j层:第j-1层的直接后继层(j0),它直接接受第j-1层的输出。n输出层:它是网络的最后一层,具有该网络的最大层号,负责输出网络的计算结果。n隐藏层:除输入层和输出层以外的其它各层叫隐藏层。隐藏层不直接接受外界的信号,也不直接向外界发送信号。
18、37Jiangnan Universityn(3)反馈网络(又称循环网)Hopfield网络38Jiangnan Universityn如果将输出信号反馈到输入端,就可构成一个多层的循环网络。n输入的原始信号被逐步地“加强”、被“修复”。n大脑的短期记忆特征看到的东西不是一下子就从脑海里消失的。n稳定:反馈信号会引起网络输出的不断变化。我们希望这种变化逐渐减小,并且最后能消失。当变化最后消失时,网络达到了平衡状态。如果这种变化不能消失,则称该网络是不稳定的。39Jiangnan University4.2.4 神经网络训练与学习n人工神经网络最具有吸引力的特点是它的学习能力。n1962年,Ro
19、senblatt给出了人工神经网络著名的学习定理:人工神经网络可以学会它可以表达的任何东西。n人工神经网络的表达能力大大地限制了它的学习能力。n人工神经网络的学习过程就是对它的训练过程40Jiangnan Universityn无监督学习n无监督学习(Unsupervised Learning)与无监督训练(Unsupervised Training)相对应n抽取样本集合中蕴含的统计特性,并以神经元之间的联接权的形式存于网络中。n监督学习n监督学习(Supervised Learning)与有监督训练(Supervised Training)相对应。n输入向量与其对应的输出向量构成一个“训练对
20、”。41Jiangnan University4.2.5 神经元网络分类n按学习的方法神经元网络可分成二类:n 1)监督的学习网络:n 感知器n 误差反传网络(BP)n 小脑模型连接控制器(CMAC)n 模块(组合)网络n 增强学习网络n 2)无监督学习网络n 竞争学习和Kohonen网络 n Hopfield网络n 双向联想存贮器(BAM)n Boltzmann机42Jiangnan University4.3监督学习神经元网络n4.3.1 单层感知器n感知器模型是美国学者罗森勃拉特(Rosenblatt)为研究大脑的存储、学习和认知过程而提出的一类具有自学习能力的神经网络模型,它把神经网络
21、的研究从纯理论探讨引向了从工程上的实现。n Rosenblatt提出的感知器模型是一个只有单层计算单元的前向神经网络,称为单层感知器。43Jiangnan University单层感知器n单层感知器模型1,0;()1,0.vf vv44Jiangnan University单层感知器n单层感知器工作原理 单层感知器可将外部输入分为两类。当感知器的输出为+1时,输入属于l1类,当感知器的输出为-1时,输入属于l2类,从而实现两类目标的识别。在二维空间,单层感知器进行模式识别的判决超平面判决超平面由下式决定:10miiiw xb45Jiangnan University单层感知器n单层感知器工作原
22、理 对于只有两个输入的判别界判别界是直线直线(如下式所示),选择合适的学习算法可以训练出满意的w1和w2,当它用于两类模式的分类时,相当于在高维样本空间中,用一个超平面将两类样本分开。1 1230w xw xbyx1-bx2 x1 *O *O *O O *O x2 *O O O O46Jiangnan University单层感知器设三维输入向量:设三维输入向量:X=(x1,x2,x3)T1 122331 122331,01,0w xw xw xbyw xw xw xb输出:输出:则由方程则由方程 w1x1+w2x2+w3x3b=0确定了三维空间上的一个分界平面确定了三维空间上的一个分界平面。
23、x2yx1x3-bn单层感知器工作原理47Jiangnan University单层感知器 x1 *O *O *O O *O x2 *O O O x348Jiangnan University单层感知器n单层感知器工作原理设输入向量X=(x1,x2,,xn)T则由方程 w1x1+w2x2+wnxnb=0确定了n维空间上的一个分界平面。输出:y=sgn(w1x1+w2x2+wnxn b)49Jiangnan University单层感知器n单层感知器学习算法思想 基于迭代的思想,通常是采用误差校正学习规则误差校正学习规则的学习算法。可以将阈值作为神经元权值向量的第一个分量加到权值向量中,也可以设
24、其值为0。输入向量和权值向量可分别写成如下的形式 X(n)=+1,x1(n),x2(n),xm(n)T W(n)=b(n),w1(n),w2(n),wm(n)T 根据下式,可得在m维空间上感知器的判别超平面:10miiiw xb50Jiangnan University单层感知器单层感知器学习算法:学习规则第一步,设置变量和参量f(.)为激活函数,y(n)为网络实际输出,d(n)为期望输出,为学习速率,n为迭代次数,e为实际输出和期望输出的误差。第二步,初始化:给权值向量W(1)的各个分量赋一个较小的随机非零值,置n=1。第三步,输入一组样本X(n)=1,x1(n),x2(n),xm(n)T,
25、并给出它的期望输出d(n)。第四步,计算实际输出:第五步,求出期望输出和实际输出的差:e=d(n)-y(n)根据误差判断目前输出是否满足条件,一般为对所有样本误一般为对所有样本误差为零或者均小于预设的值差为零或者均小于预设的值,则算法结束,否则将值增加1,并用下式调整权值:然后转到第三步,进入下一轮计算过程。(1)()()()()w nw nd ny n x n0()()()miiiy nfw n x n51Jiangnan University单层感知器n单层感知器实现逻辑运算:单层感知器实现逻辑运算:具有两个输入的单层感知器的输出为 y(x1,x2)=f(w1x1+w2 x2-b)所以,用
26、该感知器实现简单逻辑运算的情况如下:(1)“与与”运算(运算(x1x2):令w1=w2=1,b=2,则:y=f(1x1+1x2-2)显然,当x1和x2均为1时,y的值1;而当x1和x2有一个为0时,y的值就为0。(2)“或或”运算(运算(x1 x2):令w1=w2=1,b=0.5,则:y=f(1x1+1x2-0.5)显然,只要x1和x2中有一个为1,则y的值就为1;只有当x1和x2都为0时,y的值才为0。52Jiangnan University单层感知器(3)“非非”运算(运算(x1):令w1=-1,w2=1,b=-0.5,则:y=f(-1)x1+1x2+0.5)显然,无论x2为何值,x1为
27、1时,y的值都为0;x1为0时,y的值为1。即y总等于x1。(4)“异或异或”运算(运算(x1XOR x2)如果“异或”(XOR)问题能用单层感知器解决,则由XOR的真值表可知,w1、w2 和b 必须满足如下方程组:w1+w2-b0 w1+0-b0 0+0-b0 0+w2-b0 显然,该方程组是无解,这就说明单层感知器是无法解决异或问题的。X1X2输出11010101100053Jiangnan University单层感知器n 异或问题是一个只有两个输入和一个输出,且输入输出都只取1和0两个值的问题,分析起来比较简单。n对于比较复杂的多输入变量函数来说,到底有多少是线性可分的?多少是线性不可
28、分的呢?n相关研究表明,线性不可分函数的数量随着输入变量个数增加而快速增加,甚至远远超过线性可分函数的个数。n也就是说,单层感知器不能表达的问题的数量远远超过了它所能表达的问题的数量。n这也难怪当Minsky给出单层感知器的这一致命缺陷时,会使人工神经网络的研究跌入漫长的黑暗期。54Jiangnan Universityn单层感知器算法单层感知器算法例:例:单计算节点感知器,3个输入。给定3对训练样本对如下:X1=(-1,1,-2,0)T,d1=1 X2=(-1,0,1.5,-0.5)T,d2=1 X3=(-1,-1,1,0.5)T,d3=1 设初始权向量W(0)=(0.5,1,-1,0)T,
29、=0.1。注意,输入向量中第一个分量 X(0)恒等于-1,权向量中第一个分量为阈值,试根据以上学习规则训练该感知器。单层感知器55Jiangnan University解:第一步解:第一步 输入输入X1,得得 WT(0)X1=(0.5,1,-1,0)(-1,1,-2,0)T=2.5 y1(0)=sgn(2.5)=1 W(1)=W(0)+d1-y1(0)X1 =(0.5,1,-1,0)T+0.1(-1-1)(-1,1,-2,0)T =(0.7,0.8,-0.6,0)T56Jiangnan University第二步第二步 输入输入X2,得得 WT(1)X2=(0.7,0.8,-0.6,0)(-1
30、,0,1.5,-0.5)T=-1.6 y2(1)=sgn(-1.6)=-1 W(2)=W(1)+d2-y2(1)X2 =(0.7,0.8,-0.6,0)T+0.1-1-(-1)(-1,0,1.5,-0.5)T =(0.7,0.8,-0.6,0)T由于由于d2=y2(1),所以所以W(2)=W(1)。57Jiangnan University第三步第三步 输入输入X3,得得 WT(2)X3=(0.7,0.8,-0.6,0)(-1,-1,1,0.5)T=-2.1 y3(2)=sgn(-2.1)=-1W(3)=W(2)+d3-y3(2)X3 =(0.7,0.8,-0.6,0)T+0.11-(-1)(
31、-1,-1,1,0.5)T =(0.5,0.6,-0.4,0.1)T第四步第四步 返回到第一步,继续训练直到返回到第一步,继续训练直到 d p-y p=0,p=1,2,3。58Jiangnan University多层感知器多层感知器 在单层感知器的输入部分和输出层之间加入一层或多层处理单元,就构成了二层二层或多层多层感知器。在多层感知器模型中,只允许某一层的连接权值可调只允许某一层的连接权值可调,这是因为无法知道网络隐层的神经元的理想输出,因而因而难以给出一个有效的多层感知器学习算法难以给出一个有效的多层感知器学习算法。多层感知器克服了单层感知器的许多缺点,原来一些单层感知器无法解决的问题,
32、在多层感知器中就可以解决。例如,应用二层感知器就可以解决异或逻辑运算问题.59Jiangnan University60Jiangnan University4.3.2 反传(反传(BP)网络)网络nBP网络是一种前馈网络前馈网络,而误差反向传播误差反向传播神经网络n一般的前馈网络包括一个输入层输入层和一个输出层输出层,若干若干隐单元隐单元。隐单元可以分层也可以不分层,若分层,则称为多层前馈网络。网络的网络的输入、输出神经元其激活输入、输出神经元其激活函数一般取为线性函数函数一般取为线性函数,而,而隐单元则为非线性函数隐单元则为非线性函数。任意的前馈网络,不一定是分层网络或全连接的网络。61J
33、iangnan Universityn实验:增加隐藏层的层数和隐藏层神经元个数不一定总能够提高网络精度和表达能力。nBP网一般都选用二级网络(输入层一般不算一级)。结点的激励函数要求是可微的,通常选S型。62Jiangnan University多层前馈网络的每一层都是单层的网络,却无法用单却无法用单层感知器的学习方法层感知器的学习方法(?)(?)。其解决方法:通过误差函数求导使误差沿网络向后传播反向传播法的基本思路反向传播法的基本思路:从实际输出与标准输出之间的方差出发,沿网络内信号传输的相反方向逐层推算出每一层输出的相应偏差,据此调查各层单元间的联结权值及每个单元的阈值,经一系列样本数据的
34、训练,使网络趋向稳定,达到所要求的性能。BP网络的学习算法是算法的推广和发展,是一种监督学习。63Jiangnan UniversitynBP模型学习算法模型学习算法的基本思想为:的基本思想为:(1)从训练样本中取出一样本,把输入信息输入到网络中(2)由网络分别计算各层节点的输出(前向传播)(前向传播)(3)计算网络的实际输出和期望输出的误差(4)从输出层反向计算到第一隐层,根据一定原则向减小误差方向调整网络的各个连接权值(反向传播)(反向传播)(5)对训练样本集中的每一个样本重复以上步骤,直到对整个训练样本集的误差达到要求为止64Jiangnan UniversityBP网络1oOomO1h
35、O65Jiangnan University,hhjjiiiSw x()hhhjjjOfS,oohkkjjjSw O()oookkkOfS隐层节点j输出和输入节点i的关系:输出节点k和隐层输出节点j的关系:前向传播:前向传播:66Jiangnan University()okkktO学习过程:定义输出误差k误差反传(学习算法)22111()22mokkkkkEtO学习的目的是要使以下定义的误差平方和最小:67Jiangnan University()ooOkkkkoookjkkjfSEtOwSw()oohhkkjjjoojkjkjSw OOww首先,求输出层权值学习规则,求以下的偏导:(1)(
36、)()()ookjkjokjoohkjkjEwtwtwwtO68Jiangnan Universityn其次,求隐含层权值学习规则:2211()()22oOohkkkkkjjkkjEtOtfw O()()()hhoojjOkkkkhohhhkjikjjjioohhOkkjjkkiohkkjOSOSEtOwSOSwOSfStOxSO(1)()()()hhhhjijijijihjiEwtwtwtxw69Jiangnan UniversitynBP算法可以归纳如下:n(1)将权值和阈值初始化;n(2)提供输入和期望输出样本对;n(3)计算实际输出;n(4)调节输出权值和隐含层权值。70Jiangna
37、n University71Jiangnan UniversityBPBP算法的举例算法的举例设图中拓扑结构是一个简单的前向传播网络,用B-P算法确定其中的各连接权值时,的计算方法如下:72Jiangnan University73Jiangnan University74Jiangnan University75Jiangnan University123xw12w23y76Jiangnan UniversityBPBP网络结构的设计网络结构的设计 (1)确定输入、输出神经元个数(2)确定隐含层数和隐含层神经元个数(3)初始权值的选取(4)学习速率的选取(5)期望误差的选取训练精度的要求77
38、Jiangnan University神经网络的训练神经网络的训练 (1)收集和整理样本数据 采用BP神经网络方法建模的首要和前提条件是有足够多典型性好和精度高的样本。而且,为监控训练过程使之不发生“过拟合过拟合”和评价建立的网络模型的性能和泛化能力,必须将收集到的数据随机分成训练样本、测试样本2部分。(2)神经网络训练 BP网络的训练是应用误差反传原理,不断调整网络权值,使网络模型输出值与已知训练样本输出值之间的误差平方和达到最小或小于某一期望值。78Jiangnan UniversityBP网络的优点为:网络的优点为:(1)只要有足够多的隐层和隐层节点,BP网络可以逼近任意的非线性映射关系
39、;(2)BP网络的学习算法属于全局逼近算法,具有较强的泛化能力。(3)BP网络输入输出之间的关联信息分布地存储在网络的连接权中,个别神经元的损坏只对输入输出关系有较小的影响,因而BP网络具有较好的容错性。79Jiangnan UniversityBPBP网络的不足与改进网络的不足与改进 (1)BP网络的不足 训练次数多,使得学习效率低,收敛速度慢,需要较长的训练时间。形成局部极小而得不到全局最优。网络隐含层的层数和神经元数的选择尚无理论上的指导,一般根据经验或者通过反复实验确定。网络的学习和记忆具有不稳定性:大的学习速率可能导致系统的不稳定;如果增加了学习样本,训练好的网络就需要从头开始重新训
40、练,对于以前的权值和阈值是没有记忆的。80Jiangnan University81Jiangnan University(2)BP网络的改进 引入动量项引入动量项:为了提高网络的训练速度,在权值调整公式中增加一动量项,动量项反映了以前积累的调整经验,对于k时刻的调整能起到阻尼作用。当误差曲面出现骤然起伏时,可减少振荡趋势,提高训练速度。变步长法变步长法自适应学习速率自适应学习速率,其思想为:当连续两次迭代其梯度方向相同时,表明下降太慢,这时可使步长加倍;当连续两次迭代其梯度方向相反时,表明下降过头,这时可使步长减半。82Jiangnan UniversityBP神经网络的应用特点n 由于BP
41、网络具有很好的逼近非线性映射的能力,该网络在模式识别、图像处理、系统辨识、函数拟合、优化计算、最优预测和自适应控制等领域有着较为广泛的应用。n 由于BP网络具有很好的逼近特性和泛化能力,可用于神经网络控制器的设计。但由于BP网络收敛速度慢,难以适应实时控制的要求。83Jiangnan University重要结论 具有至少一个隐层的多层前馈网络,如果隐层单元足够多,那么,利用扁平激励函数和线性多项式集成函数,可以对任意感兴趣的函数逼近到任意精度。扁平激励函数定义:f:R 0,1 或-1,1是非减函数,是。或 1-1)(lim ,1)(lim ff 扁平激励函数的参数.理论证明:多层前馈网络是一
42、种通用逼近器 84Jiangnan University讨论讨论1)隐层的数目和节点的数目,何谓合适?2)是否收敛到全局最优?(涉及多维误差曲面的不确定性)3)3)收敛的速度问题。(涉及隐层节点输出的相互耦合和梯度下降法本身的缺点)1285Jiangnan Universityn多层前馈网络在应用中失败,原因:学习不适合、隐层单元不够或者输入与期望输出之间没有确定性关系。n虽然理论上,三层网络已经足够,但是在实际应用中,对于许多问题,用三层近似,隐层单元的数目要很多,以至于难以实现。因此,通常需要4层、5层或更多层次。n事实上,已经证明:单隐层网络不足以稳定,尤其在不连续映射中更是如此,而用阀值单元,两个隐层网络却是足够了。86Jiangnan UniversitynBP误差曲面的三个基本事实:n1)误差函数通常具有很多极小点。因为为了保持网络输入-输出函数不变,权值要进行多次组合置换,于是使误差曲面有多个凹谷。n2)在曲面全局最小值之上有局部极小点,这使得BP算法会陷入局部极小值。(经验表明:如果采用更多的隐层单元,陷入局部极小值的机会就小,因为BP学习算法的随机性质能帮助算法从极小值跳出。)n 3)在多个方向上,误差曲面具有多个低斜率的区域。87Jiangnan University基于matlab的神经网络设计BP网应用示例系统辨识88