1 / 11
文档名称:

BP程序.doc

格式:doc   大小:22KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

BP程序.doc

上传人:wz_198614 2017/6/2 文件大小:22 KB

下载得到文件列表

BP程序.doc

相关文档

文档介绍

文档介绍:------------------------------------------------------------------------------------------------ —————————————————————————————————————— BP 程序例1 采用动量梯度下降算法训练 BP 网络。训练样本定义如下: 输入矢量为 p =[-1 -231 -115 -3] 目标矢量为 t= [-1 -11 1] 解: %P 为输入矢量 P=[-1, -2, 3, 1; -1, 1, 5, -3]; %T 为目标矢量 T=[-1, -1, 1, 1]; % =newff(minmax(P),[3,1],{'tansig','purelin'},&#3 9;traingdm') % {1,1} .b{1} % {2,1} .b{2} % . = 50; = ; n = ; = 1000; = 1e-3; % 调用 TRAINGDM 算法训练 BP 网络[net,tr]=,P,T); ------------------------------------------------------------------------------------------------ ——————————————————————————————————————%对 BP 网络进行仿真 A= ,P) % 计算仿真误差 E=T-A MSE=mse(E) 例2 采用贝叶斯正则化算法提高 BP 网络的推广能力。在本例中,我们采用两种训练方法,即 L-M 优化算法( trainlm )和贝叶斯正则化算法( trainbr ) ,用以训练 BP 网络,使其能够拟合某一附加有白噪声的正弦样本数据。其中, 样本数据可以采用如下 MATLAB 语句生成: 输入矢量: P= [-1::1] ; 目标矢量: randn( ’ seed ’,78341223) ; T= sin(2*pi*P)+*randn(size(P)) ; 解:本例的 MATLAB 程序如下: %P 为输入矢量 P= [-1::1 ]; %T 为目标矢量 randn('seed',78341223); T= sin(2*pi*P)+*randn(size(P)); % 绘制样本数据点 plot(P,T,'+'); hold on; plot(P,sin(2*pi*P),':'); % 绘制不含噪声的正弦曲线% =newff(minmax(P),[20,1],{'tansig&#39 ;,'purelin'}); disp('1. L-M 优化算法 TRAINLM'); disp('2. 贝叶------------------------------------------------------------------------------------------------ ——————————————————————————————————————斯正则化算法 TRAINBR'); choice=input(' 请选择训练算法(1,2):'); figure(gcf); if(choice==1) % 采用 L-M 优化算法.='trainlm'; % . = 500; = 1e-6; net=); % 重新初始化 elseif(choice==2) % 采用贝叶斯正则化算法.='trainbr'; % . = 500; randn('seed',192736547); net = ); % 重新初始化 end % 调用相应算法训练 BP 网络[net,tr]=,P,T); %对 BP 网络进行仿真 A= ,P); % 计算仿真误差 E=T- A; ------------------------------------------------------------------------------------------------ ————————————————————