資源簡介
LM-BP神經網絡的源代碼,有注釋,容易讀懂
代碼片段和文件信息
%?X?表示訓練的實際樣本值
%?T?表示網絡的實際輸出值
clc
clear?all
format?compact
%?format?long
%?讀取數據并進行處理
fid?=?xlsread(‘www.xls‘);
zd=max(fid);
zx=min(fid);
[rowcol]=size(fid);
TT=fid(:col);
m=0.1;
n=0.8;
%?for?i=1:col
%?????for?j=1:row
%?????????q1(ji)=m+(n-m).*(fid(ji)-zx(i))./(zd(i)-zx(i));
%?????end
%?end
for?i=1:col
????q(:i)=m+(n-m)*(fid(:i)-zx(i))/(zd(i)-zx(i));
end
%?歸一化后的數據,X為輸入樣本數據,T為期望輸出
X(:1:col-1)=q(:1:col-1);
T=q(:end);
net=newff(X‘T‘7{‘tansig‘?‘purelin‘}‘trainlm‘‘mse‘);
net.layers{1}.initFcn?=?‘initwb‘;
net.inputWeights{11}.initFcn?=?‘rands‘;
net.biases{11}.initFcn?=?‘rands‘;
net.biases{21}.initFcn?=?‘rands‘;
net?=?init(net);
for?i=1:100
????net.trainParam.epochs=10^20;
????net.trainParam.goal=0;
????net.trainParam.lr=10^-16;
????net.trainParam.min_grad=0;
????net=train(netX‘T‘);
end
%?yy=sim(netX‘);
yy=net(X‘);
y=zx(col)+(yy-m)
- 上一篇:高斯曲率和平均曲率
- 下一篇:matlab代碼-NRZ
評論
共有 條評論