資源簡介
這是一個用遺傳算法優化bp神經網絡作模式識別的,說的直觀一點就是用來做分類的,這里涉及的數據多維輸入多維輸出,大家可以根據自己要解決的問題進行改動
代碼片段和文件信息
function?err=Bpfun(xPThiddennumP_testT_test)
%%?訓練&測試BP網絡
%%?輸入
%?x:一個個體的初始權值和閾值
%?P:訓練樣本輸入
%?T:訓練樣本輸出
%?hiddennum:隱含層神經元數
%?P_test:測試樣本輸入
%?T_test:測試樣本期望輸出
%%?輸出
%?err:預測樣本的預測誤差的范數
inputnum=size(P1);???????%?輸入層神經元個數
outputnum=size(T1);??????%?輸出層神經元個數
%%?新建BP網絡
net=newff(minmax(P)[hiddennumoutputnum]{‘tansig‘‘logsig‘}‘trainlm‘);
%%?設置網絡參數:訓練次數為1000,訓練目標為0.01,學習速率為0.1
net.trainParam.epochs=1000;
net.trainParam.goal=0.01;
LP.lr=0.1;
net.trainParam.show=NaN;
%?net.trainParam.showwindow=false;??%高版MATLAB
%%?BP神經網絡初始權值和閾值
w1num=inputnum*hiddennum;?%?輸入層到隱層的權值個數
w2num=outputnum*hiddennum;%?隱層到輸出層的權值個數
w1=x(1:w1num);???%初始輸入層到隱層的權值
B1=x(w1num+1:w1num+hiddennum);??%初始隱層閾值
w2=x(w1num+hiddennum+1:w1num+hiddennum+w2num);?%初始隱層到輸出層的閾值
B2=x(w1num+hiddennum+w2n
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1282??2010-11-14?00:48??GA優化BP神經網絡\Bpfun.m
?????文件???????1864??2011-03-31?19:30??GA優化BP神經網絡\callbackfun.m
?????文件???????1607??2010-12-09?10:05??GA優化BP神經網絡\data.mat
?????文件???????2311??2017-03-10?11:23??GA優化BP神經網絡\GABPMain.m
?????文件????????404??2010-11-14?00:49??GA優化BP神經網絡\Objfun.m
?????目錄??????????0??2017-06-09?09:42??GA優化BP神經網絡
-----------?---------??----------?-----??----
?????????????????7468????????????????????6
評論
共有 條評論