Die Aufgabe für einen solchen Lernalgorithmus
stellt sich im allgemeinen wie folgt: Gegeben eine Sequenz
von Eingabevektoren , eine Sequenz von gewünschten
Ausgabevektoren
,
und eine Fehlerfunktion, typischerweise
. Minimiere die Fehlerfunktion!
(Dabei ist der aktuelle Ausgabevektor zur Zeit
, und
durchläuft alle Zeitschritte eines Trainingsintervalls.)
Man beachte, daß die Aufgabenstellung allgemein genug ist, um zeitliche Abhängigkeiten beliebiger Natur zuzulassen. Dies bedeutet einen qualitativen Sprung von der `Dynamik der trivialen Art' hin zur `algorithmischen Dynamik'. Wer obige Fehlerfunktion minimieren kann, kann nicht nur sequentielle Assoziationen, sondern im Prinzip auch Algorithmen im weitesten Sinn lernen lassen.
Alle bekannten Ansätze zielen nun darauf ab, den Gradienten der Fehlerfunktion bezüglich der Gewichtsmatrix zu berechnen oder zu approximieren:
Dabei ist der Gewichtsvektor des Netzes,
ist
die von der Lernregel induzierte Gewichtsänderung, und
ist eine
positive Lernrate.
Wer den Gradienten obiger Fehlerfunktion bestimmen kann, kann auch den Gradienten einer Summe derartiger Fehlerfunktionen bestimmen (der Gradient der Summe ist die Summe der Gradienten). Damit können mehrere Sequenzen oder Algorithmen in überlagerter Form in das Netzwerk eingespeichert werden.