6.1 Fluch der Dimensionalität
Bevor die SVM eingeführt wird, motivieren die Folien, warum man in hochdimensionalen Räumen einen besonderen Lernalgorithmus braucht. Die Kurzfassung: Hohe Dimension ist zugleich Fluch (man braucht exponentiell viele Daten) und Verlockung (fast alles wird linear trennbar). Beides zusammen führt ohne zusätzliches Kriterium direkt ins Overfitting.
Der Fluch der Dimensionalität
📄 08_svm.pdf, Folie 4Die Komplexität von Funktionen mehrerer Variablen kann exponentiell mit der Dimension wachsen. Die Schätzung einer solchen Funktion erfordert dann ebenfalls exponentiell viele Daten.
Beispiel Dichteschätzung: Man schätzt eine Wahrscheinlichkeitsdichte mit einem Histogramm und teilt dazu jede Achse in 10 Intervalle. Damit jede Zelle mindestens einmal „besucht“ ist (100 % Abdeckung, coverage), braucht man mindestens so viele Datenpunkte wie Zellen:
| Dimension | Zellen bzw. benötigte Punkte |
|---|---|
| 1 | |
| 2 | |
| 3 | |
| 6 | |
Schon bei einem kleinen Graustufenbild mit Pixeln wären das Zellen, weit mehr als es Atome im Universum gibt. Mit einer realistischen Datenmenge sind fast alle Zellen leer.
Übertragung auf Klassifikation: Dasselbe gilt für die Trennfläche zwischen zwei Klassen. Ist diese beliebig kompliziert, muss man sie überall „abtasten“, um sie zu kennen. Die Anzahl der benötigten Datenpunkte skaliert ebenfalls exponentiell mit der Dimension.
Hochdimensionale Daten liegen an der Oberfläche
📄 08_svm.pdf, Folie 5 📄 08_svm.pdf, Folie 6Ein zweiter, sehr unintuitiver Effekt: In hohen Dimensionen sitzt fast das ganze Volumen einer Kugel in einer dünnen Schale an ihrem Rand.
Annahme: Die Daten sind annähernd gleichverteilt. Dann ist die Anzahl der Beobachtungen in einem Bereich proportional zu seinem Volumen.
Frage: Welcher Volumenanteil einer -dimensionalen Kugel mit Radius liegt in der Schale zwischen und ?
Herleitung: Das Volumen einer -dimensionalen Kugel mit Radius ist
wobei eine nur von abhängige Konstante ist (in 2D , in 3D ). Setzt man und , so ist der Anteil der Schale der Dicke :
Die Konstante kürzt sich heraus, das Ergebnis hängt nur von und ab.
Zahlenbeispiel für eine Schale mit , also die äußeren 10 % des Radius:
| Anteil der Schale | ||
|---|---|---|
| 1 | 10 % | |
| 2 | 19 % | |
| 5 | 41 % | |
| 20 | 88 % | |
| 100 | 99,997 % |
Die Kurven auf Folie 6 (nach Bishop) zeigen genau diesen Zusammenhang: Für ist der Anteil schon bei kleinem nahe 1.
Schält man eine hochdimensionale Orange, bleibt fast nichts übrig, das meiste ist Schale. Gleichverteilte hochdimensionale Daten liegen fast alle nahe am Rand des Datenbereichs, und „Nachbarschaften“ im Inneren sind nahezu leer.
Ergänzung, nicht auf den Folien: Eine verwandte Folge ist, dass in hohen Dimensionen die Abstände zwischen zufälligen Punkten alle ungefähr gleich groß werden. Deshalb funktionieren abstandsbasierte Verfahren wie -Nearest-Neighbours in hohen Dimensionen oft schlecht.
Lineare Trennbarkeit in höheren Dimensionen
📄 08_svm.pdf, Folie 7Der Fluch hat eine Kehrseite, die auf den ersten Blick wie ein Segen aussieht:
- Bei -dimensionalen Daten sind weniger als Datenpunkte (also höchstens ) fast immer linear trennbar, egal wie die Labels verteilt sind. „Fast immer“ heißt: solange die Punkte in allgemeiner Lage sind, also z.B. nicht drei Punkte auf einer Geraden liegen.
- In 2D bedeutet das: 3 Punkte kann man (in allgemeiner Lage) mit jeder Beschriftung durch eine Gerade trennen. Bei 4 Punkten klappt das nicht mehr immer: Das XOR-Muster (gegenüberliegende Ecken eines Quadrats gleich beschriftet) ist nicht linear trennbar.
Das Problem: Selbst wenn die Trainingsdaten linear trennbar sind, folgt daraus nicht, dass der Klassifikator auf unabhängigen Testdaten gut funktioniert. Hat man nur wenige Punkte im Verhältnis zur Dimension, ist die Trennbarkeit kein Hinweis auf echte Struktur, sondern schlicht eine Folge der vielen Freiheitsgrade.
Faustregel der Folie: Man sollte ein Vielfaches von an Trainingsdaten haben, damit der Klassifikator überbestimmt ist, und sicherstellen, dass Trainings- und Testdaten ähnlich genug sind (aus derselben Verteilung stammen).
Wie kann man in einem hoch- oder sogar unendlichdimensionalen Merkmalsraum klassifizieren, ohne zu viele Daten zu benötigen?
Klassifikation mit beliebigen Trennebenen
📄 08_svm.pdf, Folie 8Die Abbildung (nach Schölkopf) zeigt drei Punkte in der Ebene und alle möglichen Beschriftungen. Jede davon lässt sich durch eine Gerade realisieren. Man sagt: Die Geraden können drei Punkte zerschmettern (shatter).
Ergänzung, nicht auf den Folien: Die maximale Anzahl von Punkten, die eine Klasse von Klassifikatoren zerschmettern kann, heißt VC-Dimension. Für Hyperebenen im ist sie . Das ist genau die „weniger als “-Aussage von oben.
Konsequenz:
- In hoch- und unendlichdimensionalen Räumen kann im Allgemeinen jede beliebige Punktkonfiguration getrennt werden.
- Dass genau die gleiche Aufteilung auch bei unabhängigen Testdaten gilt, ist sehr unwahrscheinlich. Das ist Overfitting (Überanpassung).
Klassifikation in hochdimensionalen Räumen: Zwischenfazit
📄 08_svm.pdf, Folie 9Fasst man die bisherigen Beobachtungen zusammen:
- Die Trennflächen zwischen zwei Punktwolken können mit zunehmender Dimension immer komplexer werden.
- Um beliebige Trennflächen zu lernen, bräuchte man eine exponentiell mit der Dimension wachsende Datenmenge. Im Allgemeinen ist Klassifikation in hoch- und unendlichdimensionalen Räumen damit unmöglich.
- Um dennoch lernen zu können, muss die Verteilung gutartig sein. Ein funktionierender Lernalgorithmus muss solche gutartigen Strukturen erkennen und ausnutzen.
- Reale Probleme besitzen in fast allen Fällen eine gutartige Struktur.
- Das Perzeptron beendet das Training, sobald die Trainingsdaten getrennt sind. Es hat keinen Mechanismus, der gutartige Strukturen berücksichtigt: Es nimmt irgendeine trennende Ebene, je nach Startwert und Reihenfolge der Beispiele.
Gutartige Klassifikationsprobleme
📄 08_svm.pdf, Folie 10Was „gutartig“ genau heißt, beantwortet die statistische Lerntheorie (statistical learning theory). Sie schätzt den Generalisierungsfehler einer Lernmaschine aus bestimmten Eigenschaften der Daten ab.
Für lineare Klassifikationsprobleme gilt:
- Linear trennbare Probleme mit hinreichend großer Trennbreite (margin) sind gutartig.
- Man kann beweisen, dass der Generalisierungsfehler mit hoher Wahrscheinlichkeit umso kleiner wird, je größer die Trennbreite ist.
- Erstaunlicherweise gilt dieses Resultat unabhängig von der Dimensionalität des Inputraums.
Sucht man statt einer beliebigen Trennebene eine mit möglichst großer Trennbreite, dann kann man in Räumen beliebiger Dimension klassifizieren. Genau das tut die Supportvektormaschine, siehe 6.2.
Warum ist das plausibel? Ergänzung, nicht auf den Folien: Eine Trennebene mit großem Abstand zu allen Punkten ist robust: Verschiebt man die Trainingspunkte ein wenig (Rauschen) oder kommen neue Testpunkte aus derselben Verteilung hinzu, landen diese mit hoher Wahrscheinlichkeit trotzdem auf der richtigen Seite. Außerdem schränkt ein großer Margin die Menge der möglichen Trennebenen stark ein: Bei Punkten in einer Kugel vom Radius können Hyperebenen mit Margin höchstens etwa Punkte zerschmettern (Vapnik). Diese „effektive Kapazität“ hängt nicht von ab, sondern nur vom Verhältnis .
Typische Fallstricke
- „Mehr Merkmale sind immer besser.“ Nein. Mehr Dimensionen machen die Trainingsdaten zwar leichter trennbar, aber ohne ein Kriterium wie die Trennbreite steigt die Gefahr von Overfitting.
- Lineare Trennbarkeit der Trainingsdaten ist kein Qualitätsmerkmal, wenn die Anzahl der Punkte in der Größenordnung von liegt.
- Die Unabhängigkeit von der Dimension bezieht sich auf die Generalisierungsschranke bei großem Margin, nicht darauf, dass die Dimension generell egal wäre. Ist der Margin klein, hilft auch die SVM nicht.