Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Support Vector Machine (SVM)

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

Support Vector Machine (SVM) ist ein leistungsstarker und vielseitiger Algorithmus für überwachtes Lernen, der sowohl für Klassifizierungs- als auch für Regressionsaufgaben verwendet wird. Im Kern findet eine SVM eine optimale Hyperebene oder Entscheidungsgrenze, die Datenpunkte am besten in verschiedene Klassen trennt. Was SVM besonders effektiv macht, ist das Ziel, die Marge zu maximieren—die Distanz zwischen der trennenden Hyperebene und den nächstgelegenen Datenpunkten einer beliebigen Klasse. Dieses Prinzip, das in der grundlegenden Arbeit von Cortes und Vapnik detailliert beschrieben wird, trägt dazu bei, die Generalisierungsfähigkeit des Modells zu verbessern, wodurch es weniger anfällig für Overfitting ist.

Wie SVMs funktionieren

Der Algorithmus funktioniert, indem er jedes Datenelement als Punkt in einem n-dimensionalen Raum darstellt (wobei n die Anzahl der Merkmale ist). Die Klassifizierung erfolgt dann durch Auffinden der Hyperebene, die die beste Trennung zwischen den Klassen schafft.

  • Hyperebene: Dies ist die Entscheidungsgrenze. In einem Datensatz mit zwei Merkmalen ist es eine Linie; mit drei ist es eine Ebene. Für mehr Merkmale wird es zu einer Hyperebene.
  • Support Vectors (Stützvektoren): Dies sind die Datenpunkte, die am nächsten an der Hyperebene liegen. Sie sind entscheidend, weil sie die Marge definieren, und ihre Entfernung würde die Position der Hyperebene verändern. Eine ausgezeichnete Visualisierung von Stützvektoren findet sich in den Vorlesungsunterlagen CS229 von Stanford.
  • Margin: Die Margin ist der Abstand zwischen den Supportvektoren und der Hyperebene. Das Ziel von SVM ist es, die Hyperebene zu finden, die diese Margin maximiert und so die robusteste Trennung wie möglich schafft.
  • Der Kernel-Trick: Für Daten, die nicht linear trennbar sind, verwenden SVMs eine Technik, die als Kernel-Trick bezeichnet wird. Diese leistungsstarke Methode beinhaltet die Transformation der Daten in einen höherdimensionalen Raum, in dem ein linearer Separator gefunden werden kann, ohne explizit die Koordinaten der Daten in diesem neuen Raum zu berechnen. Beliebte Kernel wie die Radial Basis Function (RBF) können sehr komplexe, nicht-lineare Beziehungen verarbeiten. In einem Leitfaden zu SVM-Kerneln finden Sie weitere Details.

Anwendungsfälle in der Praxis

SVMs sind in vielen Bereichen effektiv, insbesondere bei Problemen mit hochdimensionalen Daten.

  • Bioinformatik: In der Genomik und Proteomik werden SVMs zur Klassifizierung von Proteinen und zur Analyse von Genexpressionsdaten eingesetzt. Sie können beispielsweise bei der Identifizierung von Krebs-Subtypen auf der Grundlage von Microarray-Daten helfen, eine Aufgabe, die Tausende von Merkmalen umfasst. Dies macht sie zu einem wichtigen Werkzeug im Bereich KI im Gesundheitswesen.
  • Bildklassifizierung: Vor der Dominanz tiefer neuronaler Netze waren SVMs ein Top-Performing-Modell für die Bildklassifizierung. Sie wurden erfolgreich für Aufgaben wie die Erkennung handgeschriebener Ziffern auf Datensätzen wie MNIST und die Objekterkennung auf Caltech-101 eingesetzt.
  • Textklassifizierung: In der Natural Language Processing (NLP) sind SVMs effektiv für Aufgaben wie Spamerkennung und Sentimentanalyse. Sie können die hochdimensionalen Feature Spaces, die durch Textvektorisierungsverfahren entstehen, effizient verwalten.

SVM vs. andere Algorithmen

Im Vergleich zu einfacheren Algorithmen wie der logistischen Regression zielen SVMs darauf ab, die Marge zu maximieren, anstatt nur eine trennende Grenze zu finden, was zu einer besseren Generalisierung führen kann. Im Gegensatz zu baumbasierten Methoden wie Entscheidungsbäumen oder Random Forests konstruieren SVMs eine einzelne optimale Hyperebene (möglicherweise in einem hochdimensionalen Raum). Während moderne Deep Learning-Modelle wie Ultralytics YOLO sich durch die automatische Merkmalsextraktion aus Rohdaten (wie Pixeln in der Computer Vision (CV)) auszeichnen, erfordern SVMs oft ein sorgfältiges Feature Engineering, können aber bei kleineren Datensätzen oder bestimmten Arten von strukturierten Daten, bei denen die Merkmale gut definiert sind, außergewöhnlich gut abschneiden. Viele solcher Datensätze finden Sie im UCI Machine Learning Repository.

Beliebte Implementierungen umfassen LibSVM und das SVM-Modul in scikit-learn. Obwohl SVM typischerweise nicht den Kern moderner CV-Frameworks wie PyTorch oder TensorFlow bildet, kann es in breitere Workflows integriert werden. Das Trainieren und Verwalten solcher Modelle sowie verschiedener anderer kann mithilfe von Plattformen wie Ultralytics HUB optimiert werden, was den MLOps-Lebenszyklus von der Datenbeschriftung über das Hyperparameter-Tuning bis hin zur endgültigen Modellbereitstellung vereinfacht.

Treten Sie der Ultralytics-Community bei

Gestalten Sie die Zukunft der KI mit. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert