Say I am using a maximum likelihood approach and my output unit computes a softmax function. My training set is distributed as follows over 6 classes:
class_samples[0]=23, class_samples[1]=5, class_samples[2]=44,
class_samples[3]=14, class_samples[4]=19, class_samples[5]=31
What should I do?
use the training set as given above with a normalizing weight balancing(e.g. using
sklearn.utils.class_weight.compute_class_weight
).or should I simply use the minimum number of samples in a class(i.e. 5) to extract a balanced distribution of examples?
Why should I choose one over the other? Intuitively, I would think that using as many training examples as possible is the better option. However, I have tried to do some computations but I fail to show that usage of all examples with a normalizing weight balancing is better.
I have of course tried to do some heavy research but for some reason I cannot find the answer. If you know a good article, I would accept a reference as an answer, just as I would accept a "self-made" answer!