Atualmente, estou usando o Scikit learn com o seguinte código:
clf = svm.SVC(C=1.0, tol=1e-10, cache_size=600, kernel='rbf', gamma=0.0,
class_weight='auto')
e ajuste e preveja para um conjunto de dados com 7 rótulos diferentes. Eu tenho uma saída estranha. Não importa qual técnica de validação cruzada eu use o rótulo previsto no conjunto de validação sempre será o rótulo 7.
Eu tento alguns outros parâmetros, incluindo o padrão completo ( svm.SVC()), mas contanto que o método do kernel que eu use seja em rbfvez de polyou linearsimplesmente não funcione, enquanto ele funciona realmente bem para polye linear.
Além disso, eu já tentei prever dados de trem em vez de dados de validação e eles se encaixam perfeitamente.
Alguém vê esse tipo de problema antes e sabe o que está acontecendo aqui?
Eu nunca olho para a minha distribuição de classe em detalhes, mas sei que deve ser em torno de 30% deles são 7, 14% são 4.
Eu até tento uma implementação manual 1-versus-rest e ainda não é útil.