How to split the dataset into train/ validation / test with cvpartion?
2 views (last 30 days)
Show older comments
I am training some networks to detect certain characteristics in x-ray images. The images are divided into three classes: A, B and C.
I have currently used the neural network committee building approach.
My committee consists of 10 networks, which in turn are trained using the bagging resampling technique: each training set consists of a sampling with repetition of the original training set. According to what I read in the literature, this gives diversity to the committee and allows each network to "specialize" in some characteristic present in the images.
So what I do is this:
- I divide the dataset into training, validation and testing (70/15/15).
- I train each network that makes up the committee by varying the training set (using the bagging technique) and varying the number of neurons in the hidden layer.
- I use the validation set for early stop.
- I use the committee to deliberate on the set of tests by majority of votes.
The problem is that the data set is relatively small: only 525 samples. It is also a noisy dataset. As they are images, I am using pixels as input values for networks. I resized the images to be 324 pixels, but there are still a large number of variables for my number of samples.
I read about using cross-validation when you have few samples.
I tried to use the cvpartition function, but it only divides the set into train / test.
1) In my case do I really need to use cross-validation?
2) How to divide the data for cross-validation in train / validation / test with Matlab?
0 Comments
Answers (0)
See Also
Categories
Find more on Image Segmentation and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!