神经网络-第四章bp.ppt
《神经网络-第四章bp.ppt》由会员分享,可在线阅读,更多相关《神经网络-第四章bp.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、神经网络原理神经网络原理第第4章章反向传播网络反向传播网络反向传播网络也称为BP(BackPropagation)网络,采用推广的W-H学习规则-BP算法BP网络的主要用途:网络的主要用途:1.函数逼近2.模式识别3.分类4.数据压缩:在人工神经网络的实际应用中,80%90%的网络模型都是BP网络及其变化形式。1BP网络模型与结构BP网络模型网络模型输入层隐层输出层1BP网络模型与结构BP网络的激活函数一定要可微多数情况下,隐层为S型,输出层为线性。输入与输出关系要求:非线性、光滑、取值连续,分类精确网络误差测定第p个样本的误差测度网络关于整个样本集的误差测度,1BP网络模型与结构权值与偏差:
2、隐层输出层,1BP网络模型与结构一组输入与输出多组输入与输出,关系表达式:1.输入向量、输出向量的维数、网络隐藏层的层数和 各个隐藏层神经元的个数的决定。2.BP网很多都选用二级网络。1BP网络模型与结构2BP学习规则是有指导训练的前馈多层网络训练算法,靠调节各层的加权,使网络学会由输入输出对组成的训练组。类似于感知器中线性单元和非线性单元的训练算法,执行优化的基本方法是梯度下降法。求多元函数的U(x1,x2,xn)的极小值:若出发点是M0=(x10,x20,xn0),则自变量按如下规则改变:,2BP学习规则 BPBP算法的主要思想:算法的主要思想:通过引入误差函数,对于学习样本通过引入误差函
3、数,对于学习样本P及目标输出及目标输出T,利用梯度下降法来调整权值利用梯度下降法来调整权值W和和B,使网络的实际使网络的实际输出输出A与与T尽可能接近尽可能接近,而使,而使误差误差尽量达到尽量达到最小最小。其过程是用输出层的误差估计输出层的直接前导其过程是用输出层的误差估计输出层的直接前导层的误差,再用输出层前导层误差估计更前一层的误层的误差,再用输出层前导层误差估计更前一层的误差。如此获得所有其它各层的误差估计,并用这些估差。如此获得所有其它各层的误差估计,并用这些估计实现对权矩阵的修改。形成将输出端表现出的误差计实现对权矩阵的修改。形成将输出端表现出的误差沿着与输入信号相反的方向逐级向输入
4、端传递的过程沿着与输入信号相反的方向逐级向输入端传递的过程 BPBP算法从形式上看,分为两个计算过程:算法从形式上看,分为两个计算过程:1信息的正向传递;信息的正向传递;2.调整调整W和和B的误差反向传播的误差反向传播2BP学习规则1.信息的正向传递隐层中第i个神经元输出:输出层中第k个神经元输出:2BP学习规则误差函数一组输入情形:其中,2BP学习规则q组输入情形:2BP学习规则2.误差反向传播 输出层权值、偏差的调整因为故由最速下降法,得权值改变量:2BP学习规则偏差改变量:其中 隐层权值、偏差的调整因为2BP学习规则故由最速下降法,得其中3误差反向传播的流程图与图形解释3误差反向传播的流
5、程图与图形解释S型激活函数1(0,0.5)n(0,0)o0.5f(n)0.25o014BP网络的训练及其设计过程设计设计Bp网络的结构包括以下内容:网络的结构包括以下内容:网络的层数,每层神经元数,每层的激活函数等网络的层数,每层神经元数,每层的激活函数等BP网络的训练步骤:网络的训练步骤:1)初始化)初始化每层权值和偏差,期望误差,最大循环次数,学习率等每层权值和偏差,期望误差,最大循环次数,学习率等2)建立多层前向网络)建立多层前向网络函数函数newcf.m或或newff.m,格式如下:格式如下:net=newcf(minmax(P),5,1,tansigpurelin,traingd);
6、3)训练训练net=train(net,P,T)4BP网络的训练及其设计过程例例4.1用于函数逼近的用于函数逼近的BP网络的设计。网络的设计。迭代次数:经过迭代次数:经过4000-7000次训练成功,误差小于次训练成功,误差小于给定的门限误差给定的门限误差0.02。误差变化图:逼近曲线效果良好误差变化图:逼近曲线效果良好结论:二层结论:二层BP网络可很好地逼近非线性函数。网络可很好地逼近非线性函数。算法算法traingd.m的的缺省参数缺省参数:Net.trainParam.epochs=10;%最大训练次数最大训练次数Net.trainParam.goal=0;%训练误差门限值训练误差门限值
7、Net.trainParam.lr=0.15;%学习率学习率Net.trainParam.min_grad=le-10%最小执行梯度最小执行梯度Net.trainParam.show=25;%显示循环间隔数显示循环间隔数Net.trainParam.time=inf%最大训练时间最大训练时间5BP网络的设计考虑考虑因素因素:层数,每层神经元数,初始化,学习率等:层数,每层神经元数,初始化,学习率等1 1 网络的层数网络的层数理论结果:具有偏差和至少一个理论结果:具有偏差和至少一个S型隐含层的网络,型隐含层的网络,能够逼近任意的有理函数。能够逼近任意的有理函数。层数对网络影响:增加层数可进一步降
8、低误差,提层数对网络影响:增加层数可进一步降低误差,提高精度;不足之处是使网络结构复杂化。高精度;不足之处是使网络结构复杂化。隐层节点数对网络影响:可提高精度,降低误差;虽隐层节点数对网络影响:可提高精度,降低误差;虽然也增加了一点网络的复杂度,但比增加层数要低然也增加了一点网络的复杂度,但比增加层数要低设计的原则:首先应选择层数较少的网络,这样可降设计的原则:首先应选择层数较少的网络,这样可降低复杂度;同时为了提高精度和降低误差,应先考虑低复杂度;同时为了提高精度和降低误差,应先考虑增加隐层的神经元数目。增加隐层的神经元数目。5BP网络的设计例例4.2考虑两个单元输入的联想问题:其输入和输出
9、为:考虑两个单元输入的联想问题:其输入和输出为:P=-32,T=0.4,0.8目标误差:目标误差:0.001该问题可采用该问题可采用自适应网络自适应网络解决:解决:w=0.08,b=0.64,e=T-A=0利用利用Bp网络网络解决:有一定误差。解决:有一定误差。结论结论:能利用自适应网络或感知器解决的问题,应尽:能利用自适应网络或感知器解决的问题,应尽量不用量不用Bp网络;能利用单层网络解决的问题,应尽网络;能利用单层网络解决的问题,应尽量多层网络解决。量多层网络解决。5BP网络的设计例例4.3用一层网络来实现下面的输入用一层网络来实现下面的输入/输出关系:输出关系:P=-6-6.1-4.1-
10、444.166.1T=0.00.00.970.990.010.0311理论分析:约束等式共理论分析:约束等式共8个,参数个,参数1个权值个权值+1个偏差。个偏差。因此,可能无准确解。因此,可能无准确解。仿真计算:可求出近似解。但效果与线性网络相当。仿真计算:可求出近似解。但效果与线性网络相当。逼近图效果:近似解相当于一种分类功能。逼近图效果:近似解相当于一种分类功能。结论:利用单层网络解决问题,应先考虑利用感知结论:利用单层网络解决问题,应先考虑利用感知器和自适应线性元件。器和自适应线性元件。5BP网络的设计例例4.4非线性误差曲面特性观察非线性误差曲面特性观察BP网络的误差函数网络的误差函数
11、E凸凹不平,有些地方很平坦,凸凹不平,有些地方很平坦,另外的地方很陡峭,这对算法的效果有较大影响。另外的地方很陡峭,这对算法的效果有较大影响。从提高算法的效率上讲,在陡峭的地方应选择小的从提高算法的效率上讲,在陡峭的地方应选择小的学习率,以避免学习率,以避免“过调过调”,在平坦的地方利用大学习,在平坦的地方利用大学习率,以加快收敛速度。率,以加快收敛速度。结论:常学习率在误差曲面非常不规则时可能效果结论:常学习率在误差曲面非常不规则时可能效果不好。不好。5BP网络的设计2 2 隐含层的神经元数隐含层的神经元数问题:隐含层的神经元数应选择为多少才适合?问题:隐含层的神经元数应选择为多少才适合?例
12、例用两层用两层BP网络实现网络实现“异或异或”问题。问题。数学描述:输入及目标输出矢量数学描述:输入及目标输出矢量隐层神经元数分别为:隐层神经元数分别为:2,3,4,5,6,20,25,30对二值型离散数据也能利用对二值型离散数据也能利用BP网络逼近网络逼近:训练时可将二值型激活函数利用训练时可将二值型激活函数利用S型代替,训练成功型代替,训练成功后,将输出层的激活函数换成二值型函数,则训练达后,将输出层的激活函数换成二值型函数,则训练达到一定精度时,实际输出与目标输出一致。到一定精度时,实际输出与目标输出一致。5BP网络的设计训练效果表训练效果表s1Time(s)epoch25.711183
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 神经网络 第四 bp
限制150内