📄 c9_5bfdizhengyuce.m
字号:
%输入向量P和目标向量T
P=[0 0 0.62 0 0 0 0 ;
0.3915 0.4741 0.77 0.5 0.5 1 0.3158;
0.2835 0.5402 0.68 0 0.5 1 0.3158;
0.6210 1 0.63 1 0.5 1 1;
0.4185 0.4183 0.67 0.5 0 1 0.37368;
0.216 0.4948 0.71 0 0 1 0.2632;
0.999 0.0383 0.75 0.5 1 1 0.9474;
0.5805 0.4925 0.71 0 0 0 0.3684;
0.081 0.0692 0.76 0 0 0 0.0526;
0.3915 0.123 0.98 0.5 0 0 0.8974]';
T=[0 0.5313 0.5938 0.9375 0.4375 0.5 1 0.375 0.3125 0.6563];
%测试向量P_test和实际输出T_test
P_test=[0.0270 0.0742 0.62 0 0 0 0.2105;
0.1755 0.3667 0.77 0 0.5 1 0.7368;
0.432 0.379 0.68 0.5 0 1 0.2632;
0.4995 0.4347 0.63 0 0 1 0.6842;
0.6885 0.5842 0.67 0.5 0.5 1 0.4211;
0.5400 0.8038 0.71 0.5 0.5 1 0.5789;
0.162 0.2565 0.75 0 0 1 0.4737]';
T_test=[0.1875 0.4062 0.4375 0.5938 0.625 0.7187 0.3750];
threshold=[ 0 1;0 1;0 1;0 1;0 1;0 1;0 1];%7行2列
a=[10 15 20];%隐含层神经元个数
for i=1:3
net=newff(threshold,[a(i),1],{'tansig','logsig'},'traingdx');
net.trainParam.epochs=1000;
net.trainParam.goal=0.001;
net=init(net);
net=train(net,P,T);
Y(i,:)=sim(net,P_test);
end
plot(1:7,Y(1,:)-T_test);
hold on
plot(1:7,Y(2,:)-T_test,'r--');
hold on
plot(1:7,Y(3,:)-T_test,'b-.');
hold off
legend('10个神经元','15个神经元','20个神经元');%由运行结果可见,15个神经元的误差更小
Y(2,:)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -