How to Loop the neural network training to choose the best performance?

1 次查看(过去 30 天)
Hi, I need some help on how to train a network for different value of Neurons, and save the MSE then choose the best MSE to select the best trained network.
I am using the fitnet as follows:
trainFcn = 'trainlm'; % Levenberg-Marquardt backpropagation.
% Create a Fitting Network & set number of neurons
hiddenLayerSize = 30;
net = fitnet(hiddenLayerSize,trainFcn);
[net,tr] = train(net,X,T);
testX = X(:,tr.testInd);
testT = T(:,tr.testInd);
testY = net(testX);
perf = mse(net,testT,testY)

采纳的回答

KSSV
KSSV 2018-7-31
  3 个评论
KSSV
KSSV 2018-8-1
N = [ 5, 10, 15, 20, 25, 30, 35, 40. ];
NN = cell(length(N),1) ;
P = zeros(length(N),1) ;
for i = 1:length(N)
trainFcn = 'trainlm'; % Levenberg-Marquardt backpropagation.
% Create a Fitting Network & set number of neurons
hiddenLayerSize = N(i);
net = fitnet(hiddenLayerSize,trainFcn);
[net,tr] = train(net,X,T);
NN{i} = net ;
testX = X(:,tr.testInd);
testT = T(:,tr.testInd);
testY = net(testX);
perf = mse(net,testT,testY) ;
P(i) = perf ;
end

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by