Der Backpropagation-Lernalgorithmus



next up previous contents
Next: Was macht die Up: Neuronale Netze Previous: Wie wird ein

Der Backpropagation-Lernalgorithmus

Obwohl dieser Algorithmus bereits 1974 von P.Werbos [38] vorgestellt wurde, verhalf ihm erst 1986 die Wiederentdeckung von McClelland und Rumelhart [39] zum Durchbruch. Erst die erheblich gestiegene und preisgünstigere Rechenkapazität gegenüber den 70er Jahren ermöglichte es, diesen Algorithmus erfolgreich auf eine Vielzahl sehr unterschiedlicher Probleme anzuwenden. Seine Überlegenheit gegenüber früheren Konzepten beruht auf der Möglichkeit, Gewichte in verborgenen Schichten mehrlagiger Netze zu adjustieren. Im folgenden sei der Algorithmus für ein dreilagiges Netz mit den Bezeichnungen aus Abb gif beschrieben; eine Erweiterung auf mehrere Schichten ist leicht zu realisieren.

 
Figure:   Ein dreilagiges Feedforward-Netzwerk. ist der Eingabevektor, der Ausgabevektor und der Ausgabevektor der Hidden-Layer. Die Gewichte zwischen den einzelnen Schichten können durch Matrizen bzw. beschrieben werden.

Gehen wir von Gleichung (gif) aus. Der Schwellwert läßt sich in den Gewichtsvektor integrieren, indem wir einen zusätzlichen Eingabeknoten mit konstantem Wert hinzufügen. Damit berechnet sich die Aktivität eines Neurons aus der Hidden-Layer und aus der Output-Layer zu

wobei der Anzahl der versteckten Knoten und n der Dimension des Eingaberaums entspricht. ist eine sigmoidale Aktivierungsfunktion, häufig wird die Fermifunktion benutzt wegen ihres einfachen Zusammenhangs mit ihrer Ableitung.
Ziel des Backpropagation-Lernalgorithmus(BPG) ist es, das globale Minimum der in (gif) definierten Funktion mittels eines Gradientenabstiegsverfahrens zu finden. Wie bei jeder Gradientenmethode steht die Wahl des Startpunkts zur Diskussion. Es genügt meistens, die Gewichte mit zufälligen Werten aus einem Intervall zu initialisieren, um Symmetrien zwischen verschiedenen Gewichtsvektoren aufzuheben.
In einer Abänderung des Algorithmus (Online-Updating) kann die Veränderung der Gewichte auch Muster für Muster vorgenommen werden. Dann entfällt in (gif) der Index . Für die ursprüngliche Form des Algorithmus (Offline-Updating) ist im folgenden der Term um die Summation über alle Muster zu ergänzen. Beim Online-Updating wird in jedem Lernschritt ein Muster zufällig aus der Trainingsmenge herausgegriffen und berechnet. Daraus ergibt sich ein Fehler von . Jetzt wird der Fehlergradient Schicht für Schicht zurückverfolgt (daher der Name des Algorithmus). Zuerst werden die Gewichte zwischen Ausgabe- und versteckter Schicht in Richtung des stärksten Abstiegs auf der Oberfläche der Fehlerfunktion abgeändert:

 

Damit ist auch klar, warum eine sigmoidale Aktivierungsfunktion gebraucht wird; ist für solche Funktionen positiv und nur in einem bestimmten dynamischen Intervall wesentlich von verschieden. Mit Hilfe der Kettenregel ergeben sich die nachfolgenden Gewichtsänderungen zwischen Eingabe- und versteckter Schicht

 

Eine Wiederholung der Prozedur für etwaige nachfolgende versteckte Schichten läuft nach demselben Schema ab. Die Schrittweite wird als Lernparameter bezeichnet. Seine Größe ist nicht aus dem Algorithmus ableitbar und muß für jedes Problem neu ermittelt werden. Erfahrungsgemäß ist sein Einfluß zwar groß auf die Lerngeschwindigkeit, günstigerweise aber weniger auf die erreichbare Leistungsfähigkeit. Das Hinzuaddieren der Gewichtsänderungen und aus dem vorangegangenen Lernschritt versehen mit einem Dämpfungsterm , auch Momentumparameter genannt, stellt eine Verbesserung des ursprünglichen Algorithmus dar. Regionen mit flachem Gradientenabfall werden schneller überwunden und Oszillationen vermieden. Wie für jedes Gradientenverfahren besteht das Risiko, in einem lokalen Minimum zu landen. Aufgrund der großen Anzahl von Gewichtsparametern ist dies in der Praxis selten der Fall. Dennoch ist es ratsam, das gleiche Netz mehrmals mit verschiedenen Startparametern zu trainieren.



next up previous contents
Next: Was macht die Up: Neuronale Netze Previous: Wie wird ein



Juergen Moeck
Wed Nov 9 01:21:56 MET 1994