next up previous contents
Next: Identifikation des Pendelsystems durch Up: Neuronale Netze zur Identifikation Previous: Elman Netz

Der Backpropagation Algorithmus

Das Lernproblem des neuronalen Netzes besteht darin, die Gewichte unter den Neuronen so anzupassen, so daß ein definiertes Fehlermaß minimiert wird. Backpropagation, oder Fehlerrückführung, ist eine der am meisten verwendeten Lernmethoden zum Trainieren Neuronaler Netze. Die Backpropagation-Methode ist ein Gradientenabstiegsverfahren und wurde von Hint86 ausführlich beschrieben.

Der Algorithmus findet ein lokales Minimum der Fehlerfunktion, indem die anfangs zufällig initialisierten Gewichte nach jedem Schritt durch Berechnung des Gradienten der Fehlerfunktion korrigiert werden.

Der Algorithmus sieht folgendermaßen aus:
Sei tex2html_wrap_inline638 der Eingang des Netzes an Knoten j in Schicht i. Berechnet wird tex2html_wrap_inline638 nach folgender Formel:

eqnarray251

wobei tex2html_wrap_inline646 die Aktivierung des Knotens j in Schicht i, tex2html_wrap_inline652 ein vorwärtsgerichtetes Gewicht von Knoten k in Schicht (i-1) zu Knoten j in Schicht i, tex2html_wrap_inline662 ein rekurrentes Gewicht von Knoten k in Schicht i zu Knoten j in Schicht i und tex2html_wrap_inline672 die Anzahl der Knoten im Unternetz i ist. Der Zeitindex (n-1) zeigt an, daß die Rückkopplung um einen Zeitschritt verzögert ist. Die Aktivierung tex2html_wrap_inline678 des Knotens j in Schicht i ist:

eqnarray270

wobei der Operator tex2html_wrap_inline684 die Aktivierungsfunktion des Knotens beschreibt. Hier wurde die logistische Aktivierungsfunktion, auch Sigmoidfunktion, verwendet:

subequations274

Um den Lernprozeß durchführen zu können, benötigt man ein Qualitätsmaß für das Verhalten des Netzes. Üblicherweise wird hierfür eine Kostenfunktion basierend auf einem Fehlermaß definiert. Der quadratische Fehler für ein Element der Testmenge zum Zeitschritt n lautet:

equation280

mit

  equation284

wobei k ein Element der Indexmenge aller Ausgabeneuronen ist, tex2html_wrap_inline692 die aktuelle Ausgabe des Neurons k zum Zeitschritt n und tex2html_wrap_inline698 die erwünschte Ausgabe von k. Der Netzfehler für eine Testmenge der Länge N ist:

  equation294

Die Fehlermaße der Gleichungen gif und gif nähern sich 0, wenn die Lernmethode eine Lösung findet. Die Gewichtsanpassungsfunktion lautet:

  equation301

Mit Hilfe dieser Formeln läßt sich nun der Backpropagation-Algorithmus formulieren:

  1. Initialisiere alle Gewichte mit zufälligen Werten.
  2.  Gebe zufällig ein Ein-Ausgabemuster der zu lernenden Funktion vor und berechne die Belegungen der verdeckten Schicht und Ausgabeschicht.
  3. Für die so vorgegebenen Eingabewerte und Zielwerte korrigiere die Gewichte entsprechend der Formel (gif).
  4. Fahre fort bei gif, bis ein Abbruchkriterium erfüllt ist.

Mögliche Abbruchkriterien sind eine untere Grenze für den Fehler, eine feste Anzahl von Iterationsschritten oder eine untere Grenze für die Änderung der Netzausgabe.

%


next up previous contents
Next: Identifikation des Pendelsystems durch Up: Neuronale Netze zur Identifikation Previous: Elman Netz

Marius Heuler
Tue Jan 7 12:05:27 MET 1997