Почему утверждается, что self-attention не умеет различать позиции, хотя на самом деле он сордежит Linear на v,k,q?
Для self-attention утверждается, что он не умеет различать позиции значений, и поэтому делается предварительный энкодинг позиций. Это было бы справедливо, если бы он только умножал матрицы. Но ведь у self-attention на каждый вход есть еще предварительные Linear-ы, которые прекрасно понимают, где какой вход, и как следствие могут добавлять информацию о позиции к значениям. Почему происходит такое утверждение?
Выдержка из описания: "Since our model contains no recurrence and no convolution, in order for the model to make use of the order of the sequence, we must inject some information about the relative or absolute position of the tokens in the sequence". Здесь утверждается, что только рекурентные и конволюционные структуры понимают позиции, а типа простой Linear получается их путает? Почему же тогда до трансформеров, десятки лет использовали Linear без добавления кодирования позиций?
Вероятно добавление кодирования позиций производит некоторую работу, которая улучшает характеристики сетки, но почему необходимость этого объясняется отсутствием рекурентности и конволюции?