Kapitel 4: Lernen als Optimierung SS 2009 Maschinelles Lernen und Neural Computation 71 Lernen als Funktionsoptimierung • Gegeben: Fehlerfunktion (i.a. neg. log Likelihood) n z.B.: i i 2 E W f x ; W t i 1 i xout E W t i log f xini ; W 1 t i log 1 f xini ; W n i 1 • Gesucht: Gewichte (Parameter), die Funktion minimieren • Klassischer Fall von Funktionsoptimierung Optimierungstheorie SS 2009 Maschinelles Lernen und Neural Computation 72 Fehlerflächen • Für Minimum gilt: E E E 0 E , , , Gradient w w wl 2 1 • 2-dim- Bsp.: Rosenbrock-Funktion, Minimum bei [1 1] • Flache Täler möglich, aber auch Sattelpunkte, steile Minima, etc. SS 2009 Maschinelles Lernen und Neural Computation 73 Gradient der Fehlerfunktion • Optimierung basiert auf Gradienteninformation: E E xout wi xout wi Beitrag der Fehlerfunktion Beitrag des Netzes • Backpropagation (nach Bishop 1995): effiziente Berechnung des Gradienten (Beitrag des Netzes): O(W) statt O(W2), siehe p.146f • ist unabhängig von der gewählten Fehlerfunktion SS 2009 Maschinelles Lernen und Neural Computation 74 Gradientenabstiegsverfahren • Einfachstes Verfahren: Ändere Gewichte direkt proportional zum Gradienten klassische „Backpropagation“ (lt. NN-Literatur) Endpunkt nach 100 Schritten: [-1.11, 1.25], ca. 2900 flops • Langsam, Oszillationen und sogar Divergenz möglich SS 2009 Maschinelles Lernen und Neural Computation 75 Gradientenabstieg mit Momentum • Momentum=„Trägheit“ Wn1 E Wn Endpunkt nach 100 Schritten: [0.52, 0.26]; ca. 3100 flops • Dämpft manche Oszillationen, erzeugt aber neue, • beschleunigt (vergleichbar mit rollender Kugel), • immer noch Divergenz möglich SS 2009 Maschinelles Lernen und Neural Computation 76 • Ziel: Schritt bis ins Minimum in der gewählten Richtung • Approximation durch Parabel (3 Punkte) • Ev. 2-3 mal wiederholen Line Search Endpunkt nach 100 Schritten: [0.78, 0.61], ca. 47000 flops SS 2009 Maschinelles Lernen und Neural Computation 77 Konjugierte Gradienten • Problem des Line Search: neuer Gradient ist normal zum alten • Nimm Suchrichtung, die Minimierung in vorheriger Richtung beibehält dt+1 dt wt+1 wt Endpunkt nach 18 Schritten: • Wesentlich gezielteres Vorgehen [0.99, 0.99], ca. 11200 flops • Variante: skalierter konjugierter Gradient SS 2009 Maschinelles Lernen und Neural Computation 78 Quadratische Approximation • Annäherung der Fläche um einen beliebigen Punkt: 1 T E w E w * w w *E w * w w * Hw w * 2 E H : H ij wi w j Entspricht Paraboloid Hesse‘sche Matrix (alle 2. Ableitungen) • Annäherungsweise: w* w H 1E E SS 2009 H 1E • „Newton Richtung“, zeigt direkt Richtung Minimum (wenn Fläche quadratisch) • Newton Methode Maschinelles Lernen und Neural Computation 79 Quasi-Newton • Rechenaufwand für Hesse Matrix enorm • Quasi-Newton: approximiert die Inverse der Hesse Matrix • In Umgebung des Minimums sehr zielführend • In anderen Gegenden kann es auch schlechter sein • Erreicht hier (!) als einzige Methode wirklich das Minumum SS 2009 Endpunkt nach 34 Schritten: [1 1], ca. 9500 flops Maschinelles Lernen und Neural Computation 80 Mehrere Minima • Alle vorgestellten Verfahren sind lokale Optimierer • Globale Optimierer: Genetische Algorithmen, Stochastic Annealing • Es kann mehrere (lokale) Minima geben! • Verschiedene Minima können verschiedenen Teillösungen entsprechen • mehrere Durchläufe mit verschiedenen Initialisierungen • Aber: es gibt auch äquivalente Minima (durch Permutation der Hidden Units und Vertauschen der Vorzeichen): M!2M äquivalente Minima (bei M H.U.) SS 2009 Maschinelles Lernen und Neural Computation 81 Zusammenfassung • Gradientenbasierte Verfahren sind mächtige lokale Optimierer • Klassisches „Backpropagation“ (Gradientenabstieg) ist das schwächste davon • Aber: Backprop heißt effiziente Berechnung des Gradienten für neuronale Netze • Auch 2. Ableitung (Krümmung) nutzbar • Dringende Empfehlung: (skaliertes) konjugiertes Gradienten- oder Quasi-Newton-Verfahren verwenden! SS 2009 Maschinelles Lernen und Neural Computation 82