Kapitel 6 – Hochdimensionale Daten & SVM
Folien: 📄 08_svm.pdf, 📄 09_svm_nicht_trennbar.pdf · Woche 5, Prof. Franz
Worum geht es?
Bisher (Perzeptron, lineare Regression, Bayes) haben wir Klassifikatoren in eher niedrigdimensionalen Räumen betrachtet. In vielen echten Anwendungen hat ein Datenpunkt aber Hunderte oder Tausende Merkmale (Pixel eines Bildes, Wörter eines Textes, Gene). Und spätestens mit dem Kernel-Trick in Kapitel 7 arbeiten wir sogar in unendlichdimensionalen Merkmalsräumen.
Das wirft eine grundsätzliche Frage auf: Wie kann man in solchen Räumen überhaupt lernen, ohne exponentiell viele Daten zu brauchen? Die Antwort dieses Kapitels:
- Im Allgemeinen gar nicht, das ist der Fluch der Dimensionalität (curse of dimensionality).
- Wenn die Daten aber gutartig sind, geht es doch. Für lineare Klassifikatoren heißt „gutartig“: Die Klassen lassen sich mit großer Trennbreite (margin) trennen. Die statistische Lerntheorie zeigt, dass der Generalisierungsfehler dann klein ist, unabhängig von der Dimension.
- Die Supportvektormaschine (Support Vector Machine, SVM) sucht genau diese Trennebene mit maximaler Trennbreite. Das führt auf ein konvexes quadratisches Optimierungsproblem, das ein eindeutiges globales Optimum hat.
- Für nicht trennbare Daten werden Schlupfvariablen (slack variables) eingeführt (Soft Margin SVM). Umgeschrieben ist das ein Problem ohne Nebenbedingungen mit Hinge-Loss, das sich mit einem stochastischen Subgradientenverfahren (Pegasos) lösen lässt.
Die Vorlesung behandelt dabei durchgehend das primale Problem. Die duale Formulierung mit Lagrange-Multiplikatoren steht nicht auf diesen Folien. Sie ist hier als Ergänzung aufbereitet, weil sie in fast jedem Lehrbuch vorkommt und erklärt, warum nur die Supportvektoren zählen. In der Vorlesung kommt die duale Darstellung in Kapitel 7 über das Representer-Theorem.
Aufbau des Kapitels
| Abschnitt | Inhalt |
|---|---|
| 6.1 Fluch der Dimensionalität | Exponentieller Datenbedarf, Volumen in der Kugelschale, lineare Trennbarkeit in hohen Dimensionen, gutartige Probleme |
| 6.2 Die optimale Trennebene | Hyperebenen, kanonische Form, geometrischer Abstand, Trennbreite , Supportvektoren, primales SVM-Problem, Zahlenbeispiele |
| 6.3 Konvexe Optimierung | Optimierung unter Nebenbedingungen, lokale/globale Optima, konvexe Mengen und Funktionen, warum die SVM konvex ist |
| 6.4 Lagrange-Dualität und KKT (Ergänzung) | Lagrange-Funktion, KKT-Bedingungen, duales Problem, warum nur für Supportvektoren |
| 6.5 Soft Margin SVM | Nicht trennbare Daten, Schlupfvariablen , Regularisierungsparameter |
| 6.6 Hinge-Loss und Pegasos | Umformung ohne Nebenbedingungen, Hinge-Loss, Subgradienten, Subgradientenmethode, Pegasos |
Der zweite Teil von Termin 10, der Kernel-Trick, folgt in Kapitel 7.
Notation
Die Folien verwenden durchgehend folgende Schreibweisen:
| Symbol | Bedeutung |
|---|---|
| Skalarprodukt | |
| Trainingsmenge mit Beispielen | |
| Klassenlabel | |
| Dimension des Eingaberaums, | |
| Entscheidungsfunktion, Klassifikation über | |
| Trennbreite (margin) | |
| Schlupfvariable des -ten Beispiels | |
| Regularisierungsparameter der Soft Margin SVM |
Prüfungsrelevant / Selbsttest
- Was besagt der Fluch der Dimensionalität, und warum ist er für die Klassifikation ein Problem?
Antwort
Die Komplexität einer Funktion mehrerer Variablen kann exponentiell mit der Dimension wachsen. Um sie zu schätzen, braucht man entsprechend exponentiell viele Daten: Mit 10 Intervallen pro Achse braucht man in Dimensionen Zellen. Dasselbe gilt für eine Trennfläche zwischen zwei Klassen: Um eine beliebig komplizierte Trennfläche in hoher Dimension abzutasten, bräuchte man exponentiell viele Trainingspunkte. Im Allgemeinen ist Klassifikation in hoch- und unendlichdimensionalen Räumen daher unmöglich, es sei denn, das Problem ist gutartig.
- Welcher Anteil des Volumens einer 20-dimensionalen Einheitskugel liegt in der äußeren Schale der Dicke ?
Antwort
. Also rund 88 % des Volumens liegen in den äußeren 10 % des Radius. Gleichverteilte Daten liegen in hohen Dimensionen fast alle „an der Oberfläche“.
- Warum ist ein Perzeptron in hohen Dimensionen problematisch, und was macht die SVM anders?
Antwort
In hohen Dimensionen sind (fast) beliebige Trainingsmengen linear trennbar. Das Perzeptron hört auf, sobald irgendeine trennende Ebene gefunden ist. Welche das ist, hängt vom Zufall (Startwert, Reihenfolge) ab, und es gibt keinen Mechanismus, der gutartige Strukturen ausnutzt. Ergebnis: Overfitting. Die SVM wählt unter allen trennenden Ebenen diejenige mit maximaler Trennbreite. Nach der statistischen Lerntheorie ist der Generalisierungsfehler dann mit hoher Wahrscheinlichkeit klein, und zwar unabhängig von der Dimension.
- Leite her, warum die Trennbreite einer kanonischen Trennebene ist.
Antwort
Der vorzeichenbehaftete Abstand eines Punkts zur Ebene ist . In kanonischer Form gilt für die nächstgelegenen Punkte , also . Die nächsten Punkte beider Klassen liegen auf den Ebenen und , jeweils im Abstand von der Trennebene. Der freie Streifen zwischen ihnen ist also breit. Siehe 6.2.
- Formuliere das primale Optimierungsproblem der Hard Margin SVM. Warum minimiert man statt zu maximieren?
Antwort
Minimiere unter den Nebenbedingungen . Die Trennbreite zu maximieren ist äquivalent dazu, zu minimieren. Da die Wurzel monoton steigt, hat dasselbe Minimum, ist aber eine glatte, konvexe quadratische Funktion. Damit ist das Problem ein quadratisches Programm mit linearen Ungleichungsnebenbedingungen.
- Warum ist das SVM-Problem konvex, und was folgt daraus?
Antwort
ist eine konvexe Funktion (Summe von Quadraten). Jede Nebenbedingung ist linear und definiert einen Halbraum, also eine konvexe Menge. Der zulässige Bereich ist der Schnitt dieser Halbräume und damit konvex. Für ein konvexes Problem ist jedes lokale Minimum ein globales: Man kann nicht in lokalen Minima hängen bleiben (anders als z.B. bei MLPs).
- Was sind Supportvektoren, und warum heißen sie so?
Antwort
Die Trainingspunkte, die am nächsten an der Trennebene liegen, also genau auf dem Rand des Margins mit (bei Soft Margin zusätzlich alle Punkte mit ). Nur sie bestimmen die Lage der optimalen Trennebene („stützen“ sie, engl. to support). Alle anderen Punkte könnte man weglassen oder verschieben, solange sie außerhalb des Margins bleiben, ohne dass sich die Lösung ändert.
- Welche Rolle spielt die Schlupfvariable ? Was bedeuten , und ?
Antwort
misst, wie stark die Nebenbedingung verletzt wird: . Bei liegt der Punkt korrekt und außerhalb oder auf dem Margin. Bei liegt er innerhalb des Margins, aber noch auf der richtigen Seite (bzw. bei genau auf der Trennebene). Bei liegt er auf der falschen Seite der Trennebene und ist fehlklassifiziert.
- Wie wirkt sich der Parameter aus? Was passiert für ?
Antwort
gewichtet die Summe der Schlupfvariablen gegen die Trennbreite. Großes bestraft Verletzungen stark: schmaler Margin, wenige Fehler auf den Trainingsdaten, Gefahr von Overfitting. Für erhält man die Hard Margin SVM (sofern die Daten trennbar sind). Kleines erlaubt mehr Verletzungen zugunsten eines breiten Margins, das ist laut Folie bei stark verrauschten, schlecht trennbaren Daten tendenziell besser.
- Was ist der Hinge-Loss, und warum braucht man zur Optimierung Subgradienten?
Antwort
. Er ist null für Punkte mit und wächst linear, je stärker der Margin verletzt wird. Er ist eine konvexe obere Schranke des 0-1-Verlusts, aber bei nicht differenzierbar (Knick). Dort gibt es keinen Gradienten, aber eine Menge von Subgradienten. Die Subgradientenmethode läuft in Richtung eines beliebigen negativen Subgradienten. Pegasos ist die stochastische Variante davon mit Lernrate .