Позиционное кодирование

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: {{well|Статья написана с использованием LLM '''Claude Opus 4.8''' и проверена участником ~~~~}} {{TOCright}} '''Позиционное ...)
 
Строка 32: Строка 32:
== Литература ==
== Литература ==
* {{статья |автор=Vaswani A. и др. |часть=Attention Is All You Need |заглавие=Advances in Neural Information Processing Systems (NeurIPS) |год=2017 |ссылка=https://arxiv.org/abs/1706.03762}}
* {{статья |автор=Vaswani A. и др. |часть=Attention Is All You Need |заглавие=Advances in Neural Information Processing Systems (NeurIPS) |год=2017 |ссылка=https://arxiv.org/abs/1706.03762}}
-
* {{статья |автор=Su J. и др. |часть=RoFormer: Enhanced Transformer with Rotary Position Embedding |заглавие=Препринт arXiv:2104.09864 |год=2021 |ссылка=https://arxiv.org/abs/2104.09864}}
+
* {{статья |автор=Su J. и др. |часть=RoFormer: Enhanced Transformer with Rotary Position Embedding |заглавие=Neurocomputing |том=568 |страницы=127063 |год=2024 |ссылка=https://arxiv.org/abs/2104.09864}}
* {{статья |автор=Shaw P., Uszkoreit J., Vaswani A. |часть=Self-Attention with Relative Position Representations |заглавие=Proc. of NAACL |год=2018 |ссылка=https://arxiv.org/abs/1803.02155}}
* {{статья |автор=Shaw P., Uszkoreit J., Vaswani A. |часть=Self-Attention with Relative Position Representations |заглавие=Proc. of NAACL |год=2018 |ссылка=https://arxiv.org/abs/1803.02155}}
[[Категория:Машинное обучение]]
[[Категория:Машинное обучение]]
[[Категория:Нейронные сети]]
[[Категория:Нейронные сети]]

Текущая версия

Статья написана с использованием LLM Claude Opus 4.8 и проверена участником Iaroslav Lyakhov 20:04, 1 июля 2026 (MSD)


Содержание

Позиционное кодирование (англ. positional encoding) - способ передать трансформеру информацию о порядке элементов во входной последовательности. Поскольку механизм внимания сам по себе не учитывает позиции токенов, без позиционного кодирования модель воспринимала бы предложение как «мешок слов». Этот компонент - необходимая часть любой трансформерной архитектуры.

Зачем это нужно

Рекуррентные сети обрабатывают текст последовательно, поэтому порядок в них заложен естественным образом. Трансформер же обрабатывает все токены одновременно, а операция внимания перестановочно-инвариантна: если поменять местами слова, множество попарных связей не изменится. Между тем «собака укусила человека» и «человек укусил собаку» - разные по смыслу фразы. Позиционное кодирование восстанавливает утраченный порядок: в одних методах - добавляя к векторному представлению каждого токена информацию о его позиции, в других - модифицируя само вычисление внимания.

Абсолютное кодирование

В исходной работе «Attention Is All You Need» к эмбеддингу токена на позиции pos прибавляется вектор с синусоидальными компонентами:

PE_{(pos,2i)} = \sin\!\left(\frac{pos}{10000^{2i/d}}\right), \qquad PE_{(pos,2i+1)} = \cos\!\left(\frac{pos}{10000^{2i/d}}\right)

где i - номер измерения, d - размерность модели. Разные измерения колеблются с разной частотой, задавая каждой позиции уникальный «отпечаток». Плюс подхода - способность в принципе обобщаться на длины, не встречавшиеся при обучении. Альтернатива - обучаемые позиционные векторы (learned positional embeddings), как в BERT; они гибче, но плохо экстраполируются за пределы максимальной обученной длины.

Относительное кодирование

Часто важна не абсолютная позиция, а расстояние между токенами. Относительное позиционное кодирование (Shaw et al., 2018; Transformer-XL) встраивает информацию о взаимном сдвиге прямо в вычисление внимания, что улучшает работу с длинными текстами.

Современные подходы

  • RoPE (Rotary Position Embedding) - поворачивает векторы запросов и ключей на угол, пропорциональный позиции. Скалярное произведение при этом зависит от относительного сдвига. RoPE применяется в моделях LLaMA, GPT-NeoX и стал де-факто стандартом.
  • ALiBi - добавляет к оценкам внимания линейный штраф, растущий с расстоянием; хорошо экстраполируется на длинные контексты.

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

См. также

Литература

  • Vaswani A. и др. Advances in Neural Information Processing Systems (NeurIPS). — 2017.
  • Su J. и др. Neurocomputing. — 2024. — Т. 568. — С. 127063.
  • Shaw P., Uszkoreit J., Vaswani A. Proc. of NAACL. — 2018.
Личные инструменты