Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Wie RNNs Funktionieren | Abschnitt
Practice
Projects
Quizzes & Challenges
Quizze
Challenges
/
Modellierung Sequentieller Daten

bookWie RNNs Funktionieren

Swipe um das Menü anzuzeigen

Note
Definition

Rekurrente neuronale Netze (RNNs) sind darauf ausgelegt, sequenzielle Daten zu verarbeiten, indem sie Informationen aus vorherigen Eingaben in ihren internen Zuständen speichern. Dadurch eignen sie sich besonders für Aufgaben wie Sprachmodellierung und Sequenzvorhersage.

Distanzmaße
  • Sequenzielle Verarbeitung: RNN verarbeitet Daten Schritt für Schritt und behält dabei den Überblick über vorherige Elemente;
  • Satzvervollständigung: Bei dem unvollständigen Satz "My favourite dish is sushi. So, my favourite cuisine is _____." verarbeitet das RNN die Wörter einzeln. Nach dem Wort "sushi" sagt es das nächste Wort als "Japanese" auf Basis des vorherigen Kontexts voraus;
  • Gedächtnis in RNNs: Bei jedem Schritt aktualisiert das RNN seinen internen Zustand (Gedächtnis) mit neuen Informationen, um den Kontext für zukünftige Schritte zu bewahren;
  • Training des RNN: RNNs werden mit Backpropagation Through Time (BPTT) trainiert, wobei Fehler rückwärts durch jeden Zeitschritt weitergegeben werden, um die Gewichte für bessere Vorhersagen anzupassen.

Vorwärtspropagation

Während der Vorwärtspropagation verarbeitet das RNN die Eingabedaten schrittweise:

  1. Eingabe zum Zeitpunkt tt: Das Netzwerk erhält zu jedem Zeitpunkt eine Eingabe xtx_t;
  2. Aktualisierung des versteckten Zustands: Der aktuelle versteckte Zustand hth_t wird basierend auf dem vorherigen versteckten Zustand ht1h_{t-1} und der aktuellen Eingabe xtx_t mit folgender Formel aktualisiert:
ht=f(W[ht1,xt]+b) h_t = f \left( W \cdot \left[ h_{t-1},x_t \right] + b \right)
  • Dabei gilt:
    • WW ist die Gewichtsmatrix;
    • bb ist der Bias-Vektor;
    • ff ist die Aktivierungsfunktion.
  1. Ausgabenerzeugung: Die Ausgabe yty_t wird basierend auf dem aktuellen versteckten Zustand hth_t mit folgender Formel erzeugt:
yt=g(Vht+c)y_t = g(V \cdot h_t + c)
  • Dabei gilt:
    • VV ist die Gewichtsmatrix für die Ausgabe;
    • cc ist der Bias für die Ausgabe;
    • gg ist die Aktivierungsfunktion der Ausgabeschicht.

Backpropagation-Prozess

Backpropagation in RNNs ist entscheidend für die Aktualisierung der Gewichte und die Verbesserung des Modells. Der Prozess wird an die sequenzielle Natur von RNNs durch Backpropagation Through Time (BPTT) angepasst:

  1. Fehlerberechnung: Der erste Schritt bei BPTT ist die Berechnung des Fehlers zu jedem Zeitpunkt. Dieser Fehler ist typischerweise die Differenz zwischen der vorhergesagten Ausgabe und dem tatsächlichen Zielwert;
  2. Gradientenberechnung: In Rekurrenten Neuronalen Netzen werden die Gradienten der Verlustfunktion berechnet, indem der Fehler bezüglich der Netzwerkparameter abgeleitet und rückwärts durch die Zeit vom letzten bis zum ersten Schritt propagiert wird. Dies kann insbesondere bei langen Sequenzen zu verschwindenden oder explodierenden Gradienten führen;
  3. Gewichtsaktualisierung: Sobald die Gradienten berechnet wurden, werden die Gewichte mit einer Optimierungsmethode wie Stochastic Gradient Descent (SGD) aktualisiert. Die Gewichte werden so angepasst, dass der Fehler in zukünftigen Iterationen minimiert wird. Die Formel zur Aktualisierung der Gewichte lautet:
W:=WηLossW W := W - \eta \frac{\partial \text{Loss}}{\partial W}
  • Dabei gilt:
    • η\eta ist die Lernrate;
    • LossW\frac{\partial \text{Loss}}{\partial W} ist der Gradient der Verlustfunktion bezüglich der Gewichtsmatrix.

Zusammenfassend sind RNNs leistungsfähig, da sie Informationen aus der Vergangenheit speichern und nutzen können, was sie für Aufgaben mit Sequenzen besonders geeignet macht.

question mark

Welche Rolle spielt die Funktion gg in der Ausgabegleichung yt=g(Vht+c)y_t = g(V \cdot h_t+ c)?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 1. Kapitel 2
some-alt