?? bpnet4.asv
字號:
function BPnet4()
X0=[1 1 1; 1 0 1;1 0 1;1 0 1; 1 1 1];X1=[0 1 0;0 1 0;0 1 0;0 1 0;0 1 0];
X2=[1 1 1; 0 0 1;0 1 0;1 0 0; 1 1 1];X3=[1 1 1;0 0 1;0 1 0;0 0 1;1 1 1];
X4=[1 0 1; 1 0 1;1 1 1;0 0 1; 0 0 1];X5=[1 1 1;1 0 0;1 1 1;0 0 1;1 1 1];
X6=[1 1 1; 1 0 0;1 1 1;1 0 1; 1 1 1];X7=[1 1 1;0 0 1;0 0 1;0 0 1;0 0 1];
X8=[1 1 1; 1 0 1;1 1 1;1 0 1; 1 1 1];X9=[1 1 1;1 0 1;1 1 1;0 0 1;1 1 1];
XA=[0 1 0; 1 0 1;1 0 1;1 1 1; 1 0 1];XB=[1 1 1;1 0 1;1 1 0;1 0 1;1 1 1];
XC=[1 1 1; 1 0 0;1 0 0;1 0 0; 1 1 1];XD=[1 1 1;1 0 1;1 0 1;1 0 1;1 1 0];
XE=[1 1 1; 1 0 0;1 1 0;1 0 0; 1 1 1];XF=[1 1 1;1 0 0;1 1 0;1 0 0;1 0 0];
X=[X0(:) X1(:) X2(:) X3(:) X4(:) X5(:) X6(:) X7(:) X8(:) X9(:) XA(:) XB(:) XC(:) XD(:) XE(:) XF(:)];
T0=[0;0;0;0];T1=[0;0;0;1];
T2=[0;0;1;0];T3=[0;0;1;1];
T4=[0;1;0;0];T5=[0;1;0;1];
T6=[0;1;1;0];T7=[0;1;1;1];
T8=[1;0;0;0];T9=[1;0;0;1];
TA=[1;0;1;0];TB=[1;0;1;1];
TC=[1;1;0;0];TD=[1;1;0;1];
TE=[1;1;1;0];TF=[1;1;1;1];
T=[T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 TA TB TC TD TE TF];
%建立網絡
[R,N1]=size(X);[S2,N1]=size(T);S1=9;
[W1,b1,W2,b2]=initff(X,S1,'logsig',T,'logsig');
[y1,y2]=simuff(X,W1,b1,'logsig',W2,b2,'logsig');
%利用不含噪聲的理想輸入數據進行訓練
disp_freq=20;
max_epoch=5000;
err_goal=0.0001;
mc=0.95;
tp=[disp_freq max_epoch err_goal NaN NaN NaN mc];
%使用net = nnt2ff(PR,{W1 W2 ...},{B1 B2 ...},{TF1 TF2 ...},BTF,BLR,PF)
%[W1,b1,W2,b2,te,tr]=nnt2ff(W1,b1,'logsig',W2,b2,'logsig',X,T,tp);
net=nnt2ff(X,{W1,W2},{b1,b2},{'logsig','logsig'},traingdx,learngdm,)
[y1,y2]=simuff(X,W1,b1,'logsig',W2,b2,'logsig');
%為使網絡有一定的容錯能力,在利用不含噪聲的輸入數據進行訓練網絡
max_epoch=500;
err_goal=0.6;
T1=[T T T T];
tp=[disp_freq max_epoch err_goal]
for i=1:10
X1=[X X (X+randn(R,N1)*0.1) (X+randn(R,N1)*0.2)];
[W1,b1,W2,b2,te,tr]=trainbpx(W1,b1,'logsig',W2,b2,'logsig',X1,T1,tp);
end
[y1,y2]=simuff(X1,W1,b1,'logsig',W2,b2,'logsig');
%為了保證網絡總能夠正確對理想輸入信號進行識別,再次用理想信號進行訓練
disp_freq=20;
max_epoch=5000;
err_goal=0.001;
tp=[disp_freq max_epoch err_goal];
[W1,b1,W2,b2,te,tr]=trainbpx(W1,b1,'logsig',W2,b2,'logsig',X,T,tp);
X1=X(:,2:2:16);
y=simuff(X1,W1,b1,'logsig',W2,b2,'logsig')
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -