Video: Marcel Bernet: Big Data und künstliche Intelligenz 2024
Die Unterstützungsvektormaschine (SVM) ist ein Datenklassifizierungsalgorithmus Datenelemente zu einer der gekennzeichneten Kategorien. SVM ist in den meisten Fällen ein binärer Klassifizierer; Es wird davon ausgegangen, dass die fraglichen Daten zwei mögliche Zielwerte enthalten.
Eine andere Version des SVM-Algorithmus, Multiclass SVM, , erweitert SVM als Klassifikator für ein Dataset, das mehr als eine Klasse (Gruppierung oder Kategorie) enthält. SVM wurde erfolgreich in vielen Anwendungen wie Bilderkennung, medizinische Diagnose und Textanalyse eingesetzt.
Angenommen, Sie entwerfen ein Vorhersageanalysemodell, das den Namen eines Objekts in einem Bild automatisch erkennt und vorhersagt. Dies ist im Wesentlichen das Problem der Bilderkennung - oder genauer Gesichtserkennung: Sie möchten, dass der Klassifikator den Namen einer Person in einem Foto erkennt.
Nun, bevor Sie sich mit dieser Komplexität befassen, sollten Sie eine einfachere Version des gleichen Problems betrachten: Angenommen, Sie haben Bilder von einzelnen Fruchtstücken und möchten, dass Ihr Klassifikator vorhersagt, welche Frucht auf dem Bild erscheint. Angenommen, Sie haben nur zwei Obstsorten: Äpfel und Birnen, eine pro Bild.
Bei einem neuen Bild möchten Sie vorhersagen, ob die Frucht ein Apfel oder eine Birne ist - ohne auf das Bild zu schauen. Sie möchten, dass die SVM jedes Bild als Apfel oder Birne klassifiziert. Wie bei allen anderen Algorithmen besteht der erste Schritt darin, den Klassifikator zu trainieren.
Angenommen, Sie haben 200 Bilder von verschiedenen Äpfeln und 200 Bilder von Birnen. Der Lernschritt besteht darin, diese Bilder dem Klassifikator zuzuführen, damit er erfährt, wie ein Apfel aussieht und wie eine Birne aussieht. Bevor Sie in diesen ersten Schritt einsteigen, müssen Sie jedes Bild in eine Datenmatrix umwandeln, indem Sie (sagen wir) das statistische R-Paket verwenden.
Eine einfache Möglichkeit, ein Bild als Zahlen in einer Matrix darzustellen, besteht darin, nach geometrischen Formen innerhalb des Bildes zu suchen (z. B. Kreise, Linien, Quadrate oder Rechtecke) und auch die Positionen jeder Instanz von jede geometrische Form. Diese Zahlen können auch Koordinaten dieser Objekte innerhalb des Bildes darstellen, wie sie in einem Koordinatensystem dargestellt sind.
Wie Sie sich vorstellen können, ist es nicht gerade eine einfache Aufgabe, ein Bild als Zahlenmatrix darzustellen. Ein ganz bestimmter Forschungsbereich ist der Bilddarstellung gewidmet.
Im Folgenden wird gezeigt, wie eine Support-Vektor-Maschine die Klasse einer Frucht vorhersagen kann (mathematisch als Apfel oder Birne bezeichnet), basierend auf dem, was der Algorithmus in der Vergangenheit gelernt hat…
Angenommen, Sie haben alle Bilder in Datenmatrizen konvertiert. Dann nimmt die Support-Vektor-Maschine zwei Haupteingaben auf:
-
Vorherige (Trainings-) Daten: Diese Menge von Matrizen entspricht zuvor gesehenen Bildern von Äpfeln und Birnen.
-
Die neuen (nicht sichtbaren) Daten bestehen aus einem Bild, das in eine Matrix umgewandelt wurde. Der Zweck ist, automatisch vorauszusagen, was auf dem Bild ist - ein Apfel oder eine Birne.
Der Unterstützungsvektor verwendet eine mathematische Funktion, die oft eine Kernelfunktion genannt wird. Dies ist eine mathematische Funktion, die die neuen Daten mit dem besten Bild aus den Trainingsdaten abgleicht, um das Label des unbekannten Bildes vorherzusagen (Apfel oder Birne).
Im Vergleich zu anderen Klassifizierern liefern Support-Vektor-Maschinen robuste, genaue Vorhersagen, sind am wenigsten von verrauschten Daten betroffen und neigen weniger zur Überanpassung. Bedenken Sie jedoch, dass Support-Vektor-Maschinen am besten für die binäre Klassifizierung geeignet sind - wenn Sie nur zwei Kategorien haben (wie Apfel oder Birne).