Откуда взялся трансформер
До 2017 года доминировали рекуррентные нейронные сети (RNN/LSTM): они обрабатывали текст последовательно — слово за словом. Это создавало два ограничения: медленное обучение (нельзя распараллелить) и «забывание» контекста из начала длинного текста.
Статья «Attention is All You Need» (Vaswani et al., 2017) предложила обойтись без рекурсии вовсе: взять только механизм внимания, применить его ко всем позициям одновременно и добавить позиционные кодировки для сохранения порядка токенов.
Как работает self-attention
Для каждого токена модель вычисляет три вектора: Query (Q), Key (K) и Value (V). Внимание токена A к токену B — это скалярное произведение Q_A и K_B, нормированное softmax. Результат — взвешенная сумма V всех токенов. Иначе говоря: каждый токен «голосует», какие другие токены важны для его интерпретации.
Attention(Q, K, V) = softmax(QK^T / √d_k) · V
Многоголовое внимание запускает этот процесс параллельно в нескольких «проекциях» и конкатенирует результаты — это позволяет улавливать разные типы зависимостей одновременно.
Энкодеры и декодеры в e-commerce
| Тип | Примеры | Применение в e-commerce |
|---|---|---|
| Encoder-only | BERT, RoBERTa | Семантический поиск, матчинг запрос–товар |
| Decoder-only | GPT, LLaMA | AI Shopping Assistant, генерация описаний |
| Encoder-decoder | T5, BART | Саммаризация отзывов, мультиязычный поиск |
Для поисковых задач обычно используют энкодеры: они превращают запрос пользователя и описание товара в векторы, которые можно сравнивать через косинусное сходство. Для диалоговых сценариев — декодеры или encoder-decoder модели.
Типичные ошибки при внедрении
- Переоценка размера модели. Для рекомендательных задач BERT-base (110M параметров) часто достаточно — тяжёлые модели на 7B+ параметров дают прирост качества, но проигрывают по задержке инференса.
- Игнорирование длины контекста. У большинства трансформеров есть ограничение на длину входной последовательности (512, 2048 токенов). Длинные описания товаров или истории пользователей требуют усечения или специальных архитектур.
- Дообучение без данных предметной области. Общий BERT плохо понимает специфическую терминологию категорий. Fine-tuning на товарных описаниях и поисковых запросах существенно улучшает качество.