⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bp1.m

📁 matlab编写的2层BP神经网络实现的正弦曲线
💻 M
字号:
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];
P2=-1:0.025:1;
[R,Q] = size(P);
[S2,Q]= size(T);
S1=5;
[W1,B1]= rands(S1,R);
[W2,B2] = rands(S2,S1);
%B17=cat(2,b1,b1,b1,b1,b1,b1,b1);
%B1=cat(2,B17,B17,B17);
%B27=cat(2,b2,b2,b2,b2,b2,b2,b2);
%B2=cat(2,B27,B27,B27);
A2 = zeros(1,21);
for i=1:21
    A2(1,i)=purelin(W2*tansig(W1*P2(1,i)+B1) + B2);
end
plot(P,A2)
net = newcf(minmax(P),[5,1],{'tansig','purelin'},'traingd');
net.trainParam.epochs=14000;
net.trainParam.goal=9.5238e-004;
[net,tr]=train(net,P,T);
Y= sim(net,P);
plot(P,T,'ro')
hold on
plot(P,Y)

%观察误差
Wrange = -1:0.1:1;
Brange = -1:0.1:1;
ES = errsurf(P, T, Wrange,Brange,'logsig');
mesh(ES,[60,30]);
xlabel('W');
ylabel('B');
zlabel('Sum Squared Error');
title('Error Surface Graph');
[C,h] = contour(Wrange,Brange,ES);
axis('equal');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -