next up previous contents
Nächste Seite: SCHRANKEN DER KOLLAPS-ARCHITEKTUR Aufwärts: KOLLAPS DER HIERARCHIE Vorherige Seite: ARCHITEKTURDETAILS   Inhalt

EXPERIMENT MIT DER KOLLAPS-ARCHITEKTUR

Josef Hochreiter (Diplomand an der TUM) implementierte Varianten des obigen Algorithmus und testete sie an der in Abschnitt 2.6.4 beschriebenen Standardaufgabe mit zeitlichen Verzögerungen der Länge $2m$. Zwar erfordert die Kollapsoperation mehr Trainingsaufwand, als zur Adjustierung einer nicht kollabierenden Multiebenenhierarchie notwendig ist. Auch die Kollapsarchitektur kann jedoch `konventionellen' Algorithmen für rekurrente Netze in zweifacher Hinsicht überlegen sein. Bei den Experimenten stellte sich heraus: (a) Die Anzahl der erforderlichen Rückpropagierungsschritte pro Zeitschritt war bei der Kollapsarchitektur deutlich geringer. (b) Die Anzahl der erforderlichen Trainingssequenzen betrug nur einen kleinen Bruchteil der entsprechenden Anzahl für die konventionelle Architektur.

Es galt wieder $m=10$. $A$ besaß einen versteckten Knoten, einen Eingabeknoten für jedes der Eingabesymbole $a, x, b_1, \ldots, b_{20}$, einen Eingabeknoten für den letzten extern vorgegebenen Zielwert, und einen stets mit 1 aktivierten Eingabeknoten, dessen ausgehende Verbindungen modifizierbare Schwellwerte für alle Nichteingabeknoten bereitstellten. $C$ wurde aktualisiert, wann immer der an den von $A$ nicht für die Vorhersage von $C$'s Zustand verwendeten Ausgabeknoten beobachtete maximale Fehler den Wert 0.2 überstieg. $C$ besaß einen versteckten Knoten und 23 Ausgabeknoten. Es waren keine eindeutigen Zeitschrittrepräsentationen $time(t)$ notwendig. $A$ verfügte über 23 Ausgabeknoten, um die nächste Umgebungseingabe vorherzusagen, sowie 23 Ausgabeknoten, um den internen Zustand von $C$ zu rekonstruieren. Pro Netzwerkaktualisierung wurde eine Iteration ausgeführt. Beide Netzwerke wurden durch `abgeschnittenes BPTT' (Kapitel 2) trainiert. Bei der Fehlerrückpropagierung wurden lediglich 3 Iterationen pro Zeitschritt ausgeführt, obwohl es darum ging, eine Lücke von 20 Zeitschritten zu überbrücken. Die Lernraten beider Netze waren gleich 1.0.

17 Testläufe wurden durchgeführt. Bei 13 Testläufen erwiesen sich weniger als 5000 Trainingssequenzen als erforderlich, um den Fehler von $A$'s Zielknoten stets kleiner als 0.12 zu machen. Für die übrigen 4 Testläufe ergaben sich folgende Zahlen als obere Schranken für die Zahl der Trainingssequenzen, die benötigt wurden, um den Fehler des Zielknotens unter den Wert 0.06 zu drücken: 30.000, 35.000, 25.000, 15.000.

Man vergleiche dies mit den in Abschnitt 2.6.4 gewonnenen Resultaten: Innerhalb von $10^6$ Trainingsepisoden gelang es dem konventionellen Algorithmus nicht, dasselbe Problem zu lösen.

Typischerweise lernte $A$ schnell, die leicht vorhersagbaren Symbole $b_2, \ldots, b_{20}$ zu prophezeihen. Dies führte zu einer stark reduzierten Eingabe für das $C$-Netz, welches nun bei der Aufgabe, die korrekten Zielwerte am Ende der Trainingssequenzen zu lernen, auf wenig Schwierigkeiten traf. Nach geraumer Zeit sah sich $A$ imstande, $C$'s interne Repräsentationen nachzuahmen, was $A$ wiederum die Basis dafür lieferte, die korrekten Zielwerte selbst zu lernen.

Die endgültige Gewichtsmatrix von $A$ verfügte über die Eigenschaften, die man erwarten würde: Typischerweise schaltete sich ein versteckter Knoten in dem Moment ein, in dem das Terminalzeichen $a$ erschien. Eine starke rekurrente Verbindung dieses Knotens auf sich selbst hielt ihn für die folgenden 21 Zeitschritte `am Leben', danach wurde der Knoten im Falle des Auftretens eines $x$'s inhibiert. (Es traten auch ähnliche symmetrische Lösungen auf.)

Bemerkenswerterweise evolvierte diese 20 Zeitschritte überbrückende Struktur trotz der Tatsache, daß, wie erwähnt, nur 3 Fehlerrückpropagierungsiterationen pro Zeitschritt ausgeführt wurden.


next up previous contents
Nächste Seite: SCHRANKEN DER KOLLAPS-ARCHITEKTUR Aufwärts: KOLLAPS DER HIERARCHIE Vorherige Seite: ARCHITEKTURDETAILS   Inhalt
Juergen Schmidhuber 2003-02-20


Related links in English: Recurrent networks - Fast weights - Subgoal learning - Reinforcement learning and POMDPs - Unsupervised learning and ICA - Metalearning and learning to learn
Deutsche Heimseite