next up previous contents
Nächste Seite: Ein Experiment mit `verzögertem Aufwärts: Der lokale Algorithmus A3 Vorherige Seite: Der lokale Algorithmus A3   Inhalt

Detaillierte Beschreibung von A3

Der Aktivationsvektor eines vollständig bidirektional vernetzten Steuernetzwerkes $C$ zum Zeitpunkt $t$ wird mit $x(t)$ bezeichnet, sein Gewichtsvektor mit $w(t)$. Die Aktivation des $i$-ten Knotens von $C$ heißt $x_i(t)$, und das Gewicht der gerichteten Verbindung von $j$ nach $i$ heißt $w_{ij}(t)$. $C$ besteht aus linearen Eingabeknoten und stochastischen Nicht-Eingabeknoten. Der adaptive Kritiker $A$ besteht aus einem Knoten mit linearer Aktivierungsfunktion und einem zugehörigem Gewichtsvektor $v(t)$. Für alle $t$ gilt


\begin{displaymath}dim(v(t)) = dim(x(t)). \end{displaymath}

Zunächst betrachten wir den Fall, daß die Trainingsphase in Trainingsepisoden untergliederbar ist. Eine Episode beginnt mit der Initialisierung von $C$'s Aktivationsvektor und endet mit dem Bekanntwerden des externen Reinforcements $R$. Mit $\alpha$ und $\eta$ werden positive Lernraten bezeichnet.




Initialisiere alle Gewichte mit zufällig gewählten reellen Werten.

Für alle Episoden:

Initialisiere die Aktivationen der Eingabeknoten im ersten Zeitschritt durch sensorische Wahrnehmung. Initialisiere die Aktivationen der anderen Knoten mit $0$.

Für alle folgenden Zeitschritte $t$ bis zum abschließenden Bekanntwerden von $R$:

1. Berechne $A$'s Voraussage von $R$ durch $r = x^{T}(t-1)v(t)$.

2. Bringe die Aktivitäten des rekurrenten Netzes $C$ auf den neuesten Stand: Für alle Knoten $i$ berechne

\begin{displaymath}net_i(t) = \sum_j w_{ij}(t-1) x_i(t-1). \end{displaymath}

Die logistische Funktion $l(net_i(t))= \frac{1}{1 + e^{-net_i(t)}}$ liefert die Wahrscheinlichkeit dafür, daß $x_{i}(t)$ den Wert $1$ bzw. $0$ annimmt. Jeder Knoten $i$ merkt sich für später seine letzte Aktivation $x_{i}(t-1)$.

3.A. Falls $t$ der letzte Zeitschritt der Episode ist: Setze $r' = R$.

3.B. Andernfalls berechne $A$'s neue Voraussage $r' = x^{T}(t)v(t)$.

In jedem Fall ist der Fehler des Kritikers gleich $r' - r$. Gradientenabstieg bezüglich der letzten Eingabe $x(t-1)$ (mit Lernrate $\eta$) ergibt $A$'s neuen Gewichtsvektor $v(t+1)$.

4. Berechne alle Gewichtsinkremente


\begin{displaymath}\Delta w_{ij}(t) = \alpha (r' - r) x_{i}(t-1)x_{j}(t) \end{displaymath}

und führe die Gewichtsänderungen durch: $w_{ij}(t)=
w_{ij}(t-1) +
\Delta w_{ij}(t) $.




Die Differenz sukzessiver Voraussagen des Kritikers bestimmt also die Lernrate einer Hebb-ähnlichen Lernregel für $C$ (Schritt 4), (siehe auch [57] [55] [61]). Wollte man in Begriffen für kontinuierliche Zeit sprechen, könnte man sagen: Die temporale Ableitung der Erwartung zukünftigen Reinforcements ist gleich dem effektiven Reinforcement.

Man vergegenwärtige sich die extreme Einfachheit des Algorithmus. Jeder Knoten hat zu jedem Zeitpunkt dieselbe simple Folge von Berechnungen auszuführen. Der Spitzenberechnungsaufwand pro Zeitschritt und Verbindung ist $O(1)$. Für eine sequentielle Simulation auf einer von Neumann-Maschine ist der Spitzenberechnungsaufwand pro Zeitschritt $O(dim(w)+dim(v))$.

Um beliebig lange Zeiträume in den Griff zu bekommen, sollte man beim 3. Schritt von A3 eine kleine Modifikation anbringen:



3.B. Andernfalls berechne $A$'s neue Voraussage $r' = \gamma x^{T}(t)v(t)$.



Dabei ist $0 < \gamma < 1$ wieder ein Abschwächungsfaktor, welcher in naher Zukunft erwartetes Reinforcement stärker gewichtet als in ferner Zukunft erwartetes Reinforcement. $\gamma$ dient im wesentlichen der Vermeidung der Möglichkeit unendlicher Summen bei Voraussagen über kumulatives Reinforcement (siehe auch das Kapitel zum überwachten Lernen, Abschnitt `TD-Methoden').

Schließlich sollte noch darauf hingewiesen werden, daß die in Schritt 4 angegebene Lernregel für $C$ nur den allereinfachsten Repräsentanten einer ganzen Klasse anwendbarer einfacher Reinforcement-Lernregeln darstellt. Um z.B. unwahrscheinliche Transitionen von einem Netzwerkzustand zum nächsten stärker zu berücksichtigen als wahrscheinliche, braucht man die Lernregel nur leicht zu modifizieren:


\begin{displaymath}\Delta w_{ij}(t) = \alpha (r' - r) x_{i}(t-1)
(x_{j}(t)-P(x_{j}=1 \mid x(t-1),w(t-1)). \end{displaymath}

Es wäre jedoch ebenso möglich, etwa Barto und Anandans Assoziative Bestrafungs- und Belohnungsregel [3] zu benutzen (siehe auch das Kapitel über R-Lernen, Abschnitt `Neuronale Ansätze').


next up previous contents
Nächste Seite: Ein Experiment mit `verzögertem Aufwärts: Der lokale Algorithmus A3 Vorherige Seite: Der lokale Algorithmus A3   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