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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、BP学习算法也可写成向量形式:对输出层W5oyTT式中yy0 y1y2yj ymT , 5oo o o o T 1 2 k l 对于隐层V5yXT TXxox1x2xi xn T , 5yy y y y T 1 2 j m 看出,BP算法中,各层权值调整公式形式上都是一样的, 均由3个因素决定,学习率n, 本层输出的误差信号S及本层输入信号丫(或X)。其中输出层误差信号同网络的期望输出与 实际输出之差有关,直接反映了输出误差,而各隐层的误差信号与前面各层的误差信号都有 关,是从输出层开始逐层反传过来的。反传过程可以简述为:d与o比较得到输出层误差信号5-计算输出层权值调整量厶W *通过隐层各节

2、点反传 一计算各隐层权值的调整量 V.例 采用BP网络映射下图曲线规律。设计BP网络结构如下:单隐层1 4 1 B P网络权系数随机选取为:W2=0.2,w i3=0.3,w m=0.4,w 15=0.5,w26=0.5,W 36=0.2,W 46=0.1,W 56=0.4 0取学习率n =1按图中曲线确定学习样本数据如下表(每0.05取一学习数据,共80对)x (输入信号)y(教师信号) 0.00000.50003.00001.00004.0000按表中数据开始进行学习:第一次学习,输入x;=0.0000(1节点第1次学习),d6 0.5000,计算2、3、4、5单元状态netj:1neti

3、 w1ix1 w1i ?0.0000 0.0000 i =2,3,4,5计算2、3、4、5各隐层单元输出yi ( i =2,3,4,5)y1 f(neti) 1/(1 e neti ) 0.5计算输出层单元6的状态值net6及输出值y:0.5t 0.5net6 W6 Yi 0.5 0.2 0.1 0.4 0.6y6 1/(1 e net6) 1/(1 e 0.6) 0.6457反推确定第二层权系数变化:0 y1(d1 y;)(1 y6) 0.6457(0.5 0.6457)(1 0.6457) 0.03330 0 1 r C LWi6 Wi6 i6 yi I 2,3,4,5第一次反传修正的输出

4、层权为:0.48330.20.18331?( 0.0333)0.10.08330.40.3833反推第一层权系数修正:1 0 0 1 1 1i i6Wi6yi (1 yi) i 2,3,4,50 1 1Wi Wi 11X1Wi 0.2 0.3 0.4 0.5T第二次学习,x2 0.0500,d62 0.52502neti w1ix1 I 2,3,4,5y221/1e( w12 x12 )e (0.2 0.0500 ) e0.5025y32( w13 x1 ) e (0.3 0.0500) e0.5037y4(0.4 0.0500) 0.5050y52 0.5062计算 6 单元状态 net6

5、:T 0.5037 net6 W6TYi 0.4833 0.1833 0.0833 0.3833 0.57136 6 i 0.50500.5062y62 f (net6) 1/(1 e 0.5713 ) 0.6390按表中数据依次训练学习,学习次数足够高时,可能达到学习目的,实现权值成熟。一般网络学习训练次数很高,采用手工计算是不可能的,需要用计算机程序求解。343 BP算法的程序实现前面推导的BP网络算法是BP算法基础,称标准BP算法。目前神经网络的实现仍以软件编程为主。现以如图的三层BP网络为例,说明标准BP算法的编程步骤:斯 Xj * * Xf * * * X 挖“图3.2三层BP网络结

6、构0 。1。2 Ok 。1 输出层输出向量;V V1V2 Vj Vm输入层到隐层间的权值矩阵;Vj 隐层第j个神经元对应的权列向量;w WW Wk W1隐层到输出层间的权值矩阵;Wk输出层第k个神经元对应的权列向量;d=did2 dk dJT网络期望输出向量。标准BP算法的程序实现网络正向传播阶段误羞反向传播阶段输人样本,计算各层输岀 yi = /( 血o* - /( WjYkk = 1*2*,/尹增It增1N计算误差E = 0 1初始化VW 计数器q = 1=】E P = 试 (以木节二层BP网络为例)il薛齐13滾差信号釁=(山-叩)(1 - 0()o*TA = 1*2,“t町=(另晔j

7、)门-J = 1Z皿调幅各层权憤:E初始化 V.w * n . E. P. Enihi 计数器g二1 ,p二1输入样本,计算各层输岀yi = f( vx).j = 1,2,皿 心=/( wY).k - 1.2,Jw W权值矩阵初始化 为随机矩阵: 巴训练样木对总数; q 训练次数记数器; p样本模式记数器: 几一学习率,01小数帛 E误差变量*初值取0; Emin-网络训练精度,止 小数。用牛沉样木X”川对向量数组X、dx 计綫中各分出EP =- of)2计算网络输出谋差. 设仃P对训练样本.网络对应不同样不的 i吴差庄H询实际应用屮冇两种权值调整方法。上述标准BP算法屮,每输入一个样本,都要

8、回传误差并 调整权值,亦称单样本训练,只针对每个样本产生的误差进 行调整,难免顾此失彼,实践表明,使整个训练次数增加, 导致收敛速度过慢。另一种方法是在所右样木输入后,计算网络的总误差Kp1 p tE萨第若族-。然肩根据总误差环计盲名层矗误差信号并调整权值,这种累 积误差的批处理方式称为批(B;di)训练或周期(epoch)训练口 批训练遵循了以减小全局误差为目标的原则,因而可以保证误差 向减小方向变化*在样本数较多时,批训练比单样本训练吋的收 敛速度快。检查训纟*精度可用E=g,也可用E:幣人第对样本计TJ误蛙e 世 |E 2a - 如)*调塾各E我值血N * = = 1站束计算全部 训练样

9、本 对的网络 的总误差用E计算各层误差信号调整备层权值结束所冇样木对 输入后,用 网络的总误 差调整权值,记作一 次权训练。训练次数程序可用一般咼级语言编写,如C等,但考虑方便,最好米用MATLAE语言,特别是MATLAE环境中开发了工具箱( Toolboxes),其中神经网络 开发工具(Neural Network)提供很丰富的手段来完成EP等ANN设计与分析。Neural Network中提供了网络初始化函数用语构建基本网络,可自动生成 权值,提供各种转移函数,提供各种训练或学习方法与手段,并实现仿真运算, 监视网络训练误差等。BP网络的训练,可概括归纳为输入已知数据,权值初始化,训练网络

10、三大 步。用神经网络工具箱训练BP网络,权值初始化和训练网络都可调用 BP网络的相应工具函数。调用时,用户只需要将这些工具函数视为黑箱,知道输入什 么得到什么即可,不必考虑工具函数内部究竟如何。EP网络的一些重要函数和功能(与版本有关)如表3.1 o表3.1BP网络的一些函数及功能函数功能newff创建一前馈EP网络(网络初始化函数)Initff前馈网络初始化(不超3层初始化函数)purelin线性传递(转移)函数tan sig正切S型传递函数(双极性S函数)logsig对数正切S型传递函数(单极性S函数)deltalinpurelin 神经元的S函数deltata ntan sig 神经元的

11、S函数deltaloglogsig 神经元的S函数trainbpEP算法训练函数(标准)train bpx快速EP算法训练函数trai nlmLevenberg-Marquardt 训练函数traingd梯度下降训练函数train gdm梯度下降、动量训练函数train gda梯度下降、自适应学习率训练函数train gdx梯度下降、动量和自适应学习训练函数simuff前馈网络仿真函数(网络计算和测试网络)errsurf计算误差曲面函数plotes绘制误差曲面函数ploterr绘制网络误差相对训练步曲线现行MATLAE工具中,神经元及网络模型表达略有差别 基本神经元模型:厂个输人矢量X= x

12、(1) T r 权值矢量附j=w 5 1), W (;, 2人r d (八刀,偏置最则该神经 元净输入为输传递函数(转移函数):y=1/(1+e s);双曲正切 S 型传递函数 tan sig (s) 即二tan sigs,即 y二(1-e s) /BP算法的3.4.4 多层前馈网络的主要能力 多层前馈网络是目前应用最多的神经网络,这主要归结于基于 多层前馈网络具有一些重要能力:(1)非线性映射能力2)泛化能力3)容错能力345误差曲面与BP算法的局限性误差曲面与BP算法的局限性多层前馈网络的谋差是各层权值和输入样木对的函数:E=F (Xp, W, V, P)特别是权空间的维数较高,误差卫是一个高维极英复杂的 曲面一称误差曲面。它有三个特点:(1)存在平坦区域(2)全局极小点不唯一(3)存在多个局部极小点Error SurfaceWeight W 1 Bias BError ConlaurTl在某些初始值 的条件下,算法的 結果会陷入局部极 小点,而不能自 拔,使训练无法收 敛于给定误差。误差曲面的多极值点的特点使BP

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

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