I have a classification dataset with 10k instances and 4 classes and it is unbalanced. 7000 of it belongs to first class, 2000 of it belongs to second 800 of it belongs to third class and remaining instances are belong to fourth class. I have a single neural network based on MLP.

At the end of down-sampling process, I am planning to have 2000,2000,800,200 instances. (I can even further down-sample first 3 classes until I have 200 instances from each class but I don't want to decrease size of the dataset that much).

My question is: If I train my MLP for N epoch, should I use the same subset for class-1 for all of the epochs or should I generate this subset randomly for each epoch?


You will get better results if you change subset of images from downsampled class randomly at each epoch. It will help in building a robust model as well. And use data augmentation techniques for minor classes.

  • $\begingroup$ I guess you missed my question. I am not asking how to balanced my dataset, I am asking should I changed my down-sampled class at each epoch or keep it same during traning of my neural net. $\endgroup$ – zwlayer Sep 26 '18 at 11:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.