XLNet: первый алгоритм, побивший BERT во всём

Yannic Kilcher 25,9 тыс. 30 мин 4 мин 03.07.2019
Главное

Будущее архитектур обработки естественного языка (NLP) наступило с появлением XLNet. Эта модель, представленная исследователями из Университета Карнеги — Меллон и Google Brain, стала «слоном в комнате» для сообщества машинного обучения, поскольку она первой смогла систематически превзойти BERT на множестве сложнейших задач. Янник Килчер (Yannic Kilcher) подробно разбирает, почему XLNet — это не просто очередной «BERT на стероидах», а глубокое переосмысление методик предварительного обучения нейросетей.

🏆 Новый лидер в мире NLP: XLNet против BERT 0:00

На момент выхода XLNet показала ошеломляющие результаты, достигнув статуса state-of-the-art (SOTA) в 18 из 20 протестированных задач. Среди них — ответы на вопросы, естественный логический вывод и анализ тональности текста . Как отмечает Янник Килчер (Yannic Kilcher), самое примечательное здесь то, что архитектура XLNet во многом идентична BERT, а весь прорыв кроется в инновационной процедуре предварительного обучения .

🔄 Две парадигмы: Авторегрессия против Автокодирования 1:07

Чтобы понять суть XLNet, Янник Килчер (Yannic Kilcher) предлагает разделить существующие методы обучения на две категории :

  1. Авторегрессионное моделирование (AR): Классический подход, где модель предсказывает следующий токен в последовательности на основе предыдущих (например: «Мама мыла...» -> «раму») . Это естественный способ генерации текста, но его главный минус — однонаправленность. Модель «видит» только то, что слева, и игнорирует контекст справа .
  2. Автокодирование (AE), представленное BERT: Здесь модель получает всё предложение сразу, но некоторые слова в нём скрыты (маскированы). Задача — восстановить скрытые токены, используя двусторонний контекст .

По мнению автора видео, BERT совершил революцию именно за счёт двунаправленности, но принёс в жертву важные зависимости между словами .

🗽 Проблема «Нью-Йорка»: В чём BERT ошибается? 4:41

Янник Килчер (Yannic Kilcher) приводит наглядный пример с фразой «New York is a city» . Если мы маскируем слова "New" и "York", BERT будет предсказывать их независимо друг от друга.

XLNet решает эту проблему, сохраняя авторегрессионную природу: если модель сначала предсказала «New», то при предсказании второго слова она обязательно учтёт этот факт .

🎲 Магия пермутаций: Как обучить модель видеть всё сразу 10:20

Главная идея XLNet заключается в обучении на всех возможных перестановках (пермутациях) порядка токенов . Вместо того чтобы всегда идти слева направо, XLNet выбирает случайный порядок декодирования для каждого предложения .

🛠 Двухпотоковое внимание: Инженерный вызов 19:21

Реализация идеи пермутаций потребовала изменения архитектуры трансформера. Возникла коллизия: если мы хотим предсказать слово в позиции $i$, нам нужно знать его позицию, но нельзя знать само слово (информацию о его эмбеддинге) .

Для этого разработчики внедрили Two-Stream Self-Attention:

Эта «инженерная уловка» позволяет модели делать несколько предсказаний за один проход, не «подсматривая» правильные ответы в процессе обучения .

💾 Наследие Transformer-XL и проблема стоимости 24:08

Помимо основного метода, XLNet заимствует наработки Transformer-XL, такие как механизм памяти (кеширование скрытых состояний) и относительное позиционное кодирование . Это позволяет модели работать с очень длинными текстами, передавая информацию из одного сегмента в другой .

Однако Янник Килчер (Yannic Kilcher) выражает обеспокоенность стоимостью таких исследований. Согласно приведённым в обзоре данным, одно полное обучение XLNet может стоить около 245 000 долларов .

Тем не менее Янник Килчер (Yannic Kilcher) признаёт, что идея XLNet изящна и действительно двигает область вперёд, доказывая, что архитектурные инновации всё ещё важнее простого наращивания данных .

💬 Цитаты

«XLNet — это первый алгоритм, который смог побить BERT, предыдущий стандарт индустрии, на большинстве задач NLP.»

Янник Килчер 00:13

«Это кажется безумием... это вызывает большие вопросы о состоянии исследований и способности академических игроков участвовать в процессе.»

Янник Килчер 29:13
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Авторегрессия
Метод предсказания элементов последовательности, где каждый новый шаг зависит от всех предыдущих.
SOTA (State-of-the-Art)
Самый высокий достигнутый уровень развития технологии или точности алгоритма на текущий момент.
NLP (Natural Language Processing)
Область искусственного интеллекта, занимающаяся анализом и генерацией человеческого языка.
Пермутация
Математический термин, означающий изменение порядка следования элементов множества.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект XLNet BERT Yannic Kilcher Transformer-XL Google Brain