?? 9-5-3.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.0000 0.63 1 0.5 1 1.0000;
0.4185 0.4183 0.67 0.5 0 1 0.7368;
0.2160 0.4948 0.71 0 0 1 0.2632;
0.9990 0.0383 0.75 0.5 1 1 0.9474
0.5805 0.4925 0.71 0 0 0 0.3684;
0.0810 0.0692 0.76 0 0 0 0.0526;
0.3915 0.1230 0.98 0.5 0 0 0.8974]';
T=[0 0.5313 0.5938 0.9375 0.4375 0.5000 1.0000 0.3750 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.4320 0.3790 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.1620 0.2565 0.75 0 0 1 0.4737]';
T_test=[0.1875 0.4062 0.4375 0.5938 0.6250 0.7187 0.3750];
threshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1];
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;
%init函數用于將網絡初始化
net=init(net);
net=train(net,P,T);
Y(i,:)=sim(net,P_test);
end
figure;
%繪制誤差曲線
%中間層神經元個數為10
plot(1:7,Y(1,:)-T_test);
hold on;
%中間層神經元個數為15
plot(1:7,Y(2,:)-T_test,'+');
hold on;
%中間層神經元個數為20
plot(1:7,Y(3,:)-T_test,'--');
hold off;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -