Definition: Rekurrenter Layer

Als Rekurrenten Layer bezeichnen wir einen Layer-Typen neuronaler Netzwerke, der zusätzlich zur Eingabe einen internen hidden state hält.

Sei die aktuelle Eingabe.
Sei der Hidden State des letzten Schrittes.
Seien die Gewichtsmatrizen des Layers, seien die entsprechenden Bias-Terme und die entsprechenden Aktivierungsfunktionen.

In jedem Schritt erhalten wir zwei Ergebnisse:

  • der neue Hidden State:
  • der Output:

Für eine Sequenz erhalten wir als Berechnungsgraphen:

Anmerkung

Elman Netzwerk

Die hier präsentierte Art eines RNNs orientiert sich an Jeffrey Elman’s Formulierung eines Simple Recurrent Neural Networks von 1990.

Wie wird initialisiert?

Für die Initialisierung des ersten Hidden States gibt es drei häufige Ansätze:

  1. Null-Initialisierung, also ,
  2. Random-Initialisierung, bspw. auf Basis einer Normalverteilung,
  3. Lernbar, wird also anhand von Backpropagation trainiert.

Kompakter Berechnungsgaph

Allgemein lässt sich der Berechnungsgraph eines rekurrenten Layers reduziert darstellen durch

Die Schleife steht für die Einbeziehung des Hidden States im Schritt .

RNN in Excel?

In Excel können wir RNNs ziemlich einfach wie folgt berechnen nach dem Schema =MMULT(<M>; <x>) berechnen: