Энкодер и декодер: какую архитектуру выбрать?
Автоматический перевод
Эта статья была автоматически переведена с оригинальной английской версии.
Используйте энкодер, обученный для конкретной задачи, чтобы получать представления или предсказания по входным данным. Используйте модель с энкодером и декодером, когда обученная система преобразует одну последовательность в другую. Используйте языковую модель только с декодером для авторегрессионной генерации и задач на основе промптов. Обучение чекпоинта и его интерфейс вывода важны не меньше, чем название архитектуры.
Это полезные исходные варианты для инженеров, выбирающих модели, а не ограничения того, что в принципе может делать адаптированная архитектура.
Сравните, что возвращает каждая модель
| Семейство | Схема аттеншна | Типичный выход и пример |
|---|---|---|
| Только энкодер | Токены видят весь вход | Представления токенов, метки или фрагменты текста; BERT |
| Энкодер и декодер | Энкодер обрабатывает весь вход; декодер выхода использует каузальный аттеншн и cross-attention | Сгенерированная выходная последовательность; T5 |
| Только декодер | Каузальный аттеншн по последовательности токенов | Распределения вероятностей следующего токена и сгенерированные продолжения; Llama |
BERT учится двунаправленным представлениям во время претрейнинга с маскированием токенов. Подходящая выходная голова и обучение для задачи превращают эти представления в результаты классификации, фрагменты текста или другие предсказания. Стандартный BERT не настроен как обычный генератор текста слева направо. Кроме того, агрегированный выход произвольного энкодера не становится автоматически хорошим эмбеддингом для retrieval: такое применение требует подходящего обучения и оценки.
T5 использует энкодер для представления входа и декодер для генерации выхода с аттеншном к этим представлениям. Модель может выражать задачи классификации как генерацию текста, а также преобразовывать последовательности. Архитектура с энкодером и декодером не ограничивается переводом.
Модель только с декодером использует одну и ту же каузальную последовательность для инструкций, примеров и сгенерированного продолжения. Каждая позиция может направлять аттеншн на себя и на предыдущие позиции. Предыдущие KV-состояния остаются действительными, когда генерация добавляет токены, что позволяет выполнять инкрементальное декодирование. Статья о Transformer объясняет различие между маскированием и cross-attention.
Выберите чекпоинт для задачи
Для классификации с фиксированными метками или извлечения данных сравните меньшую модель, обученную для задачи, с генератором, которым управляет промпт. Для retrieval сравните чекпоинты, обученные для получения эмбеддингов или реранкинга, вместо того чтобы ориентироваться только на названия архитектур. Для гибких ответов, кода или аргументов инструментов оцените генеративную модель по формату выхода и ошибкам, которые ваше приложение может допустить.
Проверьте ограничения входа, поддерживаемые языки, необходимую выходную голову, качество, латентность и рантайм для деплоя. Название семейства позволяет предсказать схему вычислений. Оно не гарантирует качество в задаче и не делает большую модель лучшим выбором.
Инженерное руководство: семейства моделей объясняет свойства генерации и кэширования вместе.