Wie herkömmliche neuronale Netze, z. B. Feedforward Neural Networks und Convolutional Neural Network (CNNs), verwenden rekurrente neuronale Netze Trainingsdaten zum Lernen. Sie zeichnen sich durch ihr „Gedächtnis“ aus, da sie Informationen aus früheren Eingaben übernehmen, um die aktuelle Eingabe und Ausgabe zu beeinflussen.
Während traditionelle Deep-Learning-Netze davon ausgehen, dass Ein- und Ausgaben voneinander unabhängig sind, hängt die Ausgabe von rekurrenten neuronalen Netzen von den vorherigen Elementen innerhalb der Sequenz ab. Auch wenn zukünftige Ereignisse bei der Bestimmung des Outputs einer bestimmten Sequenz hilfreich wären, können unidirektionale rekurrente neuronale Netze diese Ereignisse bei ihren Vorhersagen nicht berücksichtigen.
Nehmen wir ein Idiom wie „sich nicht wohl fühlen“, das häufig verwendet wird, wenn jemand krank ist, um uns bei der Erklärung von RNNs zu helfen. Damit die Redewendung einen Sinn ergibt, muss sie in dieser spezifischen Reihenfolge ausgedrückt werden. Daher müssen wiederkehrende Netzwerke die Position jedes Wortes in der Redewendung berücksichtigen und diese Informationen nutzen, um das nächste Wort in der Sequenz vorherzusagen.
Jedes Wort des Satzes „Ich fühle mich nicht wohl“ ist Teil einer Sequenz, bei der die Reihenfolge eine Rolle spielt. Das RNN verfolgt den Kontext, indem es bei jedem Zeitschritt einen verborgenen Zustand beibehält. Durch die Weitergabe des verborgenen Zustands von einem Zeitschritt zum nächsten wird eine Rückkopplungsschleife erzeugt. Der verborgene Zustand fungiert als Speicher, der Informationen über frühere Eingaben speichert. Bei jedem Zeitschritt verarbeitet das RNN die aktuelle Eingabe (z. B. ein Wort in einem Satz) zusammen mit dem verborgenen Zustand des vorherigen Zeitschritts. Dadurch kann sich das RNN an frühere Datenpunkte "erinnern" und diese Informationen zur Steuerung der aktuellen Ausgabe verwenden.
Ein weiteres Unterscheidungsmerkmal wiederkehrender Netzwerke ist, dass sie Parameter über jede Schicht des Netzwerks hinweg gemeinsam nutzen. Während Feedforward-Netzwerke über jeden Knoten hinweg unterschiedliche Gewichte aufweisen, haben rekurrente neuronale Netze innerhalb jeder Schicht des Netzwerks den gleichen Gewichtungsparameter. Dennoch werden diese Gewichte durch die Prozesse der Backpropagation und des Gradientenabstiegs angepasst, um das bestärkende Lernen zu erleichtern.
Wiederkehrende neuronale Netze nutzen Vorwärtsausbreitung (Forward Propagation) und Backpropagation-Through-Time-Algorithmen (BPTT), um die Gradienten (oder Ableitungen) zu bestimmen. Dieser unterscheidet sich leicht von der traditionellen Backpropagation, da er spezifisch für Sequenzdaten ist. Die Prinzipien von BPTT sind die gleichen wie bei der traditionellen Backpropagation, bei der das Modell sich selbst trainiert, indem es Fehler von seiner Ausgabeschicht zu seiner Eingabeschicht berechnet. Diese Berechnungen ermöglichen es uns, die Parameter des Modells entsprechend anzupassen und abzustimmen. BPTT unterscheidet sich vom herkömmlichen Ansatz dadurch, dass BPTT Fehler in jedem Zeitschritt summiert, während Feedforward-Netzwerke keine Fehler summieren müssen, da sie keine Parameter über alle Schichten hinweg gemeinsam nutzen.