next up previous contents
Nächste Seite: ZWEI PROBLEME DER OBIGEN Aufwärts: EXPERIMENTE Vorherige Seite: SCHWACHSTELLEN REKURRENTER NETZE   Inhalt

EXPERIMENTE: PRAKTISCHE GRENZEN REKURRENTER NETZE

Wir konstruieren eine mit dem soeben erwähnten Problem verwandte Lernaufgabe, die auf den ersten Blick wieder wesentlich einfacher aussieht als das Problem des Lernens der Reber-Grammatik (siehe Kapitel 2). Es geht erneut um Sequenzklassifikation, allerdings weisen alle Trainingssequenzen relativ lange zeitliche Verzögerungen zwischen korrelierten Ereignissen auf.

Da das Problem repräsentativ für die bei langen Trainingssequenzen auftretenden Schwierigkeiten ist, nennen wir es die Standardaufgabe. Im folgenden werden wir verschiedene Architekturen immer wieder an dieser Aufgabe testen.

Standardaufgabe: Die Schwierigkeit der Standardaufgabe liegt in der Überbrückung einer $m$ Zeitschritte umfassenden zeitlichen Verzögerung zwischen relevanten Ereignissen. Es gibt $m+2$ mögliche Eingabesymbole $a, x, b_1, b_2, \ldots, b_{m}$. Jedes Eingabesymbol wird lokal durch einen $(m+2)$-dimensionalen Bitvektor der Länge 1 eindeutig repräsentiert. Dem lernenden System wird zu jedem Zeitschritt ein Eingabesymbol präsentiert. Alle Nichteingabeknoten verwenden die logistische Aktivierungsfunktion $f(x)=\frac{1}{1+e^{-x}}$. Jeder Nichteingabeknoten erhält (als modifizierbaren `Schwellwert') eine zusätzliche Verbindung von einem Knoten, dessen Aktivation zu jedem Zeitpunkt gleich 1 ist. Alle Gewichte werden zwischen -0.2 und 0.2 initialisiert. Es gibt lediglich 2 mögliche Eingabesequenzen: $a b_1 \ldots b_{m}$ und $x b_1 \ldots b_{m}$. Diese werden während der Trainingsphase in zufälliger Ordnung angeboten. Zu jedem Zeitpunkt besteht ein Ziel darin, die nächste Eingabe vorherzusagen (man beachte, daß das erste Symbol jeder Sequenz aufgrund des zufälligen Auftretens von $x$ und $a$ i.a. nicht vorhersagbar ist). Das zweite (und bedeutend schwierigere) Ziel besteht in der Aktivierung eines speziellen Ausgabeknotens (des Zielknotens), wann immer die letzten $m+1$ verarbeiteten Eingabesymbole $a, b_1, \ldots, b_{m}$ waren. Der Zielknoten soll deaktiviert werden, wann immer der letzte sich über (m+1) Zeitschritte erstreckende Eingabesequenzprefix $x b_1 \ldots b_{m}$ war. Es sind also $m+2+1$ Ausgabeknoten vonnöten. Episodengrenzen werden nicht angezeigt: Die Trainingssequenzen werden sukzessive präsentiert, ohne daß Information über ihre Anfänge und Enden beigesteuert wird. So entsteht ein ununterbrochener kontinuierlicher Eingabestrom. Die Aufgabe gilt als gelöst, wenn die lokalen Fehler aller Ausgabeknoten (einschließlich des Zielknotens) stets unterhalb von 0.3 liegen (mit Ausnahme von Fehlern, die durch das prinzipiell unvorhersagbare Auftreten von $a$ und $x$ provoziert werden).

Konventionelle rekurrente Netze wurden an der Standardaufgabe bei verschiedenen Anzahlen versteckter Knoten, verschiedenen Lernraten, und verschiedenen $m$ getestet. Die Experimente wurden von Josef Hochreiter (Diplomand an der TUM) durchgeführt. Fehlersignale wurden u. a. durch `abgeschnittenes BPTT' (siehe Abschnitt 2.3) zu jedem Zeitpunkt $(m+1)$ Schritte zurückpropagiert (das ist die minimale Anzahl von Zeitschritten, die theoretisch für Verzögerungen der Länge $m$ erforderlich ist). Man beachte, daß zusätzliche Rückpropagierungsschritte nur Verwirrung stiften würden, statt wohltätige Effekte zu zeitigen. Insofern darf man sagen, daß hier externes Wissen über die Natur der Standardaufgabe einfloß.

Es stellte sich heraus, daß es rekurrenten Netzen unter obigen Bedingungen schon bei $m = 20$ schlechterdings unmöglich ist, die Standardaufgabe bei vertretbarem Zeitaufwand zu lösen. Natürlich lernten die Netzwerke sehr schnell, die Symbole $b_1, \ldots, b_{m}$ vorherzusagen, doch die 21 Zeitschritte umfassende Verzögerung stellte ein praktisch unüberwindliches Hindernis dar (die Testläufe wurden nach $10^6$ Trainingssequenzen unterbrochen). (Es sollte jedoch erwähnt werden, daß beschränkte Rechnerzeit keine systematischen Tests aller möglichen Parameterkombinationen erlaubte.) Man beachte, daß 20 Zeitschritte im Kontext der Sprachverarbeitung einem alles andere als langen Zeitraum entsprechen.

Bei $m=4$ (dies enspricht einer 5 Zeitschritte umfassenden Verzögerung) erwiesen sich bei 4 Testläufen mit einer Lernrate von 1.0 die folgenden Zahlen von Trainingssequenzen als erforderlich, um eine befriedigende Lösung zu erzielen:

$1,9 \times 10^6$; $0,9 \times 10^6$; $3,5 \times 10^6$; $0,25 \times 10^6$.


next up previous contents
Nächste Seite: ZWEI PROBLEME DER OBIGEN Aufwärts: EXPERIMENTE Vorherige Seite: SCHWACHSTELLEN REKURRENTER NETZE   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