ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:350.93KB ,
资源ID:22006444      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22006444.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(BP算法程序实现Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

BP算法程序实现Word文档格式.docx

1、式中 y “yoyyyjymT, 护打、:ioT对于隐层V = 3yX I式中 X “XoXgXjXn T ,沪二C 打-第T看出,BP算法中,各层权值调整公式形式上都是一样的, 均由3个因素决定,学习率n, 本层输出的误差信号3及本层输入信号丫(或X)。其中输出层误差信号同网络的期望输出与 实际输出之差有关,直接反映了输出误差,而各隐层的误差信号与前面各层的误差信号都有 关,是从输出层开始逐层反传过来的。反传过程可以简述为:d与o比较得到输出层误差信号3 计算输出层权值调整量厶 W 3通过隐层各节点反 传一计算各隐层权值的调整量厶V.例 采用BP网络映射下图曲线规律。109- / 03/ 0

2、7V r0.6 0.570.4 /彳- / -0 2 X0 1n1 II 1 1 1 ii/ / / ,0 0.5 1 I 5 2 25 3 3.5设计BP网络结构如下:单隐层1 4 1 B P网络权系数随机选取为:W2=0.2,w i3=0.3,w i4=0.4,w 15=0.5,w 26=0.5,W 36=0.2,W 46=0.1,W 56=0.4 o取学习率n =1按图中曲线确定学习样本数据如下表(每0.05取一学习数据,共80对)x (输入信号)y(教师信号)-0.00000.50003.00001.00004.0000按表中数据开始进行学习:第一次学习,输入x1=0.0000(1节点

3、第1次学习),d; =0.5000,计算2、3、4、5单元状态netj:netwxl =w1i *0.0000 =0.0000 i =2,3,4,5计算2、3、4、5各隐层单元输出yi ( i =2,3,4,5)y1 - f(netj =1心 eeti) =0.5计算输出层单元6的状态值net;及输出值y;0.51net6 二W;TYi 二 0.5 0.2 0.110.50.4 =0.60.5y6 -1/(1 et6) =1/(1 e6) =0.6457反推确定第二层权系数变化: 酩=y1(d6 y1)(1y6) =0.6457(0.50.6457)(1 0.6457) = -0.0333Wi

4、w 的1 i =2,3,4,5第一次反传修正的输出层权为:0.5 0.5 0.48330.2+ 1 *(-0.0333)0.18330.10.08330.4.1 1一0.5 一0.3833 一反推第一层权系数修正:& 二色脑側“1 -y;) i =2,3,4,5W1i =w 1x1Wi 二 0.2 0.3 0.4 0.5T第二次学习,x2 =0.0500,0.52502neti 二和治 i =2,3,4,5 =1/1 飞如2*) =1/1 e402 0.0500) =0.5025住=1/1 飞汕13小=1/1 e40-3 0.0500) =0.5037y =1/1 e”.4 0.0500) =

5、0.5050y =0.5062计算6单元状态net6:0.5025_t 匸 t 0.5037n et6 =W6tY = 0.4833 0.1833 0.0833 0.3833】 =0.57130.5050.0.5062 一代二 f(net6) =1/(1 e5713) = 0.6390按表中数据依次训练学习,学习次数足够高时,可能达到学习目的,实现权值成熟。一般网络学习训练次数很高,采用手工计算是不可能的,需要用计算机程 序求解。BP算法的编程步骤:图3.2三层BP网络结构343 BP算法的程序实现前面推导的BP网络算法是BP算法基础,称标准BP算法。目前神经网络的实现仍以软件编程为主。现以如

6、图的三层BP网络为例,说明标准O二。1。2Ok0 输出层输出向量;V珂V$2VjVm输入层到隐层间的权值矩阵;Vj 隐层第j个神经元对应的权列向量;W二W1W2WkW1 隐层到输出层间的权值矩阵;Wk输出层第k个神经元对应的权列向量;d=d2dkdJT网络期望输出向量。标准BP算法的程序实现网络止向传播阶段计算谋差初始化V.W计数器q = 1 = 1误差反向传播阶段计算各层误差信号琨=- 0*)(1 - = 1,2昇IV =(工弗少)(1 - . = 1 z调粮各层权值:E户=J岸(或F(以木节三层BP网络为例)NY结束E = 0,/ = ImF +祸昭=x = 0,1, , it增耳学习率,

7、01小数;E-误差变量”初值取0;对向瞳数组X、订賦 伉,计算Y、Q申各 分血计算网络输出误差, 设有P对训练样本, 网络对应不同样本的 误差酊让算各层误差信号炭=(dk 一 s)(l ok)ok = 1*2*昇i晡二(A 员)( 1 - yt)yi J = 1 ,加k - 1检查是否对所仔样本一次 轮训检查网络总误差是否达 到精度总误差E可取E?中最大 者,或小的均方根邸圧目前实际应用屮有两种权值调整方法。上述标准BP算法屮,每输入一个样本,都要回传误差并 调整权值,亦称单样木训练,只针对每个样本产生的误差进 行调整,难免顾此失彼,实践表明,使整个训练次数增加, 导致收敛速度过慢。另种方法是

8、在所有样本输入后,计算网络的总误差忙总:I p j E萨詔耳歼然后根据总误差E单计算各层的误差信号并调整权值,这种累 积误差的批处理方式称批(bdi)训练或周期(epoch)ifll练。 批训练遵循了以减小全局误差为目标的原则,因而可以保证误差 向减小方向变化.在样木数较多时,批训练比单样本训练时的收敛速度快。EP不同样本的 训练误差(共有 F对样本)检查训练精度可用E=E总,也可用Erme:批训练BPM法流程计算全部 训练样本 对的网络 的总误差用E计算各层误差信号调整各层权值E Emm所有样本对 输入后,用 网络的总误 差调整权 值,记作一 次权训练。训练次数程序可用一般咼级语言编写,如C

9、等,但考虑方便,最好米用MATLAE语言,特别是MATLAE环境中开发了工具箱( Toolboxes),其中神经网络 开发工具(Neural Network)提供很丰富的手段来完成EP等ANN设计与分析。Neural Network中提供了网络初始化函数用语构建基本网络,可自动生成 权值,提供各种转移函数,提供各种训练或学习方法与手段,并实现仿真运算, 监视网络训练误差等。BP网络的训练,可概括归纳为输入已知数据,权值初始化,训练网络三大 步。用神经网络工具箱训练 BP网络,权值初始化和训练网络都可调用 BP网络的相应工具函数。调用时,用户只需要将这些工具函数视为黑箱,知道输入什 么得到什么即

10、可,不必考虑工具函数内部究竟如何。EP网络的一些重要函数和功能(与版本有关)如表3.1 o表3.1BP网络的一些函数及功能函数功能newff创建一前馈EP网络(网络初始化函数)Initff前馈网络初始化(不超3层初始化函数)purelin线性传递(转移)函数tan sig正切S型传递函数(双极性S函数)logsig对数正切S型传递函数(单极性S函数)deltalinpurelin 神经元的S函数deltata ntan sig 神经元的S函数deltaloglogsig 神经元的S函数trainbpEP算法训练函数(标准)train bpx快速EP算法训练函数trai nlmLevenberg

11、-Marquardt 训练函数traingd梯度下降训练函数train gdm梯度下降、动量训练函数train gda梯度下降、自适应学习率训练函数train gdx梯度下降、动量和自适应学习训练函数simuff前馈网络仿真函数(网络计算和测试网络)errsurf计算误差曲面函数plotes绘制误差曲面函数ploterr绘制网络误差相对训练步曲线现行MATLAE工具中,神经元及网络模型表达略有差别基本神经元模型:厂个输入矢量= 4 (1儿 x 权值矢量 Wj=OV (j, D, W O, 2), , 评(n Ch偏置量右”则该神经 元净输入为巧=闪严*十勾,输 岀卩=/(町)。a) j/ =

12、purelin(5)b) = logsigG)c) = tansig(s)传递函数(转移函数):344多层前馈网络的主要能力多层前馈网络是目前应用最多的神经网络,这主要归结于基于 BP算法的多层前馈网络具有一些重要能力:(1) 非线性映射能力(2) 泛化能力(3) 容错能力3.4.5误差曲面与BP算法的局限性误差曲面与BP算法的局限性多层前馈网络的误差是各层权值和输入样木对的函数:F=F (Xp, W, V, dp)特别是权空间的维数较高,误差E是一个高维极其复杂的 曲面-称误差曲面。它有三个特点:(1) aVv V /11;一维权空间误差曲面存在平坦区域(2) 全局极小点不唯一(3) 存在多

13、个局部极小点ErroContourError SurfaceWeight WBias BOILNpa)3bs E3251505-1-1.5! nil / nrj i Hil l i iiiiu mi i 购i mil.V/I /1 ISV/ /z7/ /Hi;/ i 川仃遛 口I丿/ l!l I JI / 山 i/Ziti WUr i W/MWIIIIH H1 Iii Wil nlwxiizzw選l I I K 1 WWW 1nwWWW IIWWWW !WI 110 IIHI IAJ 11、 I MW-05 0 0.5在某些初始值 的条件下,算法的 结果会陷入局部极 小点,而不能自 拔,使训练

14、无法收 敛于给定误差。有采用遗传算 法来求全局极小点。误差曲面的多极值点的特点,使算法(以误差梯度降为权值调整依 据)无法辨认极小点性质:误差曲面的平坦区使训练次数大大增加,影响 收敛速度。这两个问题是BP算法的固有缺陷。称BP算法的局限性。其根源在于其误差梯度降的权值调整原则,每一步2求解都取局部绘 优口因为训练最终进入局部极小还是全局极小与网络权值的初态仃关,而 初始权值是随机确定的。故较复杂的多层前馈网,标准BP算法的收敛性星 无法预知的。3.5标准BP算法的改进标准BP算法在应用中暴露出一些缺陷:(1) 易形成局部极小而得不到全局最优;(2) 训练次数多,学习效率低,收敛速度慢;(3)

15、 隐节点选取缺乏理论指导;(4) 训练时学习新样本有遗忘旧样本的趋势。针对上述问题,国内外已提出一些有效的改进算法。3.5.1增加动量项(惯性调整算法) W(t)= n8 X+aA W(t-1)a -动量系数,取(0, 1)。 大都0.9左右E,若Ef,则3.5.2自适应调整学习率设一初始学习率,训练一批次权值调整后,看总误差n = Bn 1若EJ则n = n 实现合理步长调整3.5.3引入陡度因子入一一陡度因子n et/ 1 e采用压缩激活函数来改变误差函数,从而改变误差曲面的效果1 e_net欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书,学习资料等等打造全网一站式需求

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1