K fold validation for feedforward net

3 Ansichten (letzte 30 Tage)
Abdulaziz Almershed
Abdulaziz Almershed am 29 Dez. 2020
Greetings
I have created a forwardnet and becuase I only have a handful of cases i need to use K fold validation. However, I am a bit confused on how to do that. I have seen crossval and cvpartition functions but i still do not know how to use them. can you help me train the network using kfold validation?
kind regards

Antworten (1)

Gaurav Garg
Gaurav Garg am 31 Dez. 2020
Hi Abdulaziz,
cvparition partitions data for cross-validation. It defines a random partition on data set and uses it to define training and test sets for validating a statistical model.
E.g. :
load ionosphere
tbl = array2table(X);
tbl.Y = Y;
rng('default') % For reproducibility
n = length(tbl.Y);
hpartition = cvpartition(n,'Holdout',0.3); % Nonstratified partition
hpartition holds the total number of observations, total number of test sets, the size of training set and the size of test size.
To display the indeces which are being used for training, you can use -
training(hpartition)
To display the indeces which are being used for testing, you can use -
test(hpartition)
While, using crossval, you can estimate the loss returned by 10-fold cross-validation error estimate.
err = crossval(criterion,X,y,'Predfun',predfun)
% returns a 10-fold cross-validation error estimate for the
% function predfun based on the specified criterion
To know more about them, you can use the links provided - 1 2
  1 Kommentar
Abdulaziz Almershed
Abdulaziz Almershed am 4 Jan. 2021
but is there a buit in function to train a network using k-fold validation as validating method?

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by