首先一个很简单的例子:
1 - 首先,你需要为数据输入输出数据矩阵和其他。 这里我正在使用来自matlab的预设数据。你应该尽量让你的输入输出数据的结构是这样的:
[InData,TarData] = engin_dataset;
所以在这里我们有两个输入和两个输出(MIMO)2 - > 2 2 - 现在你应该创建网络。我所选择的前馈网络:
net1 = newff(minmax(InData),[10,2],{'tansig','purelin'},'trainlm')
这里我已经定义了输入数据范围,数量的神经元中的每个层(包括输出层= 2),功能类型和训练算法的类型。
3-现在,你可以训练你的网络:
net2 = train(net1,InData,TarData)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%
和这里的代码来了,从利用MATLAB自动生成一个例子:
% load data
[inputs,targets] = engin_dataset;
%inputs = engineInputs;
%targets = engineTargets;
% Create a Fitting Network
hiddenLayerSize = 10;
net = fitnet(hiddenLayerSize);
% Setup Division of Data for Training, Validation, Testing
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;
% Train the Network
[net,tr] = train(net,inputs,targets);
% Test the Network
outputs = net(inputs);
errors = gsubtract(targets,outputs);
performance = perform(net,targets,outputs)
% View the Network
view(net)
来源
2013-04-19 12:56:58
NKN
检查的问题/答案是:http:/ /stackoverflow.com/questions/1672850/how-to-set-output-size-in-matlab-newff-method – NKN