Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03533.jsonl.gz/134

Stellvertretend für alle Equilibriumsnetze betrachten wir in diesem Abschnitt lediglich eine relativ junge Entwicklung: den Gradientenabstiegsalgorithmus für zyklische statische Netzwerke, wie er von Almeida [1] und davon unabhängig von Pineda [38] vorgeschlagen wurde. Auch Rohwer und Forrest haben im selben Jahr ein verwandtes Verfahren beschrieben [43].
Der Algorithmus minimiert für ein einzuspeicherndes Musterpaar dieselbe Fehlerfunktion wie konventionelles Back-Propagation: , wobei tatsächlicher Ausgabevektor und gewünschter Ausgabevektor ist.
Das Netz kann vollständig rückgekoppelt sein. Natürlich gibt es in voll vernetzten Systemen keine Netzlagen im Sinne obiger Definition mehr: Zu jedem Knoten führen Kantenpfade beliebiger Länge. Dennoch läuft der Algorithmus weitgehend genauso ab wie derjenige für azyklische Netzwerke. Die Aktivationsausbreitungsphase verläuft in mehreren von einem globalen Taktgeber gesteuerten Schritten wie folgt:
Ein Eingabemuster wird an bestimmten Netzknoten angelegt, die Aktivation der Eingabeknoten ist gleich ihrer externen Eingabe und ändert sich von nun an nicht mehr. Jeder Knoten , der kein Eingabeknoten ist, berechnet synchron mit allen anderen die gewichtete Summe der Aktivationen aller Knoten, von denen eine Verbindung auf führt. Das Resultat wird der Aktivierungsfunktion übergeben, welche zur Berechnung von 's neuer Aktivation dient. Dieses Vorgehen wird iteriert, bis sich bei aufeinanderfolgenden Iterationen keine Knotenaktivation mehr signifikant ändert.
Anschließend findet die Fehlerpropagierungsphase statt:
Die Richtungen aller Verbindungen im Netz werden umgekehrt. Die Fehlerdifferenzen der Ausgabeknoten werden multipliziert mit der Ableitung der Aktivierungsfunktion an der Stelle, die durch die Aktivationsausbreitungsphase bestimmt wurde. Das Fehlersignal der Ausgabeknoten ist damit definiert. Jeder Knoten , der kein Eingabeknoten ist, berechnet nun die gewichtete Summe der Fehlersignale von allen Knoten, von denen eine Verbindung auf führt. Um sein eigenes Fehlersignal zu erhalten, multipliziert das Resultat mit der Ableitung der Aktivierungsfunktion an der Stelle, die durch die Aktivationsausbreitungsphase bestimmt wurde. Dieses Vorgehen wird iteriert, bis sich bei aufeinanderfolgenden Iterationen keine Fehlersignale mehr signifikant ändern.
Schließlich ändert sich jedes Gewicht proportional zur Aktivation seines Quellknotens und zum Fehlersignal seines Zielknotens.
Führt die Aktivationsausbreitungsphase in ein Equilibrium, so auch die Fehlerpropagierungsphase. Dies ist eine Konsequenz der Tatsache, daß die Gewichtsmatrix für die Rückwärtsphase der Transponierten der Gewichtsmatrix für die Vorwärtsphase entspricht. Da die Stabilität eines Systems nur von den Eigenwerten seiner Gewichtsmatrix abhängt und die Eigenwerte einer Matrix gleich den Eigenwerten der Transponierten sind, ergibt sich obige Aussage [1]. Man beachte erneut die fast vollständige Symmetrie zwischen Vorwärts- und Rückwärtsausbreitung.