Is there a way to obtain the indices of the training, validation and test datasets in NN pattern recognition?

14 vues (au cours des 30 derniers jours)
Let's say I feed a 100*3 matrix as a input and a 100*1 matrix as target datset to the NN pattern regonition app. As per the default setting it will randomly select 70% of the data as the training set, 15% as Validation test and 15% as testing set right? Now, I carry out a number of iterations to train the network and let's say I decide to select the model with the least error in the test set as my final model. So, Is there any way to get the indices of the dataset that was selected as the training, validation and the test set for my final model. I want to use these sets to train/evaluate the performance of the other models I have.
I hope my question was clear. If not, please let me know. I greatly appreciate your time andd help in answering my question.
Thanks!

Réponse acceptée

Gifari Zulkarnaen
Gifari Zulkarnaen le 14 Juil 2020
You can see those indices in the ouput data of train command.
[net,tr] = train(net,x,t); % net is trained network, tr in training information
% Indices:
train_index = tr.trainInd;
validation_index = tr.valInd;
test_index = tr.testInd;
If you want to use saved indices for other training, you can divide the dataset using user-defined indices (before train the network) using divideind option:
net.divideFcn = 'divideind';
net.divideParam.trainInd = train_index;
net.divideParam.valInd = validation_index;
net.divideParam.testInd = test_index;
  1 commentaire
Gunjan Rateria
Gunjan Rateria le 14 Juil 2020
Modifié(e) : Gunjan Rateria le 14 Juil 2020
Thank you Gifari for the precise response I was looking for :) It works like a charm!

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by