多层前馈神经网络.doc

上传人:仙人指路1688 文档编号:2316826 上传时间:2023-02-11 格式:DOC 页数:9 大小:305KB
返回 下载 相关 举报
多层前馈神经网络.doc_第1页
第1页 / 共9页
多层前馈神经网络.doc_第2页
第2页 / 共9页
多层前馈神经网络.doc_第3页
第3页 / 共9页
多层前馈神经网络.doc_第4页
第4页 / 共9页
多层前馈神经网络.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《多层前馈神经网络.doc》由会员分享,可在线阅读,更多相关《多层前馈神经网络.doc(9页珍藏版)》请在三一办公上搜索。

1、5 多层前馈网络及BP算法多层前馈网络的反向传播 (BP)学习算法,简称BP算法,是有导师的学习,它是梯度下降法在多层前馈网中的应用。(a) 网络结构见下图,、是网络的输入、输出向量,神经元用节点表示,网络由输入层、隐层和输出层节点组成,隐层可一层,也可多层(图中是单隐层),前层至后层节点通过权联接。由于用BP学习算法,所以常称BP神经网络。每个神经元(节点)的输入;每个神经元(节点)的输出;神经元的第个输入。神经元到神经元的连接权节点的作用函数:, 为阈值(可设置一个偏置节点代替)可为线性函数,一般取为Sigmoid函数 , 为很小的数,如0.1(b) BP学习算法 已知网络的输入/输出样本

2、,即导师信号。 BP学习算法由正向传播和反向传播组成: 正向传播是输入信号从输入层经隐层,传向输出层,若输出层得到了期望的输出,则学习算法结束;否则,转至反向传播。 反向传播是将误差(样本输出与网络输出之差)按原联接通路反向计算,由梯度下降法调整各层节点的权值和阈值,使误差减小。BP学习算法步骤如下:(1) 设置初始权值,它是较小的随机非零值。(2) 给定输入/输出样本对,计算网络的输出。设第p组样本输入: 输出:节点 在第 组样本输入时,输出为 : -(1式)式中,是在第 组样本输入时,节点 的第 个输入。 取可微的 型作用函数式 = -(2式)可由输入层隐层至输出层,求得网络输出层节点的输

3、出。(1) 计算网络的目标函数 设 为在第 组样本输入时,网络的目标函数,取范数,则-(3式)式中,是在第 组样本输入时,经 次权值调整后网络的输出:是输出层第 个节点。网络的总目标函数: = -(4式)作为对网络学习状况的评价。(2) 判别 若 -(5式)算法结束;否则,至步骤(4)。式中,是预先确定的,.(3) 反向传播计算由输出层,依据 ,按梯度下降法反向计算,可逐层调整权值。由式,取步长为常值,可得到神经元到神经元的连接权次调整算式:-6式)式中,为步长,在此称为学习算子。具体算法如下: -(7式)设 -(8式)式中,是第个节点的状态对的灵敏度(第组样本输入时)。又(7式)(8式)可得

4、: -(9式)分以下两种情况计算。 若为输出节点,由(3式)和(8式)可得: -(10式)将(10式)代入(7式),则: -(11式) 若不是输出节点,此时(8式)为: -(12式)其中 (13式)式中,是节点 后边一层的第个节点;是节点的第个输入(第组样本输入时),当时 将(12式)和(13式)代入(7式),有 -(14式)可见,由(11式)和(14式),可进行(6式)的权值调整计算。(c)几个问题讨论: (1)实现输入/输出的非线性映射 (2)输入/输出的归一化,即将输入输出转化到(0,1) (3)泛化能力 (4)训练误差 (5)BP的不足l 收敛速度慢,局部最优点,收敛速度与初始权的选择

5、有关l 隐层及接点数的选择无理论指导l 新加入的样本会影响到已学好的样本(6)改进的BP算法例: 算法的思路及计算过程为了找出小麦产量与化肥用量的关系, 观测得到了多组数据, 如化肥用量为0.01吨/每亩时,产量为0.3吨/每亩, 0.015吨/每亩时,产量为0.350吨/每亩, 0.020吨/每亩时,产量为0.380吨/每亩, 若化肥用量为0.050吨/每亩,则产量为多少?思路: 假设产量为,化肥用量为,需要根据已知数据求出.可利用神经网络实现与之间的映射关系.输入/输出样本对有三个(p=3),为0.01, 0.3; 0.015, 0.35; 0.02, 0.38;假设权值的初始值为: 输入

6、到隐层: ,; 隐层到输出: ,.节点的作用函数,此例仅为演示BP训练过程,为计算方便,取,阈值取为0(不为0时,需加一个偏置节点)(1)对第一个样本(p=1): 隐层节点1的输入为: ;隐层节点2的输入为: ;隐层节点1的输出为: ;隐层节点2的输出为: ;输出节点的输入为:输出节点的输出为:和期望输出的误差为:隐层到输出层的权值调整():输入层到隐层的权值调整():(2)同理求得第2、第3个样本时的。(3)更新权值(4)如果训练误差=回到步骤(1),否则结束例: 利用Matlab中的神经网络工具箱,使用BP网络实现对正弦函数的逼近。程序:p=-1:0.1:1t=-0.9602 -0.577

7、0 -0.0729 0.3771 0.6405 0.66 0.4609 0.1336 -0.2013 -0.4344 -0.5 -0.3930 -0.1647 0.0988 0.3072 0.3960 0.3449 0.1816 -0.0312 -0.2189 -0.3201S1=5;w1,b1,w2,b2=initff(p,S1,tansig,t,purelin);df=10;me=8000;eg=0.02;lr=0.01;tp=df me eg lr;w1,b1,w2,b2,ep,tr=trainbp(w1,b1,tansig,w2,b2,purelin,p,t,tp);思考题:输入/输出样本对有两个(p=2),为0.1, 0.2; 0.15, 0. 5。请按照BP算法的训练过程给出BP算法训练的第1个循环的计算。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号