Gibt es Richtlinien für die Auswahl eines linearen Kernels im Vergleich zu einem nichtlinearen Kernel wie RBF, wenn Sie Support Vector Machine verwenden? Ich habe einmal gehört, dass ein nichtlinearer Kernel bei einer großen Anzahl von Features in der Regel keine gute Leistung erbringt. Gibt es Referenzen zu diesem Thema?
45
Antworten:
In der Regel wird entschieden, ob ein linearer oder ein RBF-Kernel (auch bekannt als Gauß-Kernel) verwendet wird. Es sind zwei Hauptfaktoren zu berücksichtigen:
Es wurde gezeigt, dass der lineare Kernel eine entartete Version von RBF ist , daher ist der lineare Kernel niemals genauer als ein richtig eingestellter RBF-Kernel. Zitat des Abstracts aus dem Artikel, den ich verlinkt habe:
Eine grundlegende Faustregel wird in der praktischen Anleitung von NTU zur Unterstützung der Vektorklassifizierung kurz behandelt (Anhang C).
Ihre Schlussfolgerung ist mehr oder weniger richtig, aber Sie haben das Argument zurück. In der Praxis kann der lineare Kernel sehr gut arbeiten, wenn die Anzahl der Features groß ist (z. B. muss kein noch höherdimensionaler Feature-Raum zugeordnet werden). Ein typisches Beispiel hierfür ist die Dokumentklassifizierung mit Tausenden von Dimensionen im Eingaberaum.
In diesen Fällen sind nichtlineare Kernel nicht unbedingt wesentlich genauer als die linearen. Dies bedeutet im Grunde, dass nichtlineare Kernel an Attraktivität verlieren: Sie benötigen viel mehr Ressourcen, um mit wenig oder gar keinem Gewinn an Vorhersage-Leistung zu trainieren. Warum also die Mühe machen?
TL; DR
Versuchen Sie immer zuerst linear zu trainieren, da es viel schneller ist (UND-Test). Wenn die Genauigkeit ausreicht, klopfen Sie sich für eine gute Arbeit auf den Rücken und fahren Sie mit dem nächsten Problem fort. Wenn nicht, versuchen Sie es mit einem nichtlinearen Kernel.
quelle
Andrew Ng gibt in diesem Video ab 14:46 Uhr eine gute Erklärung für die Faustregel , obwohl es sich lohnt, das ganze Video anzuschauen.
Wichtige Punkte
quelle