7.2 Duale Darstellung
Bevor man den Kernel-Trick anwenden kann, muss die Lernmaschine so umgeschrieben werden, dass die Daten nur noch in Skalarprodukten vorkommen. Das leistet die duale Darstellung (dual representation): Statt den Gewichtsvektor direkt zu lernen, lernt man für jeden Trainingspunkt einen Koeffizienten .
Wiederholung: duale Repräsentation beim Perzeptron
📄 10_kern.pdf, Folie 9Der Perzeptron-Algorithmus addiert fehlklassifizierte positive Beispiele zum Gewichtsvektor und subtrahiert fehlklassifizierte negative Beispiele. Kompakt: Bei einem Fehler auf mit wird
Startet man mit , so ist der resultierende Gewichtsvektor eine Linearkombination der Trainingsdaten:
- Die nichtnegativen Koeffizienten heißen Einbettungsstärken (embedding strengths). Beim Perzeptron ist genau die Anzahl der Fehlklassifikationen, die Beispiel während des Trainings verursacht hat.
- Damit ist eine Art Maß für die Schwierigkeit oder den Informationsgehalt des Datenpunktes: Punkte, die leicht richtig klassifiziert werden, haben und tragen nichts zu bei. Punkte nahe der Grenze werden oft „korrigiert“ und bekommen große .
- Für einen festen Datensatz kann man den Vektor als alternative Repräsentation des Gewichtsvektors ansehen, die duale Repräsentation. Die übliche Darstellung über heißt primal.
Kleines Beispiel (Ergänzung): Drei Trainingspunkte, das Perzeptron hat sich während des Trainings bei (Klasse ) zweimal und bei (Klasse ) einmal geirrt, bei nie. Dann ist und
Kombination von Merkmalen und linearen Lernmaschinen
📄 10_kern.pdf, Folie 10Nun kombiniert man das mit der Merkmalsbildung aus 7.1. In der primalen Form ersetzt man einfach durch :
Problem: lebt jetzt im Merkmalsraum und hat Komponenten. Ist riesig oder unendlich, kann man nicht mehr speichern.
Das Repräsentertheorem
Aufgrund des Repräsentertheorems (representer theorem) sind die Gewichtsvektoren für eine große Gruppe von Optimierungsproblemen Linearkombinationen der Trainingsdaten, sofern sie sich als Lösung eines solchen Problems ergeben (z. B. Perzeptron, SVM, regularisierte Kleinste-Quadrate-Regression):
Im Merkmalsraum entsprechend . Die Gewichte werden je nach Lernalgorithmus und Aufgabenstellung gewählt (beim Perzeptron Fehlerzähler, bei der SVM Lagrange-Multiplikatoren).
Ergänzung, nicht auf den Folien – Intuition: Ein Anteil von , der senkrecht auf allen Trainingspunkten steht, ändert keine einzige Vorhersage auf den Trainingsdaten, macht aber größer. Bei einem Verfahren, das klein halten will (Regularisierung, Margin-Maximierung), lohnt sich so ein Anteil nie. Also liegt das optimale im Aufspann der Trainingspunkte.
Die duale Form
Setzt man in ein, bekommt man die duale Form (die Anzahl der Gewichte bleibt gleich: Stück, eines pro Trainingspunkt):
Herleitung in einem Schritt, nur mit Bilinearität des Skalarprodukts:
| primal | dual | |
|---|---|---|
| Parameter | (Dimension des Merkmalsraums) | (Anzahl Trainingspunkte) |
| Daten kommen vor als | explizit | nur in Skalarprodukten |
| günstig, wenn | klein, groß | groß oder unendlich, moderat |
Ergänzung: Dieselbe Idee kam schon bei der kernalisierten linearen Regression in Kapitel 4 vor. Auch dort lässt sich die Lösung als schreiben, und die Vorhersage braucht nur Skalarprodukte zwischen Datenpunkten.
Skalarprodukt als Ähnlichkeitsmaß
📄 10_kern.pdf, Folie 11Warum ist das Skalarprodukt eine natürliche Größe? Beispiel Gesichtserkennung: Man sucht ein Gesicht, indem man eine Schablone (template) über das Bild schiebt und für jedes Suchfenster mit Pixeln die Korrelation
berechnet. Das kanonische Skalarprodukt zweier Muster ist also ihre Korrelation: Es ist groß, wenn die Muster ähnlich aussehen.
Damit bekommt die duale Form eine anschauliche Interpretation:
Die Maschine vergleicht den Input mit allen Trainingsbeispielen. Jedes Trainingsbeispiel „stimmt ab“ für seine Klasse , gewichtet mit seiner Wichtigkeit und seiner Ähnlichkeit zum Input. (Ergänzung: Das erinnert an einen gewichteten Nächste-Nachbarn-Klassifikator, nur dass die Gewichte gelernt werden und meist nur wenige ungleich null sind.)
Anwendung auf die SVM
📄 10_kern.pdf, Folie 12Das Repräsentertheorem gilt auch für die SVM: Der Gewichtsvektor einer trainierten SVM hat die Form . Setzt man das in die Soft-Margin-Zielfunktion ein (siehe Kapitel 6), so wird
Zusammen mit der dualen Entscheidungsfunktion erhält man ein Problem, das nur von Skalarprodukten abhängt:
Minimiere
unter den Nebenbedingungen ()
Die Nebenbedingung ist die bekannte Soft-Margin-Bedingung , nur mit eingesetztem . (Auf der Folie fehlt der Faktor vor der linken Seite; gemeint ist , sowie .)
Ergänzung, nicht auf den Folien – Bezug zum Lagrange-Dual aus Kapitel 6: Die Folie setzt die Darstellung direkt ins primale Problem ein. Das in Kapitel 6 hergeleitete Lagrange-duale Problem der Soft-Margin-SVM hat dieselbe entscheidende Eigenschaft und wird in der Praxis (z. B. von libsvm/scikit-learn) gelöst:
Auch hier kommen die Daten nur über Skalarprodukte vor. Nur darauf kommt es für den Kernel-Trick an.
Pegasos für die duale Repräsentation
📄 10_kern.pdf, Folie 13Pegasos (der stochastische Subgradienten-Löser für die SVM aus Kapitel 6) lässt sich ebenfalls dual formulieren.
- Ähnlich wie das Perzeptron ist Pegasos ein Fehlerkorrekturverfahren: Ein Beispiel wird nur dann auf den Gewichtsvektor addiert, wenn es die Fehlerbedingung verletzt, also innerhalb des Margins liegt oder falsch klassifiziert ist. In dualen Variablen: .
- Daraus ergibt sich eine einfache Updateregel: Bei jedem Beispiel, das die Bedingung verletzt, wird die duale Variable um 1 hochgezählt. Die Schrumpfung durch die Regularisierung und die Lernrate stecken nicht in den , sondern werden am Ende pauschal durch den Faktor berücksichtigt.
Ergänzung – warum genügt ein Zähler? Im primalen Pegasos wird in jedem Schritt mit einem Faktor geschrumpft und bei Verletzung um ein Vielfaches von erhöht. Bei der Lernrate heben sich diese Faktoren so auf, dass jeder Verletzungs-Schritt am Ende gleich stark in eingeht und nur ein gemeinsamer, von abhängiger Vorfaktor übrig bleibt. Darum reicht es, pro Beispiel mitzuzählen, wie oft es die Bedingung verletzt hat, genau wie beim Perzeptron. Die genaue Konstante hängt von der Parametrisierung (mit oder ) aus Kapitel 6 ab.
Perzeptron, SVM und Pegasos lassen sich alle so umschreiben, dass die Daten ausschließlich in Skalarprodukten auftauchen, beim Training und bei der Vorhersage . Das ist die Eintrittskarte für den Kernel-Trick.