使用神经网络工具箱可以非常简便地实现网络建立和训练,实例代码如下:
%% BP算法
function Out=bpnet(p,t,p_test)
%p,t为样本需要提前组织好
global S1
net=newff(minmax(p),[S1,8],{'tansig','purelin'},'trainlm'); %trainlm训练函数最有效
%net=newff(P,T,31,{'tansig','purelin'},'trainlm');%新版用法
net.trainParam.epochs=1000;
net.trainParam.goal=0.00001;
net.trainParam.lr=0.01;
net.trainParam.showWindow = false; %阻止训练窗口的弹出
net.trainParam.showCommandLine = false; %阻止训练窗口的弹出
net=train(net,p,t);
Out=sim(net,p_test);
end
上面的代码不完整,完整的带训练样本数据的程序见附件。