How to get validation test and training errors of a neural network?
21 views (last 30 days)
Show older comments
I have created and trained a neural network using the following code .I want to know how to get the training testing and validation errors/mis-classifications the way we get using the matlab GUI.
trainFcn = 'trainscg'; % Scaled conjugate gradient backpropagation.
% Create a Pattern Recognition Network
hiddenLayerSize = 25;
net = patternnet(hiddenLayerSize);
% Setup Division of Data for Training, Validation, Testing
net.divideParam.trainRatio = trainper/100;
net.divideParam.valRatio = valper/100;
net.divideParam.testRatio = testper/100;
% Train the Network
[net,tr] = train(net,x,t);
0 Comments
Accepted Answer
Greg Heath
on 5 Aug 2016
BOTH documentation commands
help patternnet
and
doc patternnet
have the following sample code for CLASSIFICATION & PATTERN-RECOGNITION:
[x,t] = iris_dataset;
net = patternnet(10);
net = train(net,x,t);
view(net)
y = net(x);
perf = perform(net,t,y);
classes = vec2ind(y);
However, the following are missing
1. Dimensions of x and t
2. Plots of x, t, and t vs x
3. Minimum possible number of hidden nodes
4. Initial state of the RNG (Needed for duplication)
5. Training record, tr
6. Plots of e = y-t vs x
7. Misclassified cases
8. trn/val/tst Error rates
For details see my NEWSGROUP posts
SIZES OF MATLAB CLASSIFICATION EXAMPLE DATA SETS
http://www.mathworks.com/matlabcentral/newsreader/...
view_thread/339984
and
BEYOND THE HELP/DOC DOCUMENTATION : PATTERNNET for
NN Classification and PatternRecognition
http://www.mathworks.com/matlabcentral/newsreader/...
view_thread/344832
Hope this helps.
Thank you for formally accepting my answer
Greg
2 Comments
Anton Tichenko
on 19 Apr 2019
Hi Greg,
Noticed in a few answers here you are referring to "THE HELP/DOC DOCUMENTATION : PATTERNNET for NN Classification and PatternRecognition" and "SIZES OF MATLAB CLASSIFICATION EXAMPLE DATA SETS" posts
I can't find them anywhere, have they been removed? Any chance you could share again?
Thanks!
Greg Heath
on 20 Apr 2019
help and doc are to be used in the MATLAB command line. For example
>> help patternnet
patternnet Pattern recognition neural network.
...
Hope this helps
Greg
More Answers (1)
Greg Heath
on 31 Jul 2016
clear all, clc
[ x, t ] = simplefit_dataset;
net = fitnet;
rng('default') % For reproducibility
[ net tr y e ] = train( net, x, t );
% y = net(x); e = t - y;
tr = tr % No semicolon: LOOK AT ALL OF THE GOODIES!!!
msetrn = tr.best_perf
mseval = tr.best_vperf
msetst = tr.best_tperf
Hope this helps
Thank you for formally accepting my answer
Greg
5 Comments
Mohamed Nedal
on 30 Nov 2019
Edited: Mohamed Nedal
on 14 Dec 2019
Dear @Greg,
Could you please elaporate on the difference between msetrn, mseval, and msetst?
If I want to assess the overall performance of the NN and want to find the MSE for the NN as a whole, Which one should I use?
Mohamed Nedal
on 30 Nov 2019
If I wrote this:
rmse = sqrt(mean(e));
Does this give me the RMSE of the whole NN?
See Also
Categories
Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!