📄 g7.m
字号:
% ***用于函数逼近的BP网络设计***
% 设计一两层BP网络,其网络的隐层各神经元的激活函数为双曲正切型,
% 输出层各神经元的激活函数为线性函数,隐层含有5个神经元,
% 并且有如下21组输入矢量和相对应的目标矢量:
p=-1:0.1:1;
t=[-0.96 -0.577 -0.0729 0.377 0.641 0.66 0.461 0.1336 -0.201 -0.434 -0.5 -0.393 -0.1647 0.0988 0.3072 0.396 0.3449 0.1816 -0.0312 -0.2183 -0.3201];
plot(p,t)
pause
%首先对网络进行初始化
[R,Q]=size(p);
[S2,Q]=size(t);
S1=5;
[w1,b1]=rands(S1,R);
[w2,b2]=rands(S2,S1);
%用输入矢量p计算网络的输出
A2=purelin(w2*tansig(w1*p,b1),b2);
plot(p,A2)
pause
%下面定义网络训练参数
disp_fqre=10;max_epoch=18000;err_goal=0.01;lr=0.01;
TP=[disp_fqre max_epoch err_goal lr];
[w1,b1,w2,b2,epochs,errors]=trainbp(w1,b1,'tansig',w2,b2,'purelin',p,t,TP)
%运行上述程序后,可以返回训练后的权值,训练次数和误差平方和
ploterr(errors)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -