Encoder-Decoder-Architektur
Eine Encoder-Decoder-Architektur ist eine neuronale Netzwerkarchitektur für die Verarbeitung von Sequenzen, bei der ein Encoder eine Eingabesequenz in eine interne Repräsentation überführt und ein Decoder eine bedingte Wahrscheinlichkeitsverteilung über die Ausgabesequenz modelliert, aus der anschließend autoregressiv eine konkrete Sequenz erzeugt wird. Eine Eingabesequenz kann dabei aus Wörtern bestehen, und die Ausgabesequenz beispielsweise eine Übersetzung des Satzes in eine andere Sprache sein. Die Encoder-Decoder-Architektur wurde 2014 eingeführt.[1][2]
In der ursprünglichen Form bestanden Encoder-Decoder-Modelle aus zwei rekurrenten neuronalen Netzen (RNNs), wobei eines als Encoder und das andere als Decoder fungierte. In modernen Ansätzen wird die Architektur aber auch in Transformer umgesetzt. Der erste Transformer aus der 2017 erschienenen Arbeit Attention Is All You Need baute auf dem Encoder-Decoder-Modell auf.
Encoder-Decoder-Architektur
[Bearbeiten | Quelltext bearbeiten]Die Eingabesequenz und die Ausgabesequenz bestehen aus Symbolen (z. B. Wörtern oder Zeichen). Das Ergebnis der Encoder-Decoder-Architektur ist die bedingte Wahrscheinlichkeit der Ausgabesequenz gegeben der Eingabesequenz:
Die bedingte Wahrscheinlichkeit lässt sich wiederum zerlegen in
Sei nun abgekürzt wobei .
Der Encoder-Decoder modelliert die bedingte Wahrscheinlichkeit
daraus folgt
Aus der bedingten Wahrscheinlichkeit lässt sich dann die optimale Ausgabe bestimmen:
Beispiel
[Bearbeiten | Quelltext bearbeiten]Gegeben sei die Eingabesequenz
welche von einem Encoder-Decoder ins Englische übersetzt wird. Die Ausgabe wird autoregressiv erzeugt, beginnend mit:
Dabei entsteht die Sequenz
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Kyunghyun Cho, Bart van Merriënboer, Çaglar Gülçehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, Yoshua Bengio: Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation. In: EMNLP 2014. 2014, doi:10.3115/v1/D14-1179, arxiv:1406.1078 [abs].
- ↑ Ilya Sutskever; Oriol Vinyals; Quoc V. Le: Sequence to Sequence Learning with Neural Networks. In: Advances in Neural Information Processing Systems 27. 2014, arxiv:1409.3215 [abs].
- ↑ Kyunghyun Cho, Bart van Merriënboer, Çaglar Gülçehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, Yoshua Bengio: Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation. In: EMNLP 2014. 2014, S. 1724–1726, doi:10.3115/v1/D14-1179, arxiv:1406.1078 [abs].