Heim >Technologie-Peripheriegeräte >KI >Umfassende Einführung in den Support Vector Machine (SVM)-Algorithmus
Support Vector Machine (SVM) ist ein leistungsstarker und anpassungsfähiger überwachter Lernalgorithmus, der für Ausreißererkennungs-, Regressions- und Klassifizierungsaufgaben verwendet wird. Es ist besonders effektiv in hochdimensionalen Domänen und wird daher häufig bei Klassifizierungsaufgaben eingesetzt.
Der Hauptzweck einer Support Vector Machine (SVM) besteht darin, den Datensatz in eine große Anzahl von Klassen zu unterteilen, um die Maximum Marginal Hyperplane (MMH) zu ermitteln, was in zwei Schritten erfolgen kann:
Schritt 1: Die SVM wird zunächst iterativ erstellt. Die Hyperebene, die Kategorien am besten unterscheidet.
Schritt 2: Anschließend wird die Hyperebene ausgewählt, die die Klassen am besten trennt.
Die Dimension der Hyperebene hängt von der Anzahl der Features ab. Wenn die Anzahl der Features 2 beträgt, ist die Hyperebene eine Linie. Wenn die Anzahl der Features 3 beträgt, wird die Hyperebene zu einer zweidimensionalen Ebene.
Um eine Hyperebene zu konstruieren, verwendet eine Support Vector Machine (SVM) Extremumvektoren als Supportvektoren. Das Ziel von SVM besteht darin, eine ideale Hyperebene mit großen Spielräumen zur Diskretisierung von Stichproben verschiedener Kategorien im n-dimensionalen Raum zu finden.
Python implementiert die Support Vector Machine (SVM)-Klassifizierung
1 Support Vector – Der Datenpunkt, der der Hyperebene am nächsten liegt, wird Support Vector genannt. Zur Bestimmung der Trennlinie können Sie Stützvektoren verwenden.
2. Hyperebene – Der Raum oder die Entscheidungsebene, die eine Menge von Elementen in mehrere Kategorien unterteilt, wird Hyperebene genannt.
3. Marge – der Abstand zwischen zwei Linien auf den nächstgelegenen Datenpunkten verschiedener Kategorien.
4. Maximaler Spielraum – Die ideale Hyperebene ist die Hyperebene mit dem größten Spielraum.
Support Vector Machine Kernel ist eine Funktion, die einen niedrigdimensionalen Eingaberaum nimmt und ihn in einen hochdimensionalen Raum umwandelt, d. h. ein nicht trennbares Problem in ein trennbares Problem umwandelt. Es wird hauptsächlich für nichtlineare Trennungsprobleme verwendet. Einfach ausgedrückt führt der Kernel einige äußerst komplexe Datentransformationen durch und findet dann heraus, wie die Daten anhand definierter Tags oder Ausgaben getrennt werden.
1. Effektiv in hochdimensionalen Situationen
2. Sehr speichereffizient, da eine Teilmenge von Trainingspunkten, sogenannte Support Vectors, in der Entscheidungsfunktion verwendet wird Entscheidungsfunktionen geben verschiedene Kernelfunktionen an, und es können benutzerdefinierte Kernel angegeben werden
Das obige ist der detaillierte Inhalt vonUmfassende Einführung in den Support Vector Machine (SVM)-Algorithmus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!