J'utilise actuellement Scikit learn avec le code suivant:
clf = svm.SVC(C=1.0, tol=1e-10, cache_size=600, kernel='rbf', gamma=0.0,
class_weight='auto')
puis ajuster et prévoir pour un ensemble de données avec 7 étiquettes différentes. J'ai une sortie bizarre. Quelle que soit la technique de validation croisée que j'utilise, l'étiquette prédite sur l'ensemble de validation sera toujours l'étiquette 7.
J'essaie d'autres paramètres, y compris celui par défaut complet ( svm.SVC()
) mais tant que la méthode du noyau que j'utilise est à la rbf
place de poly
ou linear
cela ne fonctionnerait tout simplement pas, alors que cela fonctionne très bien pour poly
et linear
.
D'ailleurs, j'ai déjà essayé la prédiction sur les données des trains au lieu des données de validation et cela correspond parfaitement.
Est-ce que quelqu'un voit ce genre de problème avant et sait ce qui se passe ici?
Je ne regarde jamais ma distribution de classe en détail mais je sais qu'elle devrait être d'environ 30% d'entre eux sont 7, 14% sont 4.
J'essaie même une implémentation manuelle 1-vs-rest et ce n'est toujours pas utile.