Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Wie Sequence-to-Sequence funktioniert
Typischerweise besteht ein neuronales Netzwerk für die sequence-to-sequence Modellierung aus einigen Schichten, darunter:
-
Ein einbettender Layer. In diesem Layer mit der Eingabematrix werden die "platzsparend" codierten Eingabe-Token (z. B. per One-Hot-Codierung) einem Funktions-Layer mit hoher Dichte zugeordnet. Dies ist erforderlich, da ein hochdimensionaler Merkmalsvektor Informationen zu einem bestimmten Token (Wort für Textkorpora) besser kodieren kann als ein einfacher one-hot-encoded Vektor. Es ist auch üblich, diese Einbettungsschicht mit einem vortrainierten Wortvektor wie FastText
oder Glove zu initialisieren oder sie nach dem Zufallsprinzip zu initialisieren und die Parameter während des Trainings zu lernen. -
Ein Encoder-Layer. Nachdem die Eingabe-Token einem hochdimensionalen Funktionsraum zugeordnet wurden, wird die Sequenz über einen Encoder-Layer übergeben, um alle Informationen aus dem einbettenden Eingabe-Layer (der gesamten Sequenz) in einen Funktionsvektor mit fester Größe zu komprimieren. In der Regel besteht ein Encoder aus Netzwerken RNN vom Typ „-Langzeitgedächtnis“ (LSTM) oder „Gated Recurrent Units“ (). GRU (Colahs Blog
erklärt das LSTM ausführlich.) -
Ein Decoder-Layer. Der Decoder-Layer verwendet diesen codierten Funktionsvektor und generiert die Token-Ausgabesequenz. Diese Schicht besteht normalerweise auch aus RNN Architekturen (LSTMundGRU).
Das gesamte Modell wird gemeinsam trainiert, um die Wahrscheinlichkeit der Zielsequenz anhand der Quellsequenz zu maximieren. Dieses Modell wurde erstmals von Sutskever et al.
Attention-Mechanismus. Der Nachteil eines Encoder-Decoder-Frameworks besteht darin, dass die Modellleistung mit zunehmender Länge der Quellsequenz abnimmt. Das liegt daran, dass der codierte Funktionsvektor mit fester Länge nur eine bestimmte Menge an Informationen aufnehmen kann. Zur Behebung dieses Problems führten Bahdanau et al. im Jahre 2015 den Attention-Mechanismus
Weitere Informationen sowie erläuterte und vereinfachte Berechnungen verschiedener Attention-Mechanismen finden Sie im Whitepaper Effective Approaches to Attention-based Neural Machine Translation