Encoder-decoder: две части для перевода
encoder-decoder — это схема из двух частей: encoder читает вход целиком, decoder генерирует выход.
Зачем это нужно
Перевод и похожие задачи переводят одну последовательность в другую. Входной текст нужно понять целиком, а выходной строить по одному токену.
Как это работает
По словам источника, оригинальный трансформер 2017 года был encoder-decoder. Позже стало ясно, что для языковых моделей достаточно decoder-части: она составляет примерно половину encoder-decoder модели. Сам encoder-decoder для машинного перевода в источнике описан в 13-й главе, которую в этом посте я не разбирал.
Пример
Для перевода схема такая: encoder читает исходное предложение и строит представления, decoder по одному токену пишет перевод и опирается на эти представления. В источнике детали этого механизма описаны в главе о машинном переводе.
Что запомнить
- Encoder-decoder исторически первый вариант трансформера.
- Decoder-only получилась как половина этой схемы.
- Encoder-decoder сохраняется там, где вход и выход разные по природе, например в переводе.
Где читать дальше
- SLP3, гл. 7 «Transformers and Pretraining», раздел 7.5 и историческая справка