next up previous contents
Nächste Seite: Das notwendigerweise nicht perfekte Aufwärts: Ein System für das Vorherige Seite: Ein System für das   Inhalt

Detaillierte Beschreibung des Verfahrens

Jede Fokustrajektorie schließt $k$ diskrete Zeitschritte 1 ... $k$ ein. Zum Zeitpunkt $t$ der Trajektorie $ p $ heißt $C$'s Eingabevektor $x_p(t)$. $x_p(t)$ ergibt sich aus den sensorischen Eingaben des Fokus zur Zeit $t$. $C$'s Ausgabevektor zur Zeit $t$ heißt $c_p(t)$. $c_p(t)$ wird als Steuersignal für den Fokus interpretiert und verursacht eine Fokusbewegung und damit eine neue Eingabe $x_p(t+1)$. Die finale gewünschte Eingabe $d_{pfin}$ der Trajektorie $ p $ ist ein extern vorgegebenes Aktivationsmuster und korrespondiert zu dem in der visuellen Szene zu findenden Objekt. Für alle $t$ ist $dim(d_{pfin})= dim(x_p(t))$. Zunächst nehmen wir an, daß $d_{pfin}$ für alle Trajektorien $ p $ konstant ist (es soll also immer dasselbe Detail der Szene gefunden werden). $C$'s Aufgabe besteht darin, startend von beliebig vorgegebenen Anfangspositionen Sequenzen von Fokusbewegungen zu produzieren, so daß für alle Trajektorien $ p $ gilt: $d_{pfin}=x_p(k)$. Der finale Eingabefehler $e_{pfin}$ der zum Zeitschritt $k$ unterbrochenen Trajektorie $ p $ ist

\begin{displaymath}e_{pfin} = (d_{pfin}-x_p(k))^T (d_{pfin}-x_p(k)). \end{displaymath}

Die $e_{pfin}$ ergeben sich also aus den Differenzen zwischen den gewünschten und den tatsächlichen finalen Eingaben.

Das Modellnetzwerk $M$ sieht zu einem gegebenen Zeitpunkt $t$ $C$'s Ein- und Ausgabe und wird darauf trainiert, $C$'s nächste Eingabe zu prophezeien. Die folgende Diskussion bezieht sich auf den Fall, daß $M$ und $C$ parallel lernen. In einigen Experimenten werden wir separate Trainingsphasen für $M$ und $C$ verwenden, die Änderungen für diesen Fall sind aber trivial und hauptsächlich notationeller Art.

$M$'s Eingabevektor zur Zeit $t$ der Trajektorie $ p $ ist die Konkatenation von $c_p(t)$ und $x_p(t)$. $M$'s Ausgabevektor zur Zeit $t$ der Trajektorie $ p $ ist $m_p(t)$, wobei $ \mid m_p(t) \mid = \mid x_p(t) \mid$. $M$'s Fehler zur Zeit $0 < t < k$ der Trajektorie $ p $ ist

\begin{displaymath}E_p(t) = (x_p(t+1) - m_p(t))^T (x_p(t+1) - m_p(t)). \end{displaymath}

$M$'s Ziel ist die Minimierung von $\sum_{p,t} E_p(t)$, wozu BP verwendet wird:

\begin{displaymath}\triangle W_M^T = -\alpha_M
\frac{\partial \sum_{p,t} E_p(t)}{\partial W_M} . \end{displaymath}

Hierbei ist $W_M$ $M$'s Gewichtsvektor, $\triangle W_M$ dessen Inkrement, und $\alpha_M$ $M$'s konstante Lernrate. (In den unten beschriebenen Experimenten weichen wir allerdings wieder vom reinen Gradientenabstieg ab und ändern $M$'s Gewichte nach jedem Zeitschritt einer Trajektorie.)

Dem Systemidentifikationsansatz folgend nehmen wir nun an, daß $ \sum_p e_{pfin}$ durch eine differenzierbare Funktion von $C$'s Gewichtsvektor $W_C$ angenähert werden kann. Um

\begin{displaymath}\frac{\partial \sum_p e_{pfin}}{\partial W_C}, \end{displaymath}

zu approximieren, wird vorausgesetzt, daß $M$ mit fixem $W_M$ die Umgebung simulieren kann. Die Approximation wird durch Anwendung des unfolding in time-Algorithmus (siehe Kapitel 2) auf das rekurrente Netzwerk berechnet, welches man dadurch erhält, daß man $C$'s Eingabeknoten mit $M$'s Ausgabeknoten und $M$'s Eingabeknoten mit $C$'s Ein- und Ausgabeknoten identifiziert:


\begin{displaymath}\triangle W_C = -\alpha_C \sum_p
\left( \frac{\partial m_p(k)}{\partial W_C} \right)^T
(d_{pfin} - x_p(k))
. \end{displaymath}

Dabei ist $\triangle W_C$ das Inkrement von $W_C$ und $\alpha_C$ $C$'s Lernrate. Man beachte, daß die Differenz zwischen der gewünschten finalen Eingabe und der tatsächlichen finalen Eingabe zur Berechnung eines Gradienten für $C$ unter Zuhilfenahme von $M$ herangezogen wird, nicht die Differenz zwischen der gewünschten finalen Eingabe und der von $M$ vorhergesagten finalen Eingabe (siehe auch Kapitel 6). (In den unten beschriebenen Experimenten weichen wir vom reinen Gradientenabstieg ab und ändern $C$'s Gewichte am Ende jeder Trajektorie.)


next up previous contents
Nächste Seite: Das notwendigerweise nicht perfekte Aufwärts: Ein System für das Vorherige Seite: Ein System für das   Inhalt
Juergen Schmidhuber 2003-02-20


Related links in English: Recurrent neural networks - Subgoal learning - Reinforcement learning and POMDPs - Reinforcement learning economies - Selective attention
Deutsche Heimseite