Actualmente estoy usando Scikit learn con el siguiente código:
clf = svm.SVC(C=1.0, tol=1e-10, cache_size=600, kernel='rbf', gamma=0.0,
class_weight='auto')
y luego ajusta y predice un conjunto de datos con 7 etiquetas diferentes. Tengo una salida extraña. No importa qué técnica de validación cruzada use, la etiqueta predicha en el conjunto de validación siempre será la etiqueta 7.
Intento algunos otros parámetros, incluido el predeterminado completo ( svm.SVC()
), pero siempre que el método del núcleo que utilizo sea en rbf
lugar de poly
o linear
simplemente no funcione, mientras que funciona realmente bien para poly
y linear
.
Además, ya he intentado la predicción en los datos del tren en lugar de los datos de validación y encaja perfectamente.
¿Alguien ve este tipo de problema antes y sabe lo que está pasando aquí?
Nunca miro la distribución de mi clase en detalle, pero sé que debería ser alrededor del 30% de ellos son 7, 14% son 4.
Incluso pruebo una implementación manual 1-vs-rest y todavía no es útil.