Ich habe eine Klasse SVM verwendet für meine Forschungsarbeit eine in scikit-learn implementierte . Aber ich habe kein gutes Verständnis dafür.
Kann jemand bitte eine einfache, gute Erklärung für eine Klasse SVM geben ?
Ich habe eine Klasse SVM verwendet für meine Forschungsarbeit eine in scikit-learn implementierte . Aber ich habe kein gutes Verständnis dafür.
Kann jemand bitte eine einfache, gute Erklärung für eine Klasse SVM geben ?
Antworten:
Das von One Class SVM angesprochene Problem ist, wie in der Dokumentation angegeben, die Erkennung von Neuheiten . Das Originalpapier, in dem die Verwendung von SVMs für diese Aufgabe beschrieben wird, lautet " Support Vector Method for Novelty Detection ".
Die Idee der Neuheitserkennung besteht darin, seltene Ereignisse zu erkennen, dh Ereignisse, die selten auftreten und von denen Sie daher nur sehr wenige Proben haben. Das Problem ist dann, dass die übliche Art, einen Klassifikator zu trainieren, nicht funktioniert.
Wie entscheiden Sie, was ein neuartiges Muster ist? Viele Ansätze basieren auf der Schätzung der Wahrscheinlichkeitsdichte für die Daten. Neuheit entspricht jenen Proben, bei denen die Wahrscheinlichkeitsdichte "sehr gering" ist. Wie niedrig hängt von der Anwendung ab.
SVMs sind nun Max-Margin-Methoden, dh sie modellieren keine Wahrscheinlichkeitsverteilung. Hier geht es darum, eine Funktion zu finden, die für Regionen mit hoher Punktdichte positiv und für kleine Dichten negativ ist.
Die groben Details sind in der Zeitung angegeben. ;) Wenn Sie wirklich beabsichtigen, das Papier durchzugehen, stellen Sie sicher, dass Sie zuerst die Einstellungen des grundlegenden SVM-Algorithmus für die Klassifizierung verstehen. Es wird viel einfacher sein, die Grenzen und die Motivation des Algorithmus zu verstehen.