Die Encoder-Decoder-Architektur ist ein Grundmuster neuronaler Netze: Ein Encoder wandelt eine Eingabe variabler Länge in eine feste Vektor-Repräsentation (den Kontextvektor) um, ein Decoder erzeugt daraus Schritt für Schritt die Ausgabe. Damit lassen sich Eingabe und Ausgabe unterschiedlicher Länge und sogar unterschiedlicher Art verknüpfen – etwa einen deutschen Satz in einen englischen übersetzen.

Seq2seq: Durchbruch bei der Übersetzung

Das Muster wurde 2014 in zwei Grundlagenarbeiten etabliert. Sutskever et al. („Sequence to Sequence Learning with Neural Networks“) nutzten vier LSTM-Schichten und den Reverse-Input-Trick (die Eingabereihenfolge wird umgekehrt, was die Übersetzung deutlich verbessert). Parallel schlugen Cho et al. („Learning Phrase Representations using RNN Encoder–Decoder“) ein RNN-Encoder-Decoder-Modell mit Gated Recurrent Units vor. Beide Systeme lernen die Zuordnung Ende-zu-Ende aus Satzpaaren, ohne explizite Grammatikregeln.

Der Bottleneck des festen Kontextvektors

Der Kontextvektor ist ein Flaschenhals: Bei langen Sätzen geht Information verloren. Bahdanau et al. lösten das 2015 mit dem Attention-Mechanismus, der dem Decoder bei jedem Schritt gezielt Zugriff auf alle Encoder-Zustände erlaubt. Die moderne Transformer-Architektur verzichtet ganz auf die sequenzielle Verarbeitung und nutzt parallele Attention – sie ist der direkte Nachfolger dieses Prinzips.

Einsatzgebiete

  • Maschinelle Übersetzung und Textzusammenfassung
  • Dialogsysteme und Frage-Antwort-Systeme
  • Bildunterschriften: Ein CNN als Encoder liefert Bildmerkmale, ein RNN-Decoder erzeugt den Satz

Der Autoencoder ist die kompressionsorientierte Schwester dieses Musters – auch Contractive Autoencoder und Undercomplete Autoencoder bauen auf Encoder-Decoder-Strukturen auf.

Verwandte Grundlagen: RNN, LSTM, Maschinelles Lernen.