Backpropagation

Prinzip

Wie bei jedem überwachten Lernverfahren werden dem Netzwerk auch bei Backpropagation der Reihe nach Eingabemuster und ihre entsprechenden Ausgabemuster präsentiert. Da die Gewichte der Verbindungen zu Beginn des Trainings auf kleine, zufällige Werte festgelegt werden, ist es „unwahrscheinlich (…), dass das Netz die korrekte Ausgabe erzeugt“ ([3], S. 26). Durch den Vergleich der berechneten Ausgabe mit der gewünschten kann ein Fehlerwert festgestellt werden (vgl. [5], S. 162).

Dieser Fehlerwert „kann dazu verwendet werden, die Gewichte anzupassen“ ([3], S. 26): Je größer der Fehler, d.h. die Differenz zwischen Zielausgabe und tatsächlicher Ausgabe, desto stärker müssen die Gewichte verändert werden. Für die Ausgabeschicht kann dieser Fehler direkt berechnet werden, zur Anpassung der Gewichte früherer Schichten muss er dagegen zurückpropagiert werden. Dazu wird eine gewichtete Summe der Fehlerterme der Einheiten genommen, mit denen eine Einheit verbunden ist (vgl. [4], S. 197). So wird der Fehler Schicht für Schicht in Richtung Eingabeschicht „weitergereicht“, wobei jeweils Korrekturen an den entsprechenden Gewichten vorgenommen werden (vgl. [5], S. 162).

Der Ablauf wird für jedes zu trainierende Muster so lange wiederholt, bis „der gesamte Ausgabefehler gegen ein Minimum konvergiert oder eine bestimmte Anzahl Trainingsiterationen erreicht ist“ ([5], S. 162).

Herleitung

Sämtliche im Laufe der Herleitung verwendeten Variablen beziehen sich auf den Lernvorgang eines Elements der Trainingsmenge, d.h. auf ein Muster, auch wenn das tiefgestellte p für „pattern“ der Übersichtlichkeit halber weggelassen wurde. Die Variablen i, j, k stehen – wie in Abbildung 4 illustriert – für drei aufeinander folgende Schichten von Neuronen. Soweit nicht anders angegeben basiert die Herleitung auf Quelle [8], S.108-110.

Die Netzeingabe einer Zelle j ist durch die Propagierungsfunktion (2.1) folgendermaßen festgelegt:


(2.3)

Die Netzausgabe dieser Zelle lautet bei Verzicht auf eine spezielle Ausgabefunktion:


(2.4)

Als Fehlerfunktion dient häufig der quadratische Abstand zwischen erwarteter und realer Ausgabe (vgl. [8], S. 106). Mit tj als erwarteter Ausgabe des Neurons j, oj als tatsächlicher Ausgabe und dem Faktor ½, der später die Ableitung erleichtert, erhält man:


(2.5)

Der Fehler soll minimiert werden, indem jedes Gewicht um einen durch die Lernrate η festgelegten Bruchteil des negativen Gradienten der Fehlerfunktion geändert wird (vgl. [8], S. 106). Bei Ableitung der Fehlerfunktion nach dem zu ändernden Gewicht ergibt sich für die Gewichtsänderung:


(2.6)

Mit Hilfe der Kettenregel lässt sich das umschreiben als:


(2.7)

Der zweite Faktor wird nun – inklusive des Minuszeichens – als Fehlersignal δj definiert:


(2.8)

Mit Hilfe der Formel für die Netzeingabe (2.3) lässt sich der dritte Faktor folgendermaßen vereinfachen:


(2.9)

Setzt man nun diese beiden Faktoren, Formel (2.8) und (2.9), wieder in die Gleichung für die Gewichtsänderung (2.7) ein, so lässt sich diese umschreiben als:


(2.10)

Nach Anwendung der Kettenregel ergibt sich für das Fehlersignal δj aus Formel (2.8):


(2.11)

Der zweite Faktor dieser Gleichung entspricht nach Formel (2.4) der ersten Ableitung der Aktivierungsfunktion von Neuron j:


(2.12)

Der erste Faktor der Gleichung für δj (2.11) hängt von der Tatsache ab, ob Neuron j eine Ausgabezelle oder eine verdeckte Zelle ist. Im ersten Fall kann die Fehlerfunktion (2.5) direkt abgeleitet werden:


(2.13)

Ist das Neuron j dagegen Teil einer verdeckten Schicht, so kann die Fehlerfunktion nur indirekt mit Hilfe der Kettenregel und den Gleichungen (2.3) und (2.8) abgeleitet werden:


(2.14)

Wenn j eine Ausgabezelle ist, lässt sich das Fehlersignal also mit folgender Gleichung bestimmen:


(2.15)

Ist j eine verdeckte Zelle, so gilt:


(2.16)

Ausgehend von den Ausgabezellen lassen sich die Korrekturen sämtlicher Verbindungsgewichte eines neuronalen Netzes demnach rekursiv mit folgender Gleichung und der entsprechenden Gleichung für δj berechnen:


(2.17)

Diese Regel kann „auf alle mehrschichtigen Netzwerke angewendet werden, die differenzierbare Aktivierungsfunktionen und überwachtes Lernen einsetzen“ ([5], S. 162).

Die Ableitung der logistischen Aktivierungsfunktion (2.2) lautet (vgl. [8], S. 91):


(2.18)

Eingesetzt in die Gleichung (2.15) ergibt sich für das Fehlersignal einer Ausgabezelle:


(2.19)

Entsprechend folgt für das Fehlersignal einer verdeckten Zelle aus Gleichung (2.16):


(2.20)

 

Weiterlesen

< Lernverfahren | Inhaltsverzeichnis | Praxisbeispiel >

Antwort schreiben