next up previous contents
Nächste Seite: ARCHITEKTUR 1 Aufwärts: DYNAMISCHE VERBINDUNGEN Vorherige Seite: DYNAMISCHE VERBINDUNGEN   Inhalt

ARCHITEKTUR UND NETZWERKDYNAMIK

Als Ereignissspeicher verwenden wir ein azyklisches Netzwerk $F$ mit einer Menge `schneller' Gewichtsvariablen $W_F$. Wie diese Variablen dynamisch zu setzen sind, wird weiter unten ausgeführt. $F$'s Eingabe zum Zeitpunkt $t$ ist der reelle Vektor $x(t)$, $F$'s $m$-dimensionale Ausgabe ist der reelle Vektor $y(t)$. Abhängig von $W_F$'s zeitlich veränderlichem Zustand wird $F$ ein und dieselbe Eingabe zu verschiedenen Zeitpunkten unterschiedlich verarbeiten - diese Tatsache nützen wir aus, um ein von einem zusätzlichen adaptiven Mechanismus gesteuertes Kurzzeitgedächtnis zu konstruieren.

Da wir, unserem allgemeinen Schema folgend, später mittels der Kettenregel einen Lernalgorithmus zum Setzen der dynamischen Gewichte herleiten wollen, fordern wir, daß dieser zusätzliche Mechanismus dergestalt durch eine parametrisierte Klasse von Funktionen dargestellt wird, daß die schnellen Gewichte in differenzierbarer Weise von den Parametern abhängen.

Es liegt nahe, zu diesem Zweck wiederum ein konventionelles mehrlagiges azyklisches Netzwerk $S$ mit einer Menge zufällig initialisierter Gewichtsvariablen $W_S$ zu verwenden. $S$' Eingabe zum Zeitpunkt $t$ ist ebenfalls der reelle Vektor $x(t)$. Wie im folgenden zu sehen sein wird, wird $S$' Ausgabe in sofortige Gewichtsänderungen für $W_F$ umgemünzt. $S$ dient damit als Kontrollinstanz für das `schnelle' $F$-Netzwerk - $S$' Ausgabe entscheidet darüber, welche Ereignisse in welcher Form in $F$'s schnellen Gewichten gespeichert werden.

Zur Initialisierung führen wir zu Beginn jeder Trainingssequenz einen `nullten' Zeitschritt ein. Zum Zeitpunkt $0$ wird jede Gewichtsvariable $w_{ba} \in W_F$ einer gerichteten Verbindung vom Knoten $a$ zum Knoten $b$ gleich $\Box w_{ba}(0)$ gesetzt. $\Box w_{ba}(0)$ ist eine Funktion von $S$' Ausgabeknoten - weiter unten werden wir zwei verschiedene Implementierungen dieser Funktion betrachten. Zum Zeitschritt $t >0 $ dient $w_{ba}(t-1)$ zur Berechnung von $F$'s gegenwärtiger Ausgabe anhand der gewöhnlichen Aktivationsausbreitungsregeln für BP-Netzwerke (e.g. [143]): Die Aktivation $o_k(t)$ des $k$-ten Knoten in der $r$-ten Lage von $F$ (mit $r>1$) wird gemäß

\begin{displaymath}
net_k(t) = \sum_{l \in ~Lagen~ < r} w_{kl}(t-1)o_l(t), ~~
o_k(t) = f_k(net_k(t))
\end{displaymath} (3.1)

berechnet, wobei $f_k$ eine differenzierbare Aktivierungsfunktion bezeichnet (gewöhnlich die logistische, siehe (2.2)). Der Ausgabevektor der obersten Lage ist $y(t)$.

Nun wird jede Gewichtsvariable $w_{ba} \in W_F$ gemäß

\begin{displaymath}
w_{ba}(t) = \sigma(w_{ba}(t-1), \Box w_{ba}(t))
\end{displaymath} (3.2)

geändert, wobei $\sigma$ bezüglich aller Parameter differenzierbar sein soll. $\Box w_{ba}(t)$ ist eine Funktion von $S$' Ausgabe und wird durch einen der beiden in den nächsten beiden Unterabschnitten beschriebenen Mechanismen berechnet. $\Box w_{ba}(t)$ stellt $S$' Beitrag zur Modifikation von $w_{ba}$ zum Zeitpunkt $t$ dar. Die Aktivation des $k$-ten Nichteingabeknoten in der $r$-ten Lage von $S$ (mit $r>1$) wird wiederum gemäß
\begin{displaymath}
net_k(t) = \sum_{l \in ~Lagen~ < r} w_{kl}(t-1)o_l(t), ~~
o_k(t) = f_k(net_k(t))
\end{displaymath} (3.3)

berechnet ($f_k$ ist erneut eine differenzierbare Aktivierungsfunktion).

Solange $F$'s Gewichte nicht explizit durch $S$ modifiziert werden, bleiben sie im wesentlichen invariant. $F$'s gegenwärtige Eingabe läßt sich als eine Menge von Adressen einer Menge von Variablen interpretieren, $F$'s gegenwärtige Ausgabe kann als der derzeitige Inhalt dieser Variablen angsehen werden. Bindungen lassen sich in natürlicher Weise durch temporäre Konnektivitätsmuster (statt durch temporäre Aktivationsmuster) etablieren.

Gleichung (3.2) ist im wesentlichen identisch mit Möllers und Thruns Gleichung (1) in [57]. Im Gegensatz zu [57] werden wir jedoch im folgenden einen exakten Gradientenabstiegsalgorithmus für zeitveränderliche Ein- und Ausgaben herleiten.

Wie genau lassen sich $S$' Ausgaben nun in $F$'s Gewichtsänderungen übersetzen?



Unterabschnitte
next up previous contents
Nächste Seite: ARCHITEKTUR 1 Aufwärts: DYNAMISCHE VERBINDUNGEN Vorherige Seite: DYNAMISCHE VERBINDUNGEN   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