2022年完整word版,MATLAB程序代码--bp神经网络通用代码 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年完整word版,MATLAB程序代码--bp神经网络通用代码 .pdf》由会员分享,可在线阅读,更多相关《2022年完整word版,MATLAB程序代码--bp神经网络通用代码 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、MATLAB 程序代码 -bp 神经网络通用代码matlab通用 神经网络代码学习了一段时间的神经网络,总结了一些经验 ,在这愿意和大家分享一下, 希望对大家有帮助,也希望大家可以把其他神经网络的通用代码在这一起分享感应器神经网络、线性网络、BP 神经网络、径向基函数网络%通用感应器神经网络。P=-0.5 -0.5 0.3 -0.1 -40;-0.5 0.5 -0.5 1 50;%输入向量T=1 1 0 0 1;%期望输出plotpv(P,T);% 描绘输入点图像net=newp(-40 1;-1 50,1);%生成网络,其中参数分别为输入向量的范围和神经元感应器数量hold on lineh
2、andle=plotpc(net.iw1,net.b1); net.adaptparam.passes=3; for a=1:25% 训练次数net,Y,E=adapt(net,P,T); linehandle=plotpc(net.iw1,net.b1,linehandle); drawnow; end %通用 newlin 程序%通用线性网络进行预测time=0:0.025:5; T=sin(time*4*pi); Q=length(T); P=zeros(5,Q);%P中存储信号T 的前 5(可变,根据需要而定)次值,作为网络输入。名师资料总结 - - -精品资料欢迎下载 - - - -
3、 - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - P(1,2:Q)=T(1,1:(Q-1); P(2,3:Q)=T(1,1:(Q-2); P(3,4:Q)=T(1,1:(Q-3); P(4,5:Q)=T(1,1:(Q-4); P(5,6:Q)=T(1,1:(Q-5); plot(time,T)% 绘制信号 T 曲线xlabel( 时间 ); ylabel( 目标信号 ); title( 待预测信号 ); net=newlind(P,T);%根据输入和期望输出直接生成线性网络a=sim(
4、net,P);% 网络测试figure(2) plot(time,a,time,T,+) xlabel( 时间 ); ylabel( 输出 -目标 +); title( 输出信号和目标信号); e=T-a; figure(3) plot(time,e) hold on plot(min(time) max(time),0 0,r:)%可用 plot(x,zeros(size(x),r:)代替hold off xlabel( 时间 ); ylabel( 误差 ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
5、- - - - - - 第 2 页,共 9 页 - - - - - - - - - title( 误差信号 ); %通用 BP 神经网络P=-1 -1 2 2;0 5 0 5; t=-1 -1 1 1; net=newff(minmax(P),3,1,tansig,purelin,traingd); %输入参数依次为 :样本 P 范围 ,各层神经元数目,各层传递函数 ,训练函数 %训练函数 traingd- 梯度下降法,有7 个训练参数 . %训练函数 traingdm- 有动量的梯度下降法,附加 1 个训练参数mc(动量因子,缺省为0.9) %训练函数 traingda- 有自适应 lr 的
6、梯度下降法 ,附加 3 个训练参数 :lr_inc( 学习率增长比, 缺省为 1.05; % lr_dec( 学习率下降比, 缺省为 0.7);max_perf_inc(表现函数增加最大比, 缺省为 1.04) %训练函数 traingdx- 有动量的梯度下降法中赋以自适应lr 的方法,附加traingdm 和 traingda 的 4个附加参数%训练函数 trainrp- 弹性梯度下降法,可以消除输入数值很大或很小时的误差,附加4 个训练参数 : % delt_inc( 权值变化增加量,缺省为1.2);delt_dec( 权值变化减小量,缺省为0.5); % delta0( 初始权值变化,缺
7、省为0.07);deltamax( 权值变化最大值 ,缺省为 50.0) % 适合大型网络%训练函数 traincgf-Fletcher-Reeves共轭梯度法 ;训练函数 traincgp-Polak-Ribiere共轭梯度法 ; %训练函数 traincgb-Powell-Beale共轭梯度法%共轭梯度法占用存储空间小,附加 1 训练参数 searchFcn( 一维线性搜索方法,缺省为 srchcha); 缺少 1个训练参数 lr %训练函数 trainscg- 量化共轭梯度法,与其他共轭梯度法相比,节约时间.适合大型网络% 附加 2 个训练参数 :sigma( 因为二次求导对权值调整的影
8、响参数,缺省为5.0e-5); % lambda(Hessian阵不确定性调节参数,缺省为5.0e-7) % 缺少 1 个训练参数 :lr 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - %训练函数 trainbfg-BFGS拟牛顿回退法 ,收敛速度快 ,但需要更多内存,与共轭梯度法训练参数相同,适合小网络%训练函数 trainoss- 一步正割的 BP 训练法 ,解决了 BFGS 消耗内存的问题 ,与共轭梯度法训练参数相同%训
9、练函数 trainlm-Levenberg-Marquardt训练法 ,用于内存充足的中小型网络net=init(net); net.trainparam.epochs=300; %最大训练次数 (前缺省为 10, 自 trainrp 后,缺省为100) net.trainparam.lr=0.05; %学习率 (缺省为 0.01) net.trainparam.show=50; %限时训练迭代过程(NaN 表示不显示,缺省为25) net.trainparam.goal=1e-5; %训练要求精度 (缺省为 0) %net.trainparam.max_fail 最大失败次数 (缺省为 5)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年完整word版 MATLAB程序代码-bp神经网络通用代码 2022 完整 word MATLAB 程序代码 bp 神经网络 通用 代码
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内