I need to perform classfication of hundreds of classes. New classes arrive regularly. I also have some large training set (thousands of samples).

OneVsRestClassifier from sklearn trains all its underlying classifiers with the same hyperparameters. My idea is that I can train one classifier for each class separately, when class arrives. This should give the following benefits:

  1. No need to refit all previous classifiers. Given training data is large enough, one additional class doesn't make big difference for what's already trained. Training time doesn't grow linearly on classes.
  2. Hyperparameters are chosen separately for each classifier which should improve accuracy.

Your Answer

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

Browse other questions tagged or ask your own question.