Три типа трансформеров: decoder, encoder, encoder-decoder
трансформеры бывают трёх видов, и различаются они тем, какие токены каждый может видеть.
Зачем это нужно
Одна архитектура не подходит ко всем задачам. Для генерации текста нужна одна схема, для классификации и разметки другая, для перевода третья.
Как это работает
Источник описывает левонаправленный (causal) трансформер, который предсказывает токены по одному, опираясь на предыдущий контекст. Такую модель называют decoder-only: она соответствует половине encoder-decoder модели, которую применяют для машинного перевода. Оригинальный трансформер 2017 года имел именно encoder-decoder архитектуру. Позже стандартом для языковых моделей стала decoder-only схема.
Encoder-only модели, как BERT, используют двунаправленный attention и обучаются маскированным языковым моделированием. Об их архитектуре подробнее в следующем посте.
Пример
Для генерации текста нужна схема decoder: «So long and thanks for» → «all». Для классификации или разметки токенов нужна схема encoder, потому что модель должна видеть весь текст сразу.
Что запомнить
- Decoder-only: токен видит только прошлое, подходит для генерации.
- Encoder: токен видит всё окно, подходит для интерпретации.
- Encoder-decoder: оригинальная схема, применяется в машинном переводе.
Где читать дальше
- SLP3, гл. 7 «Transformers and Pretraining», раздел 7.5 и историческая справка