Kapitel 4: Lernen als Optimierung SS 2009 Maschinelles Lernen und Neural Computation
Lernen als Funktionsoptimierung Gegeben: Fehlerfunktion (i.a. neg. log Likelihood) z.B.: Gesucht: Gewichte (Parameter), die Funktion minimieren Klassischer Fall von Funktionsoptimierung Optimierungstheorie SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Fehlerflächen Für Minimum gilt: Gradient 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
Gradient der Fehlerfunktion Optimierung basiert auf Gradienteninformation: 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
Gradientenabstiegsverfahren Einfachstes Verfahren: Ändere Gewichte direkt proportional zum Gradienten klassische „Backpropagation“ (lt. NN-Literatur) Langsam, Oszillationen und sogar Divergenz möglich Endpunkt nach 100 Schritten: [-1.11, 1.25], ca. 2900 flops SS 2009 Maschinelles Lernen und Neural Computation
Gradientenabstieg mit Momentum Momentum=„Trägheit“ Dämpft manche Oszillationen, erzeugt aber neue, beschleunigt (vergleichbar mit rollender Kugel), immer noch Divergenz möglich Endpunkt nach 100 Schritten: [0.52, 0.26]; ca. 3100 flops SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation Line Search Ziel: Schritt bis ins Minimum in der gewählten Richtung Approximation durch Parabel (3 Punkte) Ev. 2-3 mal wiederholen Endpunkt nach 100 Schritten: [0.78, 0.61], ca. 47000 flops SS 2009 Maschinelles Lernen und Neural Computation
Konjugierte Gradienten Problem des Line Search: neuer Gradient ist normal zum alten Nimm Suchrichtung, die Minimierung in vorheriger Richtung beibehält Wesentlich gezielteres Vorgehen Variante: skalierter konjugierter Gradient dt dt+1 wt+1 wt Endpunkt nach 18 Schritten: [0.99, 0.99], ca. 11200 flops SS 2009 Maschinelles Lernen und Neural Computation
Quadratische Approximation Annäherung der Fläche um einen beliebigen Punkt: Hesse‘sche Matrix (alle 2. Ableitungen) Entspricht Paraboloid Annäherungsweise: „Newton Richtung“, zeigt direkt Richtung Minimum (wenn Fläche quadratisch) Newton Methode SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation 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 Endpunkt nach 34 Schritten: [1 1], ca. 9500 flops SS 2009 Maschinelles Lernen und Neural Computation
und Neural Computation 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
und Neural Computation 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