Kapitel 8: Kernel-Methoden SS 2009 Maschinelles Lernen und Neural Computation 150 Ausgangsbasis: Perceptron Learning Rule wij xi if x j y j Target: xi if x j y j 0 sonst y j " target" • Rosenblatt (1962) • Input wird dazugezählt (abgezogen), wenn Output falsch („mismatch-based“) • Verwendung: Klassifikation SS 2009 Nach dem Lernschritt: Maschinelles Lernen und Neural Computation 151 Mathematische Formulierung • Perceptron (1 Output): • yi = +1/-1: f x wx T w0 w yi xi f x yi xi xT w0 i Inneres Produkt (dot product) • Daten kommen als inneres Produkt vor („duale Darstellung“) SS 2009 Maschinelles Lernen und Neural Computation 152 Vor- und Nachteile des Perceptrons • Vorteile: – Globale Lösung garantiert (keine lokalen Minima) – Leicht lösbar bzw. otpimierbar • Nachteil: – Auf lineare Separierbarkeit beschränkt • Idee: – Transformation der Daten auf einen Raum, in dem das Problem linear trennbar ist SS 2009 Maschinelles Lernen und Neural Computation 153 Vergleiche Diskriminanzanalyse • Allgemein linear: p gi x wi yi x w0 i 1 beliebige Vorverarbeitungsfunktionen, lineare Verknüpfung • Neuronales Netz: yi x f w i x T f ... Sigmoide yi x f w i x f ... Gauss MLP RBFN NN implementiert adaptive Vorverarbeitung nichtlinear in Parametern (w) durch Approximationstheorem: beliebig nichtlineare Diskriminanzfunktion SS 2009 Maschinelles Lernen und Neural Computation 154 Kernels • Ziel ist eine fix bestimmte Transformation xi→Φ(xi), sodass das Problem linear trennbar ist (ev. hochdimensional) • Kernel: Funktion, die als inneres Produkt von Φs darstellbar ist: T K x1 , x 2 Φx1 Φx 2 • Φ muss nicht einmal bekannt sein f x yi K xi , x w0 i SS 2009 Maschinelles Lernen und Neural Computation 155 Beispiel: Polynomischer Kernel K x, z xz • 2 Dimensionen: T 2 xz x z T 2 1 1 x2 z 2 2 x12 z12 x22 z 22 2 x1 x 2 z1 z 2 x , x , 2 x1 x2 z , z , 2 z1 z 2 2 1 2 2 Φx Φz 2 1 2 2 T • Kernel entspricht tatsächlich einem inneren Produkt aus Vektoren mit „Vorverarbeitung“ SS 2009 Maschinelles Lernen und Neural Computation 156 Beispiel • Durch Transformation wird Problem linear trennbar Ф x22 x2 x1 x12 Ф-1 SS 2009 Maschinelles Lernen und Neural Computation 157 Die Wirkung des Kernel-Tricks • Einsatz des Kernels, z.B: f x yi K xi , x w0 yi xi xT i w 5 0 i • 16x16-dimensionale Vektoren (z.B. Pixel-Bilder), Polynom 5. Grades: Dimension = 1010 – Inneres Produkt zweier 10000000000-dim. Vektoren • Berechnung erfolgt im niedrigdimensionalen Raum: – Inneres Produkt zweier 256-dim. Vektoren – 5-te Potenz SS 2009 Maschinelles Lernen und Neural Computation 158 Gauss‘scher Kernel K x, z e x z / 2 2 • Ф nicht darstellbar, hat aber unendliche Dimension! (wenn Trainingsset unbegrenzt groß sein kann) • Folgt aus Mercer‘s Theorem: K 1,1 K 1,2 K 1, m – Betrachte die Kernel-Matrix über alle Trainingsbeispiele K 2,1 K 2,2 K 2, m K K m,1 K m,2 K m, m – Berechne Eigenwerte und -funktionen, dann gilt: K x, z i i x i z i – Für Gauss‘schen Kernel gilt: Kernel-Matrix hat vollen Rang! Dimension so groß wie das Trainingsset SS 2009 Maschinelles Lernen und Neural Computation 159 Large Margin Classifier • Hochdimensionaler Raum: Overfitting leicht möglich • Lösung: Suche Entscheidungslinie (Hyperebene) mit größtem Abstand von den Punkten wx T b 0 wx T b 1 • Optimierung: Minimiere w 2 2 (Maximiere d w Abstand maximal ) w d 2 w Randbedingung: yi wx Ti b 1 0 SS 2009 wx T b 1 Maschinelles Lernen und Neural Computation 160 Optimierung 1 • Quadratisches Optimierungsproblem • Lösungsansatz: Lagrange-Multiplikanten n 1 2 LP w i yi wx Ti b 1 min 2 i 1 • Randbedingung: i 0 • 1. Ableitung nach w und b muss 0 sein. Das ergibt: w i yi x i i y i i 0 i SS 2009 Maschinelles Lernen und Neural Computation 161 Optimierung 2 • Einsetzen der zuletzt ergebenen Terme: 1 LD i i j yi y j x i xTj min 2 i, j i • „Duale“ Formulierung • Wichtig: Daten stehen wieder als inneres Produkt (dot product) im Term! • Kernel-Trick kann wieder angewandt werden 1 LD i i j yi y j K x i , x j min 2 i, j i SS 2009 Maschinelles Lernen und Neural Computation 162 Optimierung 3 • Minimierung ist quadratisches Programmierungsproblem • Globales Minimum garantiert • Methoden – Chunking nutzt die Tatsache dass viele αi=0 – Decomposition Methods – Sequential Minimal Optimization (SMO) löst eine Sequenz von Problemen der Größe 2 (Paare von Variablen) SS 2009 Maschinelles Lernen und Neural Computation 163 Support Vectors • Support-Vectors: Punkte am Rand des Margins • Bestimmen alleine die Lösung, für alle anderen Punkte gilt: αi=0, können weggelassen werden Kernelfunktion Rückprojektion SS 2009 Support Vectors Maschinelles Lernen und Neural Computation 164 Daten mit Rauschen • Bisherige Annahme: Problem ist exakt trennbar • Bei Rauschen: Einführung von „Slack variables“: weicht den strengen Margin etwas auf yi wx Ti b 1 i i 0 Lernparameter 1 2 w C i min 2 i i w • Duales Problem (Lagrange) bleibt gleich (bis auf Randbedingung) LD i i 1 i j yi y j x i xTj min 2 i, j w 0 i C SS 2009 Maschinelles Lernen und Neural Computation 165 Beispiel Kernel: Polynom 3. Ordnung SS 2009 Schätzung nur mit SupportVectors ergibt die selbe Lösung: Maschinelles Lernen und Neural Computation 166 Bedingungen für Kernels • Jede Funktion K(x,z), für die gilt K x, z f x f z dxdz 0 • bzw. a a K x , x i j i j ai f für beliebige Trainingspunkte xi i, j ist eine Kernelfunktion („positive definite“ Kernels) • Ist K1 und K2 ein Kernel, so sind auch aK1 (für a>0) K1+K2 K1*K2 Kernel • Wahl des richtigen Kernels (Vorverarbeitung) ist entscheidend! Modellselektion notwendig SS 2009 Maschinelles Lernen und Neural Computation 167 SVM-Theorie: VC-Dimension • „Shatter“: Wenn unter n Punkten alle 2n Klassifikationen möglich sind • VC-Dimension h … kleinstes m von Punkten, für die der Lerner weniger als 2m Klassifikationen schafft • Z.B.: VC-Dim(Perceptron)=k+1 (k … Inputdimension) • Für komplexe Lerner kann oft nur Schranke angegeben werden SS 2009 Maschinelles Lernen und Neural Computation 168 SVM-Theorie: Structural risk minimization • Schranke für das „Risiko“ (Fehler) Empirischer Fehler am Trainingsset RR Mit Wahrscheinlichkeit Anzahl Trainingspunkte 1-δ emp 2n h ln 1 ln h 4 n Minimal möglicher Fehler • Maximieren des Margins beschränkt VC-Dimension • ||w|| kann als Regularisierungsterm betrachtet werden • Gauss-Kernel: VC-Dim h=∞ SS 2009 Maschinelles Lernen und Neural Computation 169 SVM und Neuronale Netze • Gauss-Kernel: RBF • Sigmoid-Kernel: MLP K x, z e x z / 2 2 K x, z tanh xzT • So viele „Hidden Units“ wie Trainingsmuster • Allerdings andere Berechnung • Raum ist ∞-dimensional • SVM und Boosting: formaler Zusammenhang vgl. Boosting: Punkte an der Entscheidungsgrenze bekommen größte Bedeutung (wie SV) SS 2009 Maschinelles Lernen und Neural Computation 170 Andere Kernelverfahren • Kernel-Trick funktioniert bei allen Methoden, in denen Daten als inneres Produkt vorkommen – Kernel-PCA – Kernel-Fisher Diksriminante – Kernel Regression • Gauss‘sche Prozesse SS 2009 Maschinelles Lernen und Neural Computation 171 Zusammenfassung • SVMs sind interessante Alternative zu klassischen neuronalen Netzen • Kernel-Trick: Inneres Produkt von hochdimensionalen „Features“ (Vorverabeitung) kann niedrigdimensional berechnet werden • Beschränken der VC-Dim. (Vermeidung von Overfitting): Large Margin Classifier • Lineares Modell, Quadratische Programmierung, Minimum garantiert • Support Vectors: Punkte am Margin, sind alleine für Lösung verantwortlich • Aber: Overfitting dennoch möglich • Modellselektion notwendig • Wahl des geeigneten Kernels ist sehr wichtig! SS 2009 Maschinelles Lernen und Neural Computation 172