Sto utilizzando l'interfaccia Python per libsvm e quello che sto notando è che dopo aver selezionato i migliori parametri C
e gamma
(kernel RBF) utilizzando la ricerca griglia, quando I addestrare il modello e cross validarlo (5 volte, se è rilevante), la precisione che ricevo è uguale al rapporto tra le etichette nel mio set di dati di allenamento.libsvm - Accuratezza di convalida incrociata uguale al rapporto delle etichette
Ho 3947 campioni e 2898 di essi hanno l'etichetta -1 e il resto ha l'etichetta 1. Quindi questo è il 73,4229% dei campioni.
E quando mi alleno il modello e croce convalidarlo 5 pieghe, questo è ciò che ottengo -
optimization finished, #iter = 1529
nu = 0.531517 obj = -209.738688,
rho = 0.997250 nSV = 1847, nBSV = 1534
Total nSV = 1847
Cross Validation Accuracy = 73.4229%
questo significa che l'SVM non sta prendendo le caratteristiche in considerazione? O che sono i dati in difetto qui? Sono entrambi legati? Non riesco a superare il numero 73.4229. Inoltre, il numero di vettori di supporto dovrebbe essere molto inferiore alla dimensione del set di dati, ma in questo caso non sembra così.
In generale, che cosa significa quando la precisione della convalida incrociata è uguale al rapporto delle etichette nel set di dati?