Легкое введение в Transformer-XL

Краткое описание новой техники внимательного языкового моделирования, поддерживающей долгосрочные зависимости.

Задний план

Языковое моделирование было недавно решено с использованием неконтролируемых методов обучения, таких как ELMo и BERT. Тем не менее, по-прежнему остается проблемой правильное оснащение нейронных сетей с долгосрочной зависимостью.

Недавние модели были разработаны с механизмом внимания, чтобы помочь облегчить оптимизацию - имея дело с исчезающим градиентом - и позволить изучение долгосрочной зависимости. Однако в этих случаях контекст имеет фиксированную длину, поэтому модель не может уловить более длительную зависимость и страдает от проблемы, известной как фрагментация контекста.

Фрагментация контекста относится к случаю, когда модели не хватает необходимой контекстуальной информации для прогнозирования первых нескольких символов в зависимости от способа выбора контекста - обычно без учета предложения или семантических границ.

Более того, предыдущие модели не поддерживают поток информации по сегментам во время обучения и используют фиксированную длину контекста, что означает, что в модели нет места для захвата долгосрочной зависимости.

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

Трансформатор-XL

Во время обучения модели ванильного языка не используют эффективно контекстную информацию, а сегменты обрабатываются индивидуально. Кроме того, семантические границы во время сегментации обычно не соблюдаются, поскольку в большинстве методов используются стандартные фрагментированные последовательности фиксированной длины. Во время оценки используются контексты фиксированной длины, а сегменты обрабатываются с нуля, что становится дорогостоящим, даже если фрагментация контекста несколько устранена. Эта статья направлена ​​на то, чтобы сосредоточиться на проблеме эффективности путем лучшего моделирования долгосрочной зависимости.

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

Этот метод отличается от других предыдущих подходов, которые фокусируются на других стратегиях для поддержки долгосрочной зависимости, таких как дополнительные сигналы потерь и расширенная структура памяти.

Представлен рекуррентный механизм на уровне сегментов, который позволяет модели повторно использовать предыдущие скрытые состояния во время обучения, решая как проблемы контекста фиксированной длины, так и фрагментации контекста. Другими словами, историческая информация может быть повторно использована и может быть расширена настолько, насколько позволяет память GPU. Смотрите этапы обучения и оценки на рисунке ниже.

Transformer-XL - этап обучения и оценки (источник рисунка)

Чтобы правильно использовать скрытые состояния, авторы предлагают механизм, называемый относительным позиционным кодированием, который помогает избежать временной путаницы. Современные модели не могут различить позиционную разницу между входами в разных сегментах на разных уровнях. Кодирование относительной позиции решает эту проблему путем кодирования смещения позиционной информации в скрытых состояниях, которое отличается от других подходов, которые выполняют это в качестве входного уровня.

Поскольку используется архитектура Transformer, описанный выше процесс достигается путем вычисления относительного расстояния между каждым вектором ключа и вектором запроса и добавления его в оценку внимания. С некоторым новым приемом параметризации терминов, используемых для получения оценки внимания между запросом и вектором, может быть включена информация об относительном положении. Компонент рекуррентности теперь оснащен предлагаемым относительным позиционным внедрением, и вся эта процедура представляет предлагаемую архитектуру Transformer-XL.

Полученные результаты

Transformer-XL получает хорошие результаты как для моделирования на уровне слов, так и на уровне символов, примененного к различным наборам данных, таким как WikiText-103, text8 и One Billion Word.

Предлагаемая модель сравнивается с ванильной моделью, которая недавно использовалась для моделирования языка на уровне символов (Al-Rfou et al., 2018), которая также использует более глубокое самоуважение. Обратите внимание, что ванильная модель не может поддерживать длины зависимостей, превышающие длину верхнего ограниченного сегмента.

Transformer-XL снижает предыдущий показатель сложности SoTA для нескольких наборов данных, таких как text8, enwiki8, One Billion Word и WikiText-103. Помимо характеристик SoTA, авторы утверждают, что метод является более гибким, более быстрым во время оценки (ускорение в 1874 раза), хорошо обобщает небольшие наборы данных и эффективен при моделировании коротких и длинных последовательностей. См. Сводку некоторых результатов, полученных для различных наборов данных, в таблицах ниже.

Вы можете проверить остальные результаты в полной статье, связанной ниже.

Другие преимущества

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

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

Дальнейшие чтения

  • Transformer-XL: модели внимательного языка вне контекста фиксированной длины
  • Аннотированный трансформатор группы Гарвард НЛП
  • Руководство внимания от Лилиан Венг
  • Внимание это все, что вам нужно
  • Репозиторий кода, связанный с бумагой (TensorFlow и PyTorch)
  • Языковое моделирование на уровне персонажа с глубокой самообслуживанием

Если будет выражен достаточный интерес, у меня может возникнуть желание подготовить пошаговое руководство для этой работы. Он содержит много различных компонентов, которые могут быть интересны и полезны для практиков и исследователей НЛП.