Glossar

Support-Vektor-Maschine (SVM)

Entdecken Sie die Leistungsfähigkeit von Support Vector Machines (SVMs) für Klassifizierung, Regression und Ausreißererkennung, mit Anwendungen und Einblicken aus der Praxis.

Die Support Vector Machine (SVM) ist ein beliebter und leistungsfähiger Algorithmus des überwachten maschinellen Lernens (ML), der in erster Linie für Klassifizierungsaufgaben verwendet wird, obwohl er auch für Regressionen (Support Vector Regression - SVR) und die Erkennung von Ausreißern geeignet ist. Der in den 1990er Jahren entwickelte SVM-Algorithmus, der auf Wikipedia ausführlich beschrieben wird, funktioniert, indem er eine optimale Grenze, eine so genannte Hyperebene, findet, die Datenpunkte, die zu verschiedenen Klassen in einem hochdimensionalen Raum gehören, am besten trennt. Der Grundgedanke ist die Maximierung der Marge - des Abstands zwischen der Hyperebene und den nächstgelegenen Datenpunkten (Stützvektoren) aus jeder Klasse -, was häufig zu einer guten Verallgemeinerungsleistung bei ungesehenen Daten führt.

Wie funktioniert Svm?

Das Kernprinzip von SVM besteht darin, die ideale Hyperebene zur Unterteilung eines Datensatzes zu finden. Für Daten, die durch eine gerade Linie oder eine flache Ebene getrennt werden können (linear trennbare Daten), identifiziert SVM die Hyperebene, die den größtmöglichen Abstand zwischen den Klassen erzeugt. Die Datenpunkte aus den Trainingsdaten, die dieser Hyperebene am nächsten liegen und die für die Definition ihrer Position und Ausrichtung entscheidend sind, werden als Stützvektoren bezeichnet. Diese Konzentration auf die schwierigsten Punkte in der Nähe der Grenze macht die SVM speichereffizient, da nur diese Stützvektoren zur Definition des Modells nach dem Training benötigt werden.

Für Datensätze, bei denen die Klassen nicht durch eine lineare Grenze getrennt werden können (nicht linear trennbare Daten), verwenden SVMs eine Technik namens Kernel-Trick. Diese clevere Methode ermöglicht es SVMs, die ursprünglichen Daten in einen höherdimensionalen Raum abzubilden, in dem eine lineare Trennung möglich ist, ohne die Koordinaten in diesem neuen Raum explizit zu berechnen. Übliche Kernel-Funktionen sind:

  • Linear: Für linear trennbare Daten.
  • Polynomial: Bildet Daten mithilfe von Polynomfunktionen auf höhere Dimensionen ab.
  • Radiale Basisfunktion (RBF): Eine beliebte Wahl für komplexe, nicht-lineare Beziehungen.
  • Sigmoid: Ähnlich der Aktivierungsfunktion, die in neuronalen Netzen (NN) verwendet wird.

Die Wahl des Kernels und seiner Parameter ist entscheidend und erfordert oft eine sorgfältige Abstimmung der Hyperparameter.

Relevanz und Anwendungen

SVMs bleiben trotz des Aufstiegs von Deep Learning (DL) relevant, insbesondere in Szenarien mit hochdimensionalen Daten (viele Merkmale), aber begrenzten Trainingsstichproben. Sie sind für ihre theoretischen Garantien und ihre Robustheit bekannt, insbesondere wenn ein klarer Trennungsspielraum besteht. In der Vergangenheit waren SVMs in Kombination mit Merkmalsextraktoren wie Histogram of Oriented Gradients (HOG) der Stand der Technik für Aufgaben wie die Objekterkennung, wie in der Entwicklung der Objekterkennung festgestellt.

Zu den üblichen Anwendungen gehören:

  • Bildklassifizierung: Kategorisierung von Bildern auf der Grundlage ihres Inhalts (z. B. Unterscheidung zwischen verschiedenen Arten von Blumen oder Tieren). SVMs können effektiv sein, wenn sie mit handgefertigten Merkmalen verwendet werden, die aus Bildern extrahiert wurden, insbesondere bei Datensätzen von moderater Größe.
  • Text-Kategorisierung: Klassifizierung von Textdokumenten in vordefinierte Kategorien, wie z. B. die Erkennung von Spam-E-Mails oder die Stimmungsanalyse von Kundenrezensionen. SVMs können hochdimensionale Textdaten (wie TF-IDF-Merkmale) gut verarbeiten.
  • Bioinformatik: Wird für Aufgaben wie die Proteinklassifizierung oder die Krebsdiagnose auf der Grundlage von Genexpressionsdaten verwendet, bei denen die Anzahl der Merkmale im Vergleich zur Anzahl der Proben sehr groß sein kann.
  • Gesichtserkennung: Identifizierung oder Verifizierung von Personen anhand von Gesichtsmerkmalen, oft als Teil eines größeren Systems.

Vorteile und Beschränkungen

Vorteile:

  • Effektiv in hohen Dimensionen: Die Leistung ist auch dann gut, wenn die Anzahl der Merkmale größer ist als die Anzahl der Stichproben.
  • Effizienter Speicher: Verwendet nur eine Teilmenge der Trainingspunkte (Support-Vektoren) in der Entscheidungsfunktion.
  • Vielseitig: Es können verschiedene Kernel-Funktionen für die Entscheidungsfunktion angegeben werden, was eine flexible Handhabung verschiedener Datentypen ermöglicht.
  • Gute Verallgemeinerung: Das Ziel der Margenmaximierung führt oft zu Modellen mit guter Genauigkeit bei ungesehenen Daten.

Beschränkungen:

  • Berechnungsintensiv: Das Training kann bei sehr großen Datensätzen langsam sein.
  • Kernel und Parameterempfindlichkeit: Die Leistung hängt stark von der Wahl des Kernels und seiner Parameter (z. B. C, Gamma) ab und erfordert eine sorgfältige Abstimmung.
  • Schlechte Leistung bei sich überschneidenden Klassen: Nicht ideal, wenn sich die Datenklassen stark überschneiden.
  • Keine direkten Wahrscheinlichkeitsschätzungen: Standard-SVMs erzeugen Klassenzuordnungen, aber keine direkten Wahrscheinlichkeitswerte. Techniken wie die Platt-Skalierung werden benötigt, um SVM-Ausgaben in Wahrscheinlichkeiten zu kalibrieren.

Svm Vs. andere Algorithmen

Im Vergleich zu einfacheren Algorithmen wie der logistischen Regression zielen SVMs darauf ab, den Spielraum zu maximieren, anstatt nur eine Trenngrenze zu finden, was zu einer besseren Verallgemeinerung führen kann. Im Gegensatz zu baumbasierten Methoden wie Entscheidungsbäumen oder Zufallsforsten konstruieren SVMs eine einzige optimale Hyperebene (möglicherweise in einem hochdimensionalen Raum). Während moderne Deep-Learning-Modelle wie Ultralytics YOLO bei der automatischen Merkmalsextraktion aus Rohdaten (wie Pixeln in der Computer Vision (CV)) brillieren, erfordern SVMs oft eine sorgfältige Merkmalstechnik, können aber bei kleineren Datensätzen oder bestimmten Arten von strukturierten Daten, bei denen die Merkmale gut definiert sind, außergewöhnlich gut funktionieren. Beliebte Implementierungen sind LibSVM und das SVM-Modul in scikit-learn. Das Training und die Verwaltung solcher und anderer Modelle kann mit Plattformen wie Ultralytics HUB rationalisiert werden, die den Lebenszyklus von MLOps vereinfachen.

Werden Sie Mitglied der Ultralytics-Gemeinschaft

Beteiligen Sie sich an der Zukunft der KI. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert
OSZAR »