前馈神经网络续.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
前馈神经网络续.ppt

目前实际应用中有两种权值调整方法。 上述标准BP算法中,每输入一个样本,都要回传误差并调整权值,亦称单样本训练,只针对每个样本产生的误差进行调整,难免顾此失彼,实践表明,使整个训练次数增加,导致收敛速度过慢。 另一种方法是在所有样本输入后,计算网络的总误差E总: P=0:0.05:4; %设置输入样本 T=[0.5:0.025:1 0.975:-0.025:0 0.025:0.025:0.5]; %期望输出值 %目标拟合曲线 plot(P,T) pause %生成1-4-1BP网络 net=newff(minmax(P),[4 1],{logsig purelin},trainlm); %设置第一第二层权值 net.IW{1}=[0.2;0.3;0.4;0.5]; net.LW{2}=[0.5 0.2 0.1 0.4 ]; %设置第一层第二层阈值均为零 net.b{1}=net.b{1}*0; net.b{2}=net.b{2}*0; %网络训练参数设置 net.trainparam.goal=0.0001;%设置训练误差值 net.trainparam.show=50;%设置数据显示刷新频率,学习50次刷新一次图象 net.trainparam.epochs=1000;%设置训练次数 [net,tr]=train(net,P,T);%进行网络训练 Y=sim(net,P);%进行仿真运算 pause plot(P,T,P,Y,r) net.IW{1}%输出第一层权值 net.LW{2}%输出第二层权值 程序2 579次学习训练结果 TRAINLM, Epoch 250/1000, MSE 0.0004573/0.0001, Gradient 0.0153443/1e-010 TRAINLM, Epoch 300/1000, MSE 0.000432378/0.0001, Gradient 0.118783/1e-010 TRAINLM, Epoch 350/1000, MSE 0.000323387/0.0001, Gradient 0.0136006/1e-010 TRAINLM, Epoch 400/1000, MSE 0.000291696/0.0001, Gradient 01e-010 TRAINLM, Epoch 450/1000, MSE 0.000268621/0.0001, Gradient 0.0024979/1e-010 TRAINLM, Epoch 500/1000, MSE 0.000268481/0.0001, Gradient 1.94005e-006/1e-010 TRAINLM, Epoch 550/1000, MSE 0.000268481/0.0001, Gradient 8.18043e-009/1e-010 TRAINLM, Epoch 579/1000, MSE 0.000268481/0.0001, Gradient 2.45883e-010/1e-010 TRAINLM, Maximum MU reached, performance goal was not met. W1 = -0.7044 -5.5470 -13.1458 3.9445 W2 = 3.3308 -0.6611 -0.2753 1.2390 程序2也没有实现训练精度! 程序1每执行一次会得到不同的训练结果,而程序2每次运行的结果总是相同的,都学习579次,权值解也不变.为什么? 因为,程序1的权值是每次随机生成,训练权值的起点不同,所得结果会不同.而程序2的初始权值是固定的,也就是说,从误差曲面的起点是固定的,训练方法一定的情况下,所的的解当然是不变的. 上述两程序,已经采用了不同的学习训练方法,但仍求不出理想效果,可以肯定的原因是:? 1.再增加隐节点试试 。 2.虽然本问题看似简单,可就曲线来看,是个不连续函数,BP的单隐层映射能力是不够的,所以应考虑采用双隐层试一试. 改程序2中单隐层节点数到10,运行分析结果 145次运行满足误差要求 TRAINLM, Epoch 0/1000, MSE 0.254221/0.0001, Gradient 6.15588/1e-010 TRAINLM, Epoch 50/1000, MSE 0.000189143/0.0001, Gradient 01e-010 TRAINLM, Epoch 100/1000, MSE 0.000123291/0.0001, Gradient 0.000869917/1e-01

文档评论(0)

000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档