TGViewer
Data Science | Machinelearning [ru] Data Science | Machinelearning [ru] @devsp · 19.8K subscribers
Post #4441 2.8K

Forwarded from .ml

Ранее мы обсуждали с вами RoPE, а теперь поговорим о его модификациях. Собрали много интересного, поэтому будет целых три поста по этой теме. Enjoy!

Для начала напомним, что Positional Encoding (кодирование позиций слов/токенов) нужен, чтобы передать модели или трансформеру информацию о позициях слов — относительную или же абсолютную.


Как развивалось позиционное кодирование:

📆 2017 год
С появлением ванильного трансформера позиции токенов кодировались тригонометрической функцией, значение которой зависело от позиции и просто прибавлялось к эмбеддингу соответсутвующего слова.

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

Минусы — не очень работает на длинных последовательностях, да и вообще не очень хорошо работает.

📆 2018 год
Потом появился гугловский BERT, а вместе с ним новый подход позиционного кодирования: авторы предложиди выкинуть тригонометрию и вместо этого добавить в модель ещё один обучаемый слой nn.Embedding — такой же, как для получения эмбеддингов слов. Он должен кодировать — то есть, превращать в вектор — позицию токена.

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

В это же время впервые появилась идея о том, что нам важны не столько абсолютные позиции слов, сколько относительные. Авторы статьи решили кодировать не абсолютную позицию, а только относительную (Relative Position Encoding, или RPE), то есть близость каждой пары токенов. Здесь же появилась идея, что позицонное кодирование стоит добавлять не в момент создания эмбеддингов слов, а на этапе Attention, добавляя знание о позициии в queries и keys.
  • ❤ 2
More from @devsp
  1. Oct 8, 2026Европа тоже влезла в гонку языковых моделей: Германия впервые выкатила модель с результато…
  2. Oct 7, 2026Google выкатила EmbeddingGemma 2 Открытых мультимодальных моделей под эмбеддинги до неё не…
  3. Oct 7, 2026Матан: три подборки по основам 1. База по математике для машинного обучения 2. База по мат…
  4. Oct 6, 2026Post #6005
  5. Oct 6, 2026Яндекс открыл YTsaurus Flow: обработка данных в реальном времени для более точных рекоменд…
  6. Oct 6, 2026Парсить текст без LLM? Проект Real AI SA всё ещё дышит С прошлого поста об этой штуке прош…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →