Ho un set di dati che contiene ~ 100.000 campioni di 50 classi. Ho usato SVM con un kernel RBF per addestrare e prevedere nuovi dati. Il problema però è che il set di dati è inclinato verso classi diverse.
Ad esempio, Classe 1 - 30 (~ 3% ciascuno), Classe 31 - 45 (~ 0,6% ciascuno), Classe 46 - 50 (~ 0,2% ciascuno)
Vedo che il modello tende a prevedere molto raramente le classi che si verificano meno frequentemente nel set di training, anche se il set di test ha la stessa distribuzione di classi del set di training.
Sono consapevole che esistono tecniche come il "sottocampionamento" in cui la classe di maggioranza è ridotta alla classe minore. Tuttavia, questo è applicabile qui dove ci sono così tante classi diverse? Ci sono altri metodi per aiutare a gestire questo caso?