Ich benutze die Python-Schnittstelle für libsvm, und was ich bemerke, ist, dass nach der Auswahl der besten und gamma
Parameter (RBF-Kernel) Rastersuche, wenn ich Trainieren Sie das Modell und kreuzen Sie es an (5-fach, wenn es relevant ist), die Genauigkeit, die ich erhalte, ist die gleiche wie das Verhältnis der Labels in meinem Trainingsdatensatz.libsvm - Kreuz Validierungsgenauigkeit wie das Verhältnis der Etiketten
Ich habe 3947 Proben, und 2898 von ihnen haben Label -1, und der Rest hat Label 1. Also das sind 73,4229% der Proben.
Und wenn ich das Modell und die Quer validieren 5 Falten trainieren, ist es das, was ich bekommen -
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%
Bedeutet dies, dass die SVM nicht die Eigenschaften berücksichtigt? Oder dass es hier die fehlerhaften Daten sind? Sind sie beide miteinander verwandt? Ich bin einfach nicht in der Lage, es über die 73.4229-Nummer zu bekommen. Außerdem soll die Anzahl der Unterstützungsvektoren viel kleiner als die Größe des Datensatzes sein, aber in diesem Fall scheint es nicht so.
Was bedeutet im Allgemeinen, wenn die Genauigkeit der Kreuzvalidierung mit dem Verhältnis der Bezeichnungen im Datensatz übereinstimmt?