Задать вопрос
@ehevnlem
Программирую с 1975, в интернете с 1993.

В чем преимущество позиционного кодирования синусами?

Трансформер не учитывает позицию токена и требует позиционного кодирования. Самое просто это присвоить каждому токену его порядковый номер. Почему это плохо? Чем лучше используемый метод, кодирование синусами и косинусами?
  • Вопрос задан
  • 94 просмотра
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Веса принято держать в районе нуля - что-то типа +/-1. В итоге, если мы будет просто в лоб брать порядковый номер, то нейронке надо и порядковый номер 2 и порядковый номер 20 как-то приводить в свою нутрянку к маленьким числам (нормировать), иначе слово в позиции 100 будет иметь в 100 раз больше значимость, чем первое.
Поэтому тут нужно какое-то векторное кодирование из небольших чисел. Сразу напрашивается двоичный код, он в принципе подходит, но его минус в том, что получается тоже большой разлёт, то 0 то 1. Синус же дает несколько промежуточных значений. В принципе кодировку можно было бы и захардкодить, но зачем, когда синус сделает это за нас.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы