Выбор ответа Middle Attention и трансформеры спрашивают часто обновлено

Зачем позиционное кодирование

Вопрос

Почему трансформеру нужно позиционное кодирование?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Self-attention инвариантен к перестановке: без позиций «кот съел мышь» не отличить. Attention считает взвешенные суммы по множеству, порядок ему не важен.

Варианты ответа

  1. Чтобы сократить длину последовательности, объединяя соседние позиции
  2. Self-attention инвариантен к перестановке: без позиций «кот съел мышь» не отличитьправильный ответ
  3. Позиционное кодирование заменяет эмбеддинги слов, когда словарь слишком большой
  4. Чтобы attention работал быстрее, пропуская пары далёких по позиции токенов

Разбор

Attention считает взвешенные суммы по множеству, порядок ему не важен. Позиции добавляют синусоидальными или обучаемыми векторами (исходный трансформер, BERT) или относительными схемами: RoPE поворачивает Q и K на угол, зависящий от позиции, и сейчас стандарт в LLM; ещё есть ALiBi.

  • Длину оно не меняет.
  • Позиции добавляются к эмбеддингам, а не заменяют их.
  • На скорость не влияет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме