In welchen Bereichen sind SVMs noch auf dem neuesten Stand der Technik?

10

Es scheint, dass tiefe neuronale Netze und andere auf neuronalen Netzen basierende Modelle viele aktuelle Bereiche wie Computer Vision, Objektklassifizierung, Verstärkungslernen usw. dominieren.

Gibt es Bereiche, in denen SVMs (oder andere Modelle) immer noch Ergebnisse auf dem neuesten Stand der Technik liefern?

Steven Davis
quelle

Antworten:

12

State-of-the-Art ist eine schwierige Messlatte, da nicht klar ist, wie sie gemessen werden soll. Ein alternatives Kriterium, das dem Stand der Technik entspricht, ist die Frage, wann Sie möglicherweise lieber eine SVM ausprobieren möchten.

SVMs haben mehrere Vorteile:

  1. Durch den Kernel-Trick erhöht sich die Laufzeit einer SVM nicht wesentlich, wenn Sie Muster über viele nichtlineare Kombinationen von Features anstatt über den ursprünglichen Feature-Set lernen möchten. Im Gegensatz dazu muss ein moderner Ansatz wie ein tiefes neuronales Netzwerk tiefer oder breiter werden, um dieselben Muster zu modellieren, was die Trainingszeit verlängert.
  2. SVMs tendieren inhärent dazu, "konservative" Hypothesen auszuwählen, die weniger wahrscheinlich zu den Daten passen, weil sie versuchen, Hypothesen mit maximaler Marge zu finden. In gewisser Weise "backen" sie Ockhams Rasiermesser ein.
  3. SVMs haben nur zwei Hyperparameter (die Wahl des Kernels und die Regularisierungskonstante), sodass sie sehr einfach auf bestimmte Probleme abgestimmt werden können. Normalerweise reicht es aus, sie durch eine einfache Rastersuche durch den Parameterraum abzustimmen, die automatisch durchgeführt werden kann.

SVMs haben auch einige Nachteile:

  1. Ö(n3)Ö(wne)neww,e<<n
  2. Ö(n2)

Alle diese Faktoren deuten darauf hin, dass SVMs für genau einen Anwendungsfall relevant sind: kleine Datensätze, bei denen das Zielmuster a priori als reguläre, aber stark nichtlineare Funktion einer großen Anzahl von Merkmalen angesehen wird. Dieser Anwendungsfall tritt tatsächlich ziemlich oft auf. Eine aktuelle Beispielanwendung, bei der ich SVMs als natürlichen Ansatz ansah, war die Erstellung von Vorhersagemodellen für eine Zielfunktion, die bekanntermaßen das Ergebnis von Interaktionen zwischen Merkmalspaaren ist (insbesondere die Kommunikation zwischen Agentenpaaren). Eine SVM mit einem quadratischen Kernel könnte daher effizient konservative, vernünftige Vermutungen lernen.


1 Es gibt ungefähre Algorithmen, mit denen die SVM schneller gelöst werden kann, wie in den anderen Antworten angegeben.

John Doucette
quelle
7

Deep Learning und Neuronale Netze werden aufgrund der jüngsten Fortschritte auf diesem Gebiet immer wichtiger, und die meisten Experten glauben, dass dies die Zukunft der Lösung von Problemen des maschinellen Lernens ist.

Aber machen Sie keinen Fehler, klassische Modelle liefern immer noch außergewöhnliche Ergebnisse und können bei bestimmten Problemen bessere Ergebnisse erzielen als Deep Learning.

Die lineare Regression ist nach wie vor der mit Abstand am häufigsten verwendete Algorithmus für maschinelles Lernen weltweit.

Es ist schwierig, einen bestimmten Bereich zu identifizieren, in dem klassische Modelle immer eine bessere Leistung erbringen, da die Genauigkeit stark von der Form und Qualität der Eingabedaten abhängt.

Die Auswahl von Algorithmen und Modellen ist also immer ein Kompromiss. Es ist eine ziemlich genaue Aussage, dass klassische Modelle mit kleineren Datensätzen immer noch eine bessere Leistung erbringen. Es wird jedoch viel geforscht, um die Leistung des Deep-Learning-Modells mit weniger Daten zu verbessern.

Die meisten klassischen Modelle erfordern weniger Rechenressourcen. Wenn Ihr Ziel also Geschwindigkeit ist, ist es viel besser.

Außerdem sind klassische Modelle einfacher zu implementieren und zu visualisieren. Dies kann ein weiterer Indikator für die Leistung sein, hängt jedoch von Ihren Zielen ab.

Wenn Sie über unbegrenzte Ressourcen verfügen, einen massiven beobachtbaren Datensatz, der ordnungsgemäß gekennzeichnet ist und Sie ihn korrekt in der Problemdomäne implementieren, wird Deep Learning in den meisten Fällen wahrscheinlich zu besseren Ergebnissen führen.

Aber meiner Erfahrung nach sind die realen Bedingungen niemals so perfekt

IsakBosman
quelle
0

Stimme voll und ganz der Antwort von @ John zu. Ich werde versuchen, das mit einigen weiteren Punkten zu ergänzen.

Einige Vorteile von SVMs:

a) SVM wird durch ein konvexes Optimierungsproblem definiert, für das es effiziente Lösungsmethoden wie SMO gibt .

b) Wirksam in hochdimensionalen Räumen und auch in Fällen, in denen die Anzahl der Dimensionen größer ist als die Anzahl der Proben.

c) Verwendet eine Teilmenge von Trainingspunkten in der Entscheidungsfunktion (sogenannte Unterstützungsvektoren), so dass sie auch speichereffizient ist.

d) Für die Entscheidungsfunktion können verschiedene Kernelfunktionen angegeben werden. . In seiner einfachsten Form bedeutet der Kernel-Trick, Daten in eine andere Dimension zu transformieren, die einen klaren Aufteilungsspielraum zwischen Datenklassen aufweist.

Die Nachteile von Support-Vektor-Maschinen umfassen:

a) Wenn die Anzahl der Features viel größer ist als die Anzahl der Samples, ist es entscheidend, eine Überanpassung bei der Auswahl der Kernelfunktionen und des Regularisierungsterms zu vermeiden. Kernelmodelle können sehr empfindlich auf eine Überanpassung des Modellauswahlkriteriums reagieren

b) SVMs liefern keine direkten Wahrscheinlichkeitsschätzungen. Bei vielen Klassifizierungsproblemen möchten Sie tatsächlich die Wahrscheinlichkeit einer Klassenmitgliedschaft. Daher ist es besser, eine Methode wie die logistische Regression zu verwenden, als die Ausgabe der SVM nachzubearbeiten, um Wahrscheinlichkeiten zu erhalten.

naiv
quelle
-1

Für Datensätze mit niedrigdimensionalen Tabellendaten. DNN sind bei niedrigdimensionalen Eingaben aufgrund einer enormen Überparametrisierung nicht effizient. Selbst wenn der Datensatz sehr groß ist, aber jede Stichprobe eine niedrigdimensionale SVM ist, würde dies DNN übertreffen.

Allgemeiner gesagt, wenn die Daten tabellarisch sind und die Korrelation zwischen den Feldern der Stichprobe schwach und verrauscht ist, kann SVM DNN auch für hochdimensionale Daten noch übertreffen, dies hängt jedoch von bestimmten Daten ab.

Leider kann ich mich an keine bestimmten Artikel zu diesem Thema erinnern, daher handelt es sich meistens um vernünftige Überlegungen, man muss ihm nicht vertrauen.

mirror2image
quelle