next up previous contents
Nächste Seite: EXPERIMENTE: PRAKTISCHE GRENZEN REKURRENTER Aufwärts: EXPERIMENTE Vorherige Seite: EXPERIMENTE ZUM ERLERNEN REGULÄRER   Inhalt

SCHWACHSTELLEN REKURRENTER NETZE

Ich möchte die Aufmerksamkeit des Lesers nun zunächst auf die Tatsache lenken, daß beispielsweise die `lernbare' Reber-Grammatik unter anderem auch sehr kurze (nur 5 Zeitschritte umfassende) Trainingssequenzen erlaubt. Damit ist gemeint, daß durch die zufällige Auswahl von Trainingssequenzen immer wieder welche vorkommen, bei denen die zeitlichen Abstände zwischen korrelierten Ereignissen so kurz werden, daß das rekurrente Netz lediglich ein paar Zeitschritte `in die Vergangenheit blicken' muß, um den entsprechenden Zusammenhang zu entdecken. Bei einer solch kleinen Zahl von Zeitschritten ist es für einen gradientenbasierten Algorithmus gewöhnlich relativ einfach, die Gewichte dergestalt zu adjustieren, daß das Netz relevante Ereignisse solange abspeichern kann, bis sie etwas später für die korrekte Ausgabe zum richtigen Zeitpunkt benötigt werden. Hat das Netz einmal gelernt, sich Eingaben aus kurzen Trainingssequenzen in geeigneter Weise zu merken, fällt es ihm im allgemeinen leicht, auf lange Ereignissequenzen derselben Art (d.h. mit denselben relevanten Ereignissen, nun aber durch größere zeitliche Lücken getrennt) zu `generalisieren'. Alle mir bekannten Experimente, so beeindruckend sie auf den ersten Blick auch erscheinen mögen, profitieren solcherart von kurzen Trainingssequenzen. Dies soll im folgenden detaillierter ausgeführt werden.

Bei gegebener Grammatik $G$ mag die Aufgabe des Systems z.B. darin bestehen, einen Strom von Terminalsymbolen (ein Symbol pro Zeitschritt) zu beobachten und schließlich zu beurteilen, ob die beobachtete Zeichenreihe ein Satz von $G$ ist oder nicht. Um das System zu trainieren, definiert man zweckmäßigerweise eine zweite Grammatik $T$, die sogenannte Trainingsgrammatik. $T$ dient dazu, Beispiele und Gegenbeispiele für von $G$ produzierte Zeichenreihen zu liefern. $T$ definiert damit die Lernumgebung des lernenden Systems.

Im folgenden bezeichnen Großbuchstaben wie $S$ und $B$ Nichtterminalsymbole, während Kleinbuchstaben wie $a,x, b_1,\ldots, b_{100}$ Terminalzeichen denotieren. $S$ wird stets als Startsymbol verwendet. Die folgende sehr einfache reguläre Grammatik $G_1$ produziert nur einen einzigen Satz. Damit ist sie von der Komplexität her wesentlich einfacher als die Reber-Grammatik, dennoch reicht sie aus, um eine fundamentale Schwierigkeit zu illustrieren:

\begin{displaymath}
G_1 : ~~S \rightarrow aB,
B \rightarrow b_1b_2b_3 \ldots b_{100}.
\end{displaymath}

Definieren wir nun die Trainingsgrammatik $T_1$ als

\begin{displaymath}
T_1: ~~
S \rightarrow aB,
S \rightarrow xB,
B \rightarrow b_1b_2b_3 \ldots b_{100}.
\end{displaymath}

$T_1$ produziert nur 2 Traininssequenzen, nämlich $ab_1b_2b_3 \ldots b_{100}$ und $xb_1b_2b_3 \ldots b_{100}$. In Experimenten stellt sich nun heraus, daß es den gradientenbasierten Algorithmen für rekurrente Netze bei typischer zufälliger Gewichtsinitialisierung (im Bereich $-0.5, \ldots, 0.5$) schlechterdings unmöglich ist, innerhalb von $10^6$ Trainingssequenzen zu lernen, die erste legale Zeichenreihe zu akzeptieren und die zweite illegale Zeichenreihe abzulehnen.

Zwar könnte man nun die Aufgabe vereinfachen, indem man $G_1$ durch $G_2$ und $T_1$ durch $T_2$ ersetzt:

\begin{displaymath}
G_2:~~
S \rightarrow aB,
B \rightarrow b_1b_2b_3 \ldots b_{100},
B \rightarrow b_{100},
\end{displaymath}


\begin{displaymath}
T_2:~~
S \rightarrow aB,
S \rightarrow xB,
B \rightarrow b_1b_2b_3 \ldots b_{100},
B \rightarrow b_{100}.
\end{displaymath}

Nun könnten die konventionellen Algorithmen dank der kurzen Trainingssequenzen $ab_{100}$ und $xb_{100}$ herausfinden, daß das Auftreten von $a$ oder $x$ bedeutsam ist und mittels geeigneter Gewichte rekurrenter Verbindungen abgespeichert werden sollte. Aus den kurzen Trainingssequenzen könnten die Algorithmen auf `schwierige' Sequenzen wie $xb_1b_2 \ldots b_{100}$ generalisieren.

Im allgemeinen darf man jedoch nicht davon ausgehen, daß die Umgebung hilfreiche kurze Trainingssequenzen zur Verfügung stellt. Die folgenden Experimente erzählen uns etwas über die Grenzen der praktischen Anwendbarkeit rekurrenter Netze.


next up previous contents
Nächste Seite: EXPERIMENTE: PRAKTISCHE GRENZEN REKURRENTER Aufwärts: EXPERIMENTE Vorherige Seite: EXPERIMENTE ZUM ERLERNEN REGULÄRER   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