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 .