Ich habe einen SVM- und logistischen Regressionsklassifikator für die binäre Klassifizierung in meinem Datensatz trainiert. Beide Klassifikatoren liefern einen Gewichtsvektor, der der Größe der Anzahl von Merkmalen entspricht. Ich kann diesen Gewichtsvektor verwenden, um die 10 wichtigsten Merkmale auszuwählen. Dafür habe ich die Gewichte durch einen Permutationstest in T-Scores umgewandelt. Ich habe 1000 Permutationen der Klassenbezeichnungen durchgeführt und bei jeder Permutation den Gewichtsvektor berechnet. Am Ende habe ich den Mittelwert der permutierten Gewichte von den realen Gewichten subtrahiert und durch die Standardabweichung der permutierten Gewichte geteilt. Also habe ich jetzt T-Scores.
Sollte ich die absoluten Werte der t-Scores verwenden, dh die 10 Merkmale mit den höchsten absoluten Werten auswählen? Nehmen wir also an, die Funktionen haben die folgenden T-Scores:
feature 1: 1.3
feature 2: -1.7
feature 3: 1.1
feature 4: -0.5
Wenn ich die 2 wichtigsten Merkmale unter Berücksichtigung der höchsten absoluten Werte auswähle, würden Merkmal 1 und 2 gewinnen. Wenn ich die absoluten Werte nicht berücksichtige, würden Merkmal 1 und 3 gewinnen.
Zweitens funktioniert dies nur für SVM mit linearem Kernel, aber nicht mit RBF-Kernel, wie ich gelesen habe. Für nichtlineare Kernel sind die Gewichte irgendwie nicht mehr linear. Was ist der genaue Grund, warum der Gewichtsvektor nicht verwendet werden kann, um die Wichtigkeit von Merkmalen im Fall einer nichtlinearen Kernel-SVM zu bestimmen?
quelle