Der Hauptunterschied zwischen einer GRU und einem LSTM besteht darin, dass eine GRU zwei Gatter hat ( Reset- und Update- Gatter), während eine LSTM drei Gatter hat (nämlich Eingabe- , Ausgabe- und Vergessen- Gatter).
Warum setzen wir GRU ein, wenn wir über das LSTM-Modell eine deutlich bessere Kontrolle über das Netzwerk haben (da wir drei Tore haben)? In welchem Szenario wird GRU gegenüber LSTM bevorzugt?
neural-network
deep-learning
Sayali Sonawane
quelle
quelle
Antworten:
GRU ist mit LSTM verwandt, da beide unterschiedliche Methoden zum Ausblenden von Informationen verwenden, um ein Verschwinden des Gradientenproblems zu verhindern. Hier sind einige wichtige Punkte zu GRU vs LSTM-
Eine ausführliche Beschreibung finden Sie in diesem Research Paper - Arxiv.org . Das Papier erklärt das alles auf brillante Weise.
Außerdem können Sie diese Blogs nach einer besseren Idee durchsuchen.
Ich hoffe es hilft!
quelle
* Zur Ergänzung schon tolle Antworten oben.
Nach meiner Erfahrung trainieren GRUs mit weniger Trainingsdaten schneller und besser als LSTMs, wenn Sie Sprachmodelle erstellen (bei anderen Aufgaben nicht sicher).
GRUs sind einfacher und somit einfacher zu modifizieren, z. B. das Hinzufügen neuer Gates für den Fall zusätzlicher Eingaben in das Netzwerk. Es ist nur weniger Code im Allgemeinen.
LSTMs sollten sich theoretisch an längere Sequenzen als GRUs erinnern und diese bei Aufgaben übertreffen, die die Modellierung von Fernbeziehungen erfordern.
* Einige zusätzliche Artikel, die GRUs und LSTMs analysieren.
"Neuronale GPUs lernen Algorithmen" (Łukasz Kaiser, Ilya Sutskever, 2015) https://arxiv.org/abs/1511.08228
"Vergleichende Studie von CNN und RNN für die Verarbeitung natürlicher Sprachen" (Wenpeng Yin et al. 2017) https://arxiv.org/abs/1702.01923
quelle
Diese Antwort liegt tatsächlich auf dem Datensatz und dem Anwendungsfall. Es ist schwer definitiv zu sagen, was besser ist.
quelle
VOLLE GRU-Einheit
LSTM-Einheit
Wie aus den Gleichungen ersichtlich ist, haben LSTMs ein separates Aktualisierungs- und ein Vergessungs-Gate. Dies macht LSTMs deutlich anspruchsvoller, gleichzeitig aber auch komplexer. Es gibt keine einfache Möglichkeit, zu entscheiden, welche für Ihren speziellen Anwendungsfall verwendet werden soll. Sie müssen immer alles Mögliche ausprobieren, um die Leistung zu testen. Da GRU jedoch einfacher als LSTM ist, benötigen GRUs viel weniger Zeit zum Trainieren und sind effizienter.
Credits: Andrew Ng
quelle
GRU ist besser als LSTM, da es leicht zu modifizieren ist und keine Speichereinheiten benötigt. Daher ist es schneller zu trainieren als LSTM und bietet Leistung.
quelle
Tatsächlich ist der entscheidende Unterschied mehr als das: Langzeitperzeptrone (Long-Short Term, LSTM) werden mithilfe der Impuls- und Gradientenabstiegsalgorithmen erstellt. Wenn Sie LSTM-Perceptrons mit ihren rekursiven Gegenstück-RNNs in Einklang bringen, erhalten Sie eine GRU, die in Wirklichkeit nur eine generalisierte wiederkehrende Einheit oder eine Gradient Recurrent Unit (je nach Kontext) ist, die die Impuls- und Gradientenabstiegsalgorithmen enger integriert. Wenn ich Sie wäre, würde ich mehr über AdamOptimizers forschen.
GRU ist übrigens ein veraltetes Konzept. Ich kann jedoch verstehen, dass Sie darüber recherchieren, wenn Sie fortgeschrittene Kenntnisse in TF haben möchten.
quelle