在MATLAB中,我们可以如此构建一个神经网络
当然,input可以是多组数据组成的矩阵,也可以是一组数据组成的向量,如此便可
%使用用输入输出数据(inputData、outputData)建立网络,
%隐节点个数设为3.其中隐层、输出层的传递函数分别为tansig和purelin,使用trainlm方法训练。
net =newff(inputData,outputData,3,{'tansig','purelin'},'trainlm');
%设置一些常用参数
net.trainparam.goal =0.00001; %训练目标:均方误差低于0.0001
net.trainparam.show =400; %每训练400次展示一次结果
net.trainparam.epochs =15000; %最大训练次数:15000.
net.divideFcn = '';
[net,tr] =train(net,inputData,outputData);%调用matlab神经网络工具箱自带的train函数训练网络
其中,隐藏层节点是3,我选取较简单的输入层节点为2,输出层节点是 1来构建网络。
训练好网络后,可用sim函数来运行Simulink模型,可通过输入预测输出,例如:
input=[4000;20]
simout =sim(net,input); %调用matlab神经网络工具箱自带的sim函数得到网络的预测值
当然,input可以是多组数据组成的矩阵,也可以是一组数据组成的向量,如此便可