Como um modelo codifica onde uma palavra está — girando, não rotulando.

SRC·30 Source
O que conta não é onde duas palavras estão, mas a que distância.

O que conta não é onde duas palavras estão, mas a que distância.

A solução de sempre adiciona um endereço a cada palavra. Mas a atenção só compara duas palavras de cada vez, e uma frase significa o mesmo na página 1 ou na 50 — só conta a distância entre elas. O rotary position embedding (RoPE) gira o ponto de vista de cada palavra conforme o lugar dela, então quando duas palavras se encontram, a comparação sente apenas a distância.
Adicione um endereço e a comparação o arrasta junto.

Adicione um endereço e a comparação o arrasta junto.

(xm+pm)(xn+pn)=xmxn+xmpn+pmxn+pmpn(x_m + p_m)^{\top}(x_n + p_n) = x_m^{\top}x_n + x_m^{\top}p_n + p_m^{\top}x_n + p_m^{\top}p_n
Como trocar endereços para saber quão perto vocês moram: você solta dois absolutos quando só queria a distância. Adicionar uma posição cola o onde no quê. Multiplique duas palavras assim e a pontuação se parte em quatro — e os pedaços de posição dependem dos assentos absolutos, não da distância. O modelo precisa cavar a distância de volta.
A solução: não adicione um lugar. Vire-se para ele.

A solução: não adicione um lugar. Vire-se para ele.

(x1x2)=(cosmθsinmθsinmθcosmθ)(x1x2)\begin{pmatrix} x'_1 \\ x'_2 \end{pmatrix} = \begin{pmatrix} \cos m\theta & -\sin m\theta \\ \sin m\theta & \cos m\theta \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \end{pmatrix}
Como o facho de um farol: a mesma luz, girada para uma direção definida pelo momento. O RoPE pega os números de cada palavra de dois em dois e gira cada par por um ângulo definido pela sua posição (vezes uma taxa fixa). Nada é aparafusado — o próprio vetor da palavra é apenas girado. A posição deixa de ser um rótulo e vira uma direção.
Dois giros se encontram, e só sobra a diferença.

Dois giros se encontram, e só sobra a diferença.

R(mθ)R(nθ)=R((nm)θ)    R(mθ)q,  R(nθ)k=qR((nm)θ)kR(m\theta)^{\top} R(n\theta) = R\big((n-m)\theta\big) \;\Longrightarrow\; \langle R(m\theta)\,q,\; R(n\theta)\,k\rangle = q^{\top} R\big((n-m)\theta\big)\,k
Como dois dançarinos enlaçados: gire-os para qualquer canto do salão e o ângulo entre os corpos nunca muda. Gire a query conforme o lugar dela, gire a key conforme o dela — e quando se encontram, os dois giros absolutos se cancelam. Só sobrevive n − m, a distância. A pontuação lê distância pura, exatamente o que queríamos.
Uma só velocidade borra. Então gire em várias de uma vez.

Uma só velocidade borra. Então gire em várias de uma vez.

θi=b2(i1)/d,i=1,,d/2,b=10000\theta_i = b^{-2(i-1)/d}, \quad i = 1, \dots, d/2, \quad b = 10000
Uma única taxa de giro dá a volta — longe o bastante, duas distâncias parecem iguais. Como um repique de sinos graduados: os pequenos balançam rápido, os grandes devagar, e só todos juntos soam um instante inconfundível. O RoPE dá a cada par sua própria taxa — pares rápidos fixam palavras próximas, pares lentos alcançam o outro lado da página.
Não acrescenta nada — e nunca se apaga.

Não acrescenta nada — e nunca se apaga.

q~m=RΘ,mqm,k~n=RΘ,nkn(0 new parameters)\tilde{q}_m = R_{\Theta,m}\,q_m, \qquad \tilde{k}_n = R_{\Theta,n}\,k_n \qquad (\text{0 new parameters})
Como uma porta giratória: o giro é o mecanismo inteiro — nenhuma máquina extra, e quem passa volta a receber o mesmo giro. O RoPE toca apenas as queries e as keys, com um giro fixo e nenhum peso novo para treinar. Ele empilha todos aqueles pequenos giros em 2-D num único giro bloco-diagonal, reaplicado dentro de cada camada — então, fundo no modelo, o senso de distância nunca se dilui.
A posição vira um giro — e o giro segue em frente.

A posição vira um giro — e o giro segue em frente.

m=mLtrainLtargetm' = m \cdot \dfrac{L_{\text{train}}}{L_{\text{target}}}
Junte tudo: a posição não é mais um rótulo que se aparafusa, mas um giro que se aplica — e o modelo lê apenas a distância entre palavras. Como a rosca de um parafuso longo: um passo fixo que continua encaixando por mais que a haste se estenda. Vá além do comprimento em que treinou, encolha com suavidade cada giro para caber, e a mesma regra ainda morde.
Conhece toda distância. Não conhece lugar nenhum.

Conhece toda distância. Não conhece lugar nenhum.

Uma palavra nunca sente o próprio assento — só o ângulo entre ela e outra. Pode dizer a distância até qualquer palavra, mas a nenhuma apontar e dizer ali. 🌱 Se uma mente guarda só distâncias e nunca um único lugar fixo, o onde existe para ela — ou só o a que distância?
toque →deslize ↑ para maisdeslize ↓ para sair