How to disable validation and test data set in neural network

13 Ansichten (letzte 30 Tage)
Emiliano Rosso
Emiliano Rosso am 22 Mär. 2017
Beantwortet: Greg Heath am 14 Feb. 2020
I need to train patternnet neural network using all data set in the training set and avoiding validation check. I found two methods and they works very well in command line but not in a script returning very simple errors.
method 1:
mynet.divideFcn = '';
method 2:
mynet.divideParam.trainRatio = 1;
mynet.divideParam.valRatio = 0;
mynet.divideParam.testRatio = 0;
and the code:
mynet=patternnet([]);
P=rand(10,1000);
T=rand(2,1000);
[mynet,tr]=train(mynet,P,T);
Matlab R2012 b windows xp 32
Thanks !

Antworten (2)

Greg Heath
Greg Heath am 14 Feb. 2020
You have to define net before modifying any properties.
clear all, close all, clc
[x,t] = iris_dataset;
for i = 1:2
net = patternnet([]);
if i==1
net.divideFcn = '';
else
net.divideParam.trainRatio = 1;
net.divideParam.valRatio = 0;
net.divideParam.testRatio = 0;
end
net = train(net,x,t);
view(net)
y = net(x);
MSE(i) = mse(y-t)
end
MSE = 0.0084 0.0084
Hope this helps.
Greg

Prasanth Sundaravelu
Prasanth Sundaravelu am 26 Apr. 2018
Bearbeitet: Prasanth Sundaravelu am 26 Apr. 2018
Hi, I think you need to type specific Divide function, instead of blank.
Try this : mynet.divideFcn = 'dividerand';

Community Treasure Hunt

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

Start Hunting!

Translated by