BP神经网络Matlab实例2.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
变量mu确定了学习是根据牛顿法还是梯度法来完成,下式为更新参数的L-M规则:? ?%? ?? ?jj = jX * jX%? ?? ?je = jX * E%? ?? ?dX = -(jj+I*mu) \ je随着mu的增大,LM的项jj可以忽略。因此学习过程主要根据梯度下降即mu/je项,只要迭代使误差增加,mu也就会增加,直到误差不再增加为止,但是,如果mu太大,则会使学习停止,当已经找到最小误差时,就会出现这种情况,这就是为什么当mu达到最大值时要停止学习的原因。mu为u的初始值,默认为0.001mu_dec为u的减小率,默认为0.1mu_inc为u的增长率,默认为10mu_max为u的最大值,默认为1e10BP神经网络Matlab实例(1)采用Matlab工具箱函数建立神经网络,对一些基本的神经网络参数进行了说明,深入了解参考Matlab帮助文档。% 例1 采用动量梯度下降算法训练 BP 网络。?% 训练样本定义如下:?% 输入矢量为?????%??p =[-1 -2 3??1??%??????-1??1 5 -3]?% 目标矢量为???t = [-1 -1 1 1]?close all??clear??clc?% ---------------------------------------------------------------% NEWFF——生成一个新的前向神经网络,函数格式:% net = newff(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF) takes,% PR -- R x 2 matrix of min and max values for R input elements% (对于R维输入,PR是一个R x 2 的矩阵,每一行是相应输入的边界值)% Si -- 第i层的维数% TFi -- 第i层的传递函数, default = tansig% BTF -- 反向传播网络的训练函数, default = traingdx% BLF -- 反向传播网络的权值/阈值学习函数, default = learngdm% PF -- 性能函数, default = mse% ---------------------------------------------------------------% TRAIN——对 BP 神经网络进行训练,函数格式:%??train(NET,P,T,Pi,Ai,VV,TV),输入参数:% net -- 所建立的网络% P -- 网络的输入% T -- 网络的目标值, default = zeros% Pi -- 初始输入延迟, default = zeros% Ai -- 初始网络层延迟, default = zeros% VV -- 验证向量的结构, default = []% TV -- 测试向量的结构, default = []% 返回值:% net -- 训练之后的网络% TR -- 训练记录(训练次数及每次训练的误差)% Y -- 网络输出% E -- 网络误差% Pf -- 最终输入延迟% Af -- 最终网络层延迟% ---------------------------------------------------------------% SIM——对 BP 神经网络进行仿真,函数格式:% [Y,Pf,Af,E,perf] = sim(net,P,PiAi,T)% 参数与前同。% ---------------------------------------------------------------%?%??定义训练样本??% P 为输入矢量?echo onP=[-1,??-2,????3,????1;????-1,????1,????5,??-3];?% T 为目标矢量??T=[-1, -1, 1, 1];??%??创建一个新的前向神经网络??net=newff(minmax(P),[3,1],{tansig,purelin},traingdm)?% ---------------------------------------------------------------% 训练函数:traingdm,功能:以动量BP算法修正神经网络的权值和阈值。% 它的相关特性包括:% epochs:训练的次数,默认:100% goal:误差性能目标值,默认:0% lr:学习率,默认:0.01% max_fail:确认样本进行仿真时,最大的失败次数,默认:5% mc:动量因子,默认:0.9% min_grad:最小梯度值,默认:1e-10% show:显示的间隔次数,默认:25% time:训练的最

文档评论(0)

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

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

1亿VIP精品文档

相关文档