Encoder-only
Модели только-энкодер (англ. Encoder-Only Models) — это класс архитектур больших языковых моделей (LLM), основанных исключительно на кодирующей части (энкодере) архитектуры Трансформер. В отличие от моделей, использующих декодер или полную архитектуру энкодер-декодер, эти модели специализируются на задачах понимания естественного языка (Natural Language Understanding, NLU).
Флагманской моделью и пионером этого подхода является BERT (Bidirectional Encoder Representations from Transformers), разработанная Google в 2018 году.
Концепция и архитектура
Основная идея моделей только-энкодер заключается в создании глубоких, контекстуализированных представлений (эмбеддингов) для каждого токена во входной последовательности. Благодаря механизму самовнимания (self-attention) в Трансформере, каждый токен может «видеть» и взаимодействовать со всеми остальными токенами в последовательности, что позволяет модели улавливать богатый контекст.
Ключевой особенностью является двунаправленность: представление каждого токена формируется на основе как левого, так и правого контекста одновременно. Это кардинально отличает их от авторегрессионных моделей только-декодер (как GPT), которые по своей природе являются однонаправленными.
Архитектурно, модель представляет собой стек из идентичных слоёв энкодера. Каждый слой состоит из двух основных подслоёв:
- Многоголовое самовнимание (Multi-Head Self-Attention): Вычисляет контекстуализированное представление для каждого токена.
- Полносвязная нейронная сеть (Feed-Forward Network): Применяет нелинейное преобразование к каждому представлению токена.
На выходе модель генерирует последовательность векторов той же длины, что и входная последовательность, где каждый вектор является богатым представлением соответствующего входного токена.
Задачи предварительного обучения
Для того чтобы научить модель понимать язык в двунаправленном контексте, используются специальные самоконтролируемые задачи предварительного обучения:
Маскированное языковое моделирование (Masked Language Modeling, MLM)
Это основная и наиболее важная задача для моделей только-энкодер, впервые представленная в BERT.
- Принцип работы: Из входной последовательности случайным образом скрывается (маскируется) небольшой процент токенов (обычно 15%). Задача модели — предсказать исходные значения этих замаскированных токенов, используя окружающий их двунаправленный контекст.
- Цель: Эта задача заставляет модель изучать глубокие семантические и синтаксические связи между словами.
Предсказание следующего предложения (Next Sentence Prediction, NSP)
Эта задача (также из оригинального BERT) была разработана для того, чтобы научить модель понимать отношения между предложениями.
- Принцип работы: Модели подаётся пара предложений, и она должна определить, является ли второе предложение логичным продолжением первого в исходном тексте.
- Статус: Позже исследования (например, в модели RoBERTa) показали, что NSP менее эффективна, чем MLM, и её часто заменяют другими задачами или вовсе убирают.
Применение
Модели только-энкодер не предназначены для генерации текста в свободном виде, так как у них отсутствует авторегрессионный декодер. Их сила заключается в анализе и понимании текста. Выходные векторные представления модели используются для решения широкого спектра NLU-задач:
- Классификация текста: Для задач, таких как анализ тональности или определение темы, используется представление специального токена `[CLS]`, который добавляется в начало каждой последовательности. Его конечный вектор агрегирует информацию о всей последовательности.
- Токенная классификация: Для задач, таких как распознавание именованных сущностей (NER) или тегирование частей речи (POS-tagging), используются векторные представления каждого отдельного токена.
- Ответы на вопросы (Question Answering): В задачах, где ответ является фрагментом из заданного текста (extractive QA), модель обучается предсказывать начальный и конечный токены ответа.
- Получение эмбеддингов: Энкодер-модели часто используются как универсальные кодировщики текста для получения высококачественных эмбеддингов предложений или документов, которые затем могут быть использованы в поисковых системах или для задач семантического сходства.
Основные модели и их эволюция
- BERT (2018): Пионер архитектуры, установивший новые рекорды на множестве NLP-бенчмарков.
- RoBERTa (2019): «Надёжно оптимизированный BERT». Показала, что производительность BERT можно значительно улучшить за счёт более длительного обучения на большем количестве данных и отказа от задачи NSP.
- ALBERT (2019): «A Lite BERT». Модель с значительно меньшим числом параметров благодаря техникам факторизации эмбеддингов и межслоевого разделения параметров.
- DistilBERT (2019): Уменьшенная версия BERT, созданная с помощью дистилляции знаний, которая быстрее и легче, но сохраняет большую часть производительности оригинала.
- ELECTRA (2020): Представила более эффективную задачу предварительного обучения — replaced token detection, где модель учится отличать оригинальные токены от «поддельных», сгенерированных небольшой моделью-генератором.
- DeBERTa (2020): Ввела механизм «разделённого внимания» (disentangled attention), который отдельно кодирует контент и относительные позиции токенов.
См. также