In diesem Abschnitt wird die parallele Version des Algorithmus A2 (siehe auch [56] und [58] sowie die verbesserte Version in [52] ) detailliert aufgeschrieben. (Die sequentielle Version ergibt sich sofort aus der parallelen Version durch geringfügige Modifikationen.)
A2 unterscheidet sich von jedem der Algorithmen anderer Autoren in wenigstens einigen der folgenden Punkte: A2 verfügt über ein Potential zum `on-line'-Lernen, die parallele Version ist lokal in der Zeit, A2 erlaubt sowohl interne als auch externe Rückkopplung mit (wenigstens im Prinzip) beliebigen zeitlichen Verzögerungen, er kümmert sich nicht um Trainingsintervallgrenzen, er braucht lediglich Reinforcement-artige Information zum Lernen, er erlaubt verschiedene Arten von Reinforcement oder `Schmerz' bzw. `Lust', und er kann ein Modell aller Eingaben aus der wahrnehmbaren Umgebung konstruieren, um möglichst vollständige rückwärts in die Zeit gerichtete `Lernpfade' zur Verfügung zu stellen.
Mit anderen Worten, A2 ist tatsächlich ein sehr allgemeiner Algorithmus. A2 zielt darauf ab, das fundamentale Lernproblem in der `on-line' Lernsituation anzugreifen, soweit dies durch das Konzept des `raumzeitlichen Gradientenabstiegs' überhaupt möglich ist.
Die on-line-Version von Robinson und Fallsides `Infinite
Input Duration' (IID-) Lernalgorithmus
[40](siehe auch Kapitel 2)
wird verwendet, um sowohl als auch
zu trainieren. (Zur
Erinnerung: Der IID-Algorithmus wurde zum ersten Mal durch Williams
und Zipser getestet
[80]). Wir konzentrieren uns erneut auf die
Version für diskrete Zeit. Allerdings sollte es keine größeren
Schwierigkeiten bereiten,
A2's Prinzip mit Hilfe der Arbeiten von Pearlmutter
[37]
und Gherrity [10] auf
kontinuierliche Zeit zu übertragen.
A2's Hauptschleife wird durch ein geeignetes domänenabhängiges Abbruchkriterium terminiert. Der Abbruch kann beispielsweise durch das Feststellen hinreichender Performanz ausgelöst werden.
Im 1. Schritt der Hauptschleife berechnet A2
die Aktionen der Effektoren des Systems.
Dies geschieht einfach durch Ablesen der auf konventionelle
Weise berechneten Aktivationen von 's
Ausgabeknoten und ihrer Interpretation als Steuersignale für
die Motorik. Für alle neuen Aktivationen werden die entsprechenden
Ableitungen bezüglich aller Steuernetzgewichte auf den neuesten Stand
gebracht.
Im 2. Schritt werden die im 1. Schritt berechneten Aktionen ausgeführt, und ihre Effekte (oder auch die Effekte früherer Aktionen) werden sichtbar.
Im 3. Schritt werden in 's Ausgabeknoten die
Voraussagen für
's neue Eingaben (hervorgerufen durch
die externe Rückkopplung oder durch von den Effektoren unabhängige
Umgebungsänderungen) berechnet, wobei
's neue Eingaben nicht
kennt. Wiederum wird relevante Gradienteninformation berechnet.
Im 4. Schritt werden 's Gewichte sofort so verändert, daß
in ähnlichem raumzeitlichen Kontext in Zukunft
bessere Voraussagen zu erwarten
sind.
Für den Fall der Existenz von Trainingsintervallgrenzen wäre die
von
zu minimierende Fehlerfunktion
Schließlich werden 's Gewichte so geändert, daß die kumulativen
Differenzen zwischen gewünschten und tatsächlichen Aktivationen
der Schmerz- und Lustknoten minimiert werden unter der Annahme, daß
bereits ein guter Prophet ist.
Jedes Gewicht
von
ändert sich
proportional zu
Der Ansatz des Lehrerzwangs ist ein natürlicher. Schließlich hängt
der Fortgang von
's Aktivationsausbreitung von den tatsächlichen
neuen Eingaben ab und nicht von
's Voraussagen.
's Dynamik wird also der `realen' Umgebung angepaßt. Im Kontext
des überwachten Lernens haben Williams und Zipser ein
Experiment beschrieben, bei dem der `Lehrerzwang' geradezu
notwendig war, um befriedigende Performanz zu erzielen.
's Fehler wird nicht durch die vorhergesagten Aktivationen
von
's Eingabeknoten, sondern durch die tatsächlichen
Aktivationen bestimmt. Siehe dazu auch obigen Abschnitt
über paralleles Lernen sowie einige nachfolgende
Kommentare zur `on-line' Natur von A2.
A2
bietet ein Gerüst für ein sogar noch etwas allgemeineres
Schema. Er basiert auf der logistischen Funktion
als Aktivierungsfunktion
für alle Nicht-Eingabeknoten. Die allgemeinere Form erlaubt
verschiedene Aktivierungsfunktionen für jeden Knoten, verschiedene
Fehlerfunktionen für sowohl
als auch
, sowie probabilistische
Ausgabeknoten für
.
Zu den probabilistischen
Ausgabeknoten werden gleich im Anschluß an die Beschreibung von A2
Details geliefert werden.
(Weiterhin werden einige zusätzliche
Kommentare folgen.) Für den Leser mag es hilfreich sein, mit dem in
Kapitel 2 beschriebenen Verfahren für zeitlich lokales überwachtes
Lernen zu vergleichen.
Notation :
ist die Menge aller Nicht-Eingabeknoten des Steuernetzwerkes,
ist die Menge seiner Ausgabeknoten,
ist die Menge seiner `normalen' Eingabeknoten,
ist die Menge seiner Lust- und Schmerzknoten,
ist die Menge aller Knoten des Modellnetzwerkes,
ist die Menge seiner Ausgabeknoten,
ist die Menge aller Knoten, die Schmerz oder Lust
voraussagen,
ist die Menge der Variablen für die Gewichte von
,
ist die Menge der Variablen für die Gewichte von
,
ist die Variable für die auf den neuesten Stand gebrachte
Aktivation des
ten Knotens von
,
ist die Variable für den letzten Wert von
,
ist die Variable für das Gewicht der gerichteten Verbindung
vom Knoten
zum Knoten
,
ist die Variable für den gegenwärtigen
angenäherten Wert von
,
ist die Variable für den letzten Wert von
,
falls , dann ist
's unveränderliche gewünschte Aktivation,
falls
, dann ist
der Knoten aus
, welcher
's Aktivationen voraussagt,
ist die Lernrate des Steuernetzwerkes,
ist die Lernrate des Modellnetzwerkes.
,
.
Von jedem Knoten aus
führt eine Vorwärtsverbindung
zu jedem Knoten aus
,
jeder Knoten aus ist bidirektional mit jedem anderen Knoten aus
vernezt,
jeder Knoten aus ist bidirektional mit jedem anderen Knoten aus
vernezt,
jede Verbindung, die auf einen Knoten aus
weist, gehört zu
,
jede Verbindung, die auf einen Knoten aus
weist, gehört zu
,
jedes Gewicht
benötigt
-Variablen für
alle
,
jedes Gewicht
benötigt
-Variablen für
alle
.
Die parallele Version des Algorithmus sieht wie folgt aus:
INITIALISIERUNG:
Für alle
:
Zufallsgenerator,
für alle möglichen :
.
Für alle
Für alle
:
Bestimme durch Wahrnehmung aus der Umgebung,
WIEDERHOLE, BIS ABBRUCHKRITERIUM ERFÜLLT:
1. Für alle
.
Für alle
:
Für alle :
,
für alle
:
.
2. Führe alle auf Aktivationen der Knoten aus basierenden
motorischen Aktionen aus.
Für alle
:
Bestimme durch Wahrnehmung aus der Umgebung.
3. Für alle
.
Für alle
:
Für alle :
,
für alle
:
.
4. Für alle
:
Für alle
:
Für alle
:
,
,
für alle
,
für alle
.