Die Gated Recurrent Unit (GRU) ist eine Art Gating-Mechanismus, der in rekurrenten neuronalen Netzen verwendet wird und 2014 von Kyunghyun Cho und Kollegen eingeführt wurde. Sie wurde entwickelt, um das Problem des verschwindenden Gradienten zu adressieren, das bei Standard-Rekurrenten Netzen häufig auftritt, indem sie zwei Gates verwendet - ein Update-Gate und ein Reset-Gate - um zu steuern, wie viel der vergangenen Informationen beibehalten oder vergessen wird. Im Vergleich zur Long Short-Term Memory (LSTM)-Einheit hat die GRU eine einfachere Architektur: Sie besitzt keinen separaten Kontextvektor und kein Ausgabegate, was zu weniger Parametern und oft schnellerem Training führt. Trotz dieser Vereinfachung haben GRUs eine mit LSTMs vergleichbare Leistung bei Aufgaben wie polyfonem Musikmodellieren, Sprachsignalmodellierung und Verarbeitung natürlicher Sprache gezeigt. Forschung von Yoshua Bengios Team ergab, dass Gating allgemein vorteilhaft ist, aber keine endgültige Schlussfolgerung darüber zulässt, ob GRUs oder LSTMs allgemein überlegen sind.
Architektur
Die GRU verarbeitet Eingabesequenzen Schritt für Schritt und hält einen verborgenen Zustand aufrecht, der Informationen über Zeitschritte hinweg trägt. Bei jedem Zeitschritt berechnet die Einheit ein Update-Gate und ein Reset-Gate, die beide Funktionen der aktuellen Eingabe und des vorherigen verborgenen Zustands sind. Das Update-Gate bestimmt, wie viel des vorherigen Zustands weitergetragen wird, während das Reset-Gate entscheidet, wie viel des vergangenen Zustands bei der Berechnung einer Kandidatenaktivierung verwendet wird. Der endgültige verborgene Zustand ist eine konvexe Kombination aus dem vorherigen Zustand und der Kandidatenaktivierung, gewichtet durch das Update-Gate.
Mathematisch werden für einen Eingabevektor \(x_t\) und den vorherigen verborgenen Zustand \(h_{t-1}\) die Gates und die Kandidatenaktivierung wie folgt berechnet:
- Update-Gate: \(z_t = \sigma(W_z x_t + U_z h_{t-1} + b_z)\)
- Reset-Gate: \(r_t = \sigma(W_r x_t + U_r h_{t-1} + b_r)\)
- Kandidatenaktivierung: \(\hat{h}_t = \phi(W_h x_t + U_h (r_t \odot h_{t-1}) + b_h)\)
- Endgültiger verborgener Zustand: \(h_t = (1 - z_t) \odot h_{t-1} + z_t \odot \hat{h}_t\)
Hierbei ist \(\sigma\) die Sigmoid-Aktivierungsfunktion, \(\phi\) typischerweise der hyperbolische Tangens, und \(\odot\) bezeichnet das Hadamard-Produkt (elementweise Multiplikation). Die Gewichtsmatrizen \(W_z, W_r, W_h\) und \(U_z, U_r, U_h\) sowie die Bias-Vektoren \(b_z, b_r, b_h\) werden während des Trainings gelernt. Der anfängliche verborgene Zustand wird üblicherweise auf Null gesetzt.
Varianten
Es existieren mehrere Variationen der GRU, die sich darin unterscheiden, wie die Gates berechnet oder kombiniert werden. Eine bemerkenswerte vereinfachte Version ist die Minimal Gated Unit, die nur ein Gate (oft eine Kombination aus Update und Reset) verwendet, um die Rechenkomplexität zu reduzieren. Andere Varianten können die Reihenfolge der Operationen oder die Art und Weise, wie das Reset-Gate mit dem vorherigen Zustand interagiert, anpassen. Diese Modifikationen zielen darauf ab, die Effizienz oder Leistung bei spezifischen Aufgaben zu verbessern, aber das Kernprinzip des gated Informationsflusses bleibt konsistent.
Anwendungen
GRUs wurden weitgehend bei Sequenzmodellierungsaufgaben angewendet, einschließlich Verarbeitung natürlicher Sprache (z. B. maschinelle Übersetzung, Sprachmodellierung), Spracherkennung und Musikgenerierung. Sie werden auch bei Zeitreihenprognosen und in hybriden Architekturen verwendet, wo sie mit Faltungsschichten oder Aufmerksamkeitsmechanismen kombiniert werden. In vielen Umgebungen dienen GRUs als leichtgewichtige Alternative zu LSTMs, insbesondere wenn Rechenressourcen begrenzt sind oder die Sequenzlänge moderat ist.
Vergleich mit LSTM
Sowohl GRUs als auch LSTMs wurden entwickelt, um das Problem des verschwindenden Gradienten zu mildern, unterscheiden sich jedoch in der internen Struktur. Ein LSTM hat drei Gates (Eingabe-, Vergessens- und Ausgabegate) und einen separaten Zellzustand, während eine GRU zwei Gates und keinen separaten Zellzustand hat. Dies macht die GRU parametereffizient und oft schneller zu trainieren. Empirisch haben Studien gezeigt, dass GRUs bei vielen Benchmark-Aufgaben ähnlich wie LSTMs abschneiden, obwohl die Ergebnisse je nach Datensatz und Aufgabe variieren können. Einige Forschungsergebnisse deuten darauf hin, dass GRUs bei kleineren Datensätzen besser generalisieren könnten, während LSTMs bei größeren möglicherweise überlegen sind, aber kein endgültiger Vorteil wurde festgestellt.