Neuronale Netze, Fuzzy Control und Genetische Algorithmen Neuronale Netze, Fuzzy Control, Genetische Algorithmen Prof. Jürgen Sauer 3. Test mit Lösungen 1. a) Gib die entscheidend positive Eigenschaft des Backpropagation an! Universelle Approximationseigenschaft b) Was besagt im Wesentlichen diese Eigenschaft? Eine stetige, nichtkonstante, monotone, beschränkte Funktion kann durch einen Backpropagation Algorithmus beliebig genau approximiert werden. 2. Gib die negativen Aspekte des Backpropagation.Lernens zusammen mit Lösungsvorschlägen zur Vermeidung der negativen Eigenschaften an! a) Symmetry breaking 1 Die Gewichte dürfen am Anfang nicht alle gleich groß gewählt werden Lösung: Man wähle kleine Zufallswerte mit einem Zufallsgenerator. b) Verlassen guter Minima Lösung: Die Wahl der Lernschrittweite ist entscheidend. c) Backpropagation kann konvergieren, auch wenn das globale Minimum der Fehleroberfläche nicht erreicht ist. Es bleibt in einem lokalen Minimum stecken. Lösung: Schrittweite verändern. d) Flache Plateaus 2 der Fehlerfunktion Ist der Gradient lange Zeit fast Null, so kann das Verfahren auf einem solchen flachen Plateau steckenbleiben Lösung: Einführung des sog. Momentum-Terms. Der Momentum-Term 3 bewirkt eine Erhöhung der Gewichtsänderung auf flachen Plateaus. e) Oszillation 4 In steilen Schluchten des Fehlergebirges kann es zur Oszillation der Richtung des Gradienten kommen. Lösung: Es kann auch hier ein Momentum Term verwendet werden. f) Flat spot elimination. Ist die Ableitung fast gleich Null, so lernt das NN sehr langsam. 1 Vgl. Skriptum 2.4.2.2.2 vgl. Skriptum 2.4.2.2.3 3 Vgl. Skriptum 2.4.4.1 4 vgl. Skriptum 2.4.2.2.4 2 4 Neuronale Netze, Fuzzy Control und Genetische Algorithmen Lösung: Ableitung künstlich auf 0.1 setzen. g) Weight decay 5 Viele große Gewichte zerklüften die Fehlerfläche stark, so dass gute Minima schwerer zu finden sind. Lösung: Man lässt weniger große Gewichte zu durch „Bestrafung großer Gewichte“, d.h. durch überproportionale Bewertung des Fehlers großer Gewichte. h) Modellkomplexität Backpropagation kann sehr viele Neuronen und Verbindungen besitzen Lösung: Man kann ggf. Verbindungen, die nahe bei Null liegen entfernen (engl. Prunen). Anschließend wird das Netz nachtrainiert. i) Overfitting Trainiert man das NN, so wird der Fehler auf den Trainingsdaten immer kleiner, ab einem bestimmten Zeitpunkt wird der Fehler nicht mehr kleiner sondern größer. Lösung: Ab diesem Zeitpunkt spricht man von „overfitting“, d.h. ab diesem Zeitpunkt muß das Lernen abgebrochen werden, da ansonsten eine unerwünschte Interpolation der Trainingsdaten erreicht wird. Manchmal verwendet man statt Training- und Testdaten auch Trainings-, Validierungs- und Testdaten: Trainingsdaten zum Trainieren, Validierungsdaten zur Fehlerberechnung, um das Lernen rechtzeitig abzubrechen und overfitting zu vermeiden und Testdaten, um die Leistungsfähigkeit des Netzes zu messen. j) Vorverarbeitung Man hat herausgefunden, dass eine Mittelwertzentrierung der Daten (Abziehen des Mittelwerts der Daten von den Daten je Dimension), eine Varianznormierung (dividieren durch die Varianz je Dimension) und eine Dekorrelierung (z. B. eine sog. Hauptkomponentenanalyse, Principal Component Analysis (PCA): lineare Transformation der Daten in Richtung des Eigenvektors durch eine Transformationsmatrix) die Leistungsfähigkeit des Netzes verbessert. k) Fehlerabschätzung Wie robust ist genau ein Lernresultat? Konfidenzintervalle. Lösung: Versuchswiederholungen mit anschließender Berechnung des Mittelwerts und der Standardabweichung geben Aufschluß über Abweichungen. l) Lerngeschwindigkeit Backpropagation ist ein langsames Lernverfahren 5 vgl. Skriptum 2.4.4.2 5 Neuronale Netze, Fuzzy Control und Genetische Algorithmen m) Step size problem (Wahl der richtigen Schrittweite) Bei Backprop fließt in die Berechnung der Gewichtsänderung nur der Gradient ein. Dies hat zur Folge, dass bei kleinen Gradienten nur kleine Änderungen an w vorgenommen werden, weshalb die Fehlerfunktion des Netzes oft lange auf Plateuas verharrt, anstatt sich schnell darüber hinweg zu bewegen und weiter abzusinken. Ist dagegen der Gradient sehr steil, ist auch die Änderung Δw sehr groß, weshalb gute lokale Minima in der Fehlerfunktion leicht übersprungen, also verfehlt werden können: An diesen Stellen solten Gewichtsänderungen eher klein sein. Lösung: Einführung eines Momentum Terms, RPROP Algorithmus, Quickprop von Fahlman n) moving target problem ist eine Folge der Art, in der das Update der Gewichte durchgeführt wird. Jedes Neuron versucht für sich, die Fehler der Netzausgabe zu minimieren. Dazu ändert es seine Ausgabe so, dass der Fehler bei erneuter Präsentation desselben Musters kleiner würde. Da dies aber alle versteckten Neuronen gleichzeitig und unabhängig voneinander tun, ist die Fehlerzusammensetzung zum Zeitpunkt t völlig anders als zum Zeitpunkt (t1). Das Ziel des einzelnen Neurons ändert sich also ständig, und zwar nicht so, wie vom Neuron erwartet, da die Änderung auch von anderen Neuronen abhängt und zwischen den Neuronen abgesehen von der Fehlerpropagierung kein Informationsaustausch stattfindet. Das Ziel des Neuron scheint sich zu bewegen. Dadurch kann das Neuron nicht so gezielt lernen, als wenn es allein wäre und in Extremfällen kann es sogar pasieren, dass verschiedene Neuronen gegeneinander arbeiten und ihre Effekte aufheben. 3. Gib Varianten des Backpropagation-Verfahrens an, die die Performanznachteile des Backpropagation ausgleichen - Quickprop 6 lehnt sich das Newton-Verfahren an, bei dem die Steigung sukzessiv durch Geraden angenähert wird. - Resilient Propagation (RPROP) 7 verwendet Ideen von Quickprop und benutzt eine separate Schrittweitensteuerung für jedes Neuron. Es verwendet außerdem ein Manhattan-Training, d.h. er’s spielt nur das Vorzeichen eines Fehlersignals eine Rolle, aber nicht dessen genauer Höhe. - Newton-Methode Verwendung 2ter Ableitungen, was die Berechnung aufwendiger macht. Newton-Methoden stammen aus dem Gebiet der numerischen Optimierung 6 7 Vgl. Skriptum 2.4.4.3 vgl. Skriptum 2.4.4.4 6 Neuronale Netze, Fuzzy Control und Genetische Algorithmen - Quasi-Newton-Methode, schätzt die 2. Ableitungen ab wie z.B. der Levenberg-Marquardt-Algorithmus (in der Simulationsumgebung Matlab) - konjungierte Gradienen der Gradient zeigt zwar in Richtung des steilsten Abstiegs, aber bei der Wahl der Richtung konvergiert das Natz nicht am schnellsten, durch Verwendung zweier sog. konjugierter Gradienten kann das Konvergenzverhalten r r erhöht werden. Zwei Vektoren v und w heißen konjungiert durch eine Matrix 7 r r rr A , wenn gilt: v T Aw = 0.