Como um modelo aprende onde cada palavra está.

SRC·02 Source
Mesmas palavras, nova ordem, sentido oposto — e a atenção não percebe.

Mesmas palavras, nova ordem, sentido oposto — e a atenção não percebe.

Da última vez, a atenção lia um saco de palavras — embaralhe e a conta devolve a mesma resposta. Mas “cachorro morde homem” e “homem morde cachorro” não são a mesma história. A ordem é o sentido. Então, antes de o modelo olhar para qualquer coisa, a gente faz uma coisa discreta: dar a cada palavra uma noção de onde ela está.
Por que não numerar 1, 2, 3…? Porque a contagem dispara.

Por que não numerar 1, 2, 3…? Porque a contagem dispara.

Marque cada palavra com sua posição crua — 1, 2, 3, … — e o número não para de subir. Lá pela palavra 5.000, essa marca encobre o sentido real da palavra e o abafa. Pior: uma posição em que o modelo nunca treinou é uma completa desconhecida. Como uma contagem que nunca zera: as marcas vão se empilhando até serem tudo o que você enxerga. A gente precisa de uma noção de lugar que continue pequena e continue familiar.
A saída: uma onda que oscila pra sempre, mas nunca dispara.

A saída: uma onda que oscila pra sempre, mas nunca dispara.

PE(pos,2i)=sin ⁣(pos100002i/d)PE(pos,2i+1)=cos ⁣(pos100002i/d)\begin{aligned} \mathrm{PE}_{(pos,\,2i)} &= \sin\!\left(\dfrac{pos}{10000^{\,2i/d}}\right) \\[2pt] \mathrm{PE}_{(pos,\,2i+1)} &= \cos\!\left(\dfrac{pos}{10000^{\,2i/d}}\right) \end{aligned}
Troque a contagem desgovernada por uma onda. Um seno sobe e desce entre −1 e +1 pra sempre, mas sempre dentro dessa faixa arrumada — leia a altura dele e você sabe o quanto já avançou, sem nenhum número explodir. Abaixo, pos é a posição da palavra e i escolhe a onda; cada posição vira um conjunto de leituras de senos e cossenos. Como um pêndulo: ele balança sem parar, mas nunca sai do seu arco — a fase do balanço diz o momento.
Uma onda é ambígua. Um monte delas é uma impressão digital.

Uma onda é ambígua. Um monte delas é uma impressão digital.

Uma única onda lenta não distingue a posição 3 da 300 — as duas ficam quase na mesma altura. Por isso usamos muitas ondas ao mesmo tempo: umas rápidas, outras lentas. As rápidas fixam a posição fina; as lentas, o panorama; juntas, soletram um código que nenhuma outra posição compartilha. Como engrenagens engrenadas: uma minúscula zune, uma enorme mal se mexe — leia todas e você sabe exatamente o quanto a máquina girou.
A posição não é presa do lado — ela é misturada por dentro.

A posição não é presa do lado — ela é misturada por dentro.

xpos=Ewpos+PEpos\mathbf{x}_{pos} = E_{w_{pos}} + \mathrm{PE}_{pos}
Você esperaria que o código de posição viajasse ao lado da palavra. Não — ele é somado direto ao vetor de sentido: mesmo tamanho, mesmas casas, somados. Parece imprudente, mas o modelo tem folga pra manter os dois legíveis separadamente. Como sal dissolvido na sopa: você não serve num pratinho à parte — você incorpora, e o paladar ainda distingue o caldo do tempero.
A recompensa silenciosa: um passo à frente é sempre a mesma volta.

A recompensa silenciosa: um passo à frente é sempre a mesma volta.

PEpos+k=RkPEpos\mathrm{PE}_{pos+k} = R_k\,\mathrm{PE}_{pos}
Aqui está o presente escondido nos senos. Avance k palavras e cada vetor de posição gira pela mesma rotação fixa — ela depende só de k, nunca de onde você começou. Então o modelo consegue sentir “esses dois estão a 5 de distância” diretamente, não só onde cada um está. Como uma escada em caracol: subir um andar é o mesmo quarto de volta, em qualquer andar que você esteja.
Isso é codificação posicional: um endereço suave dobrado no sentido.

Isso é codificação posicional: um endereço suave dobrado no sentido.

Junte tudo. A atenção vê um saco sem ordem; damos a cada palavra um endereço limitado, suave e multiescala feito de ondas, somamos ele dentro da palavra e ganhamos a distância relativa de brinde. Alguns modelos pulam a fórmula e simplesmente aprendem um vetor de posição para cada casa — mesmo trabalho, ensinado pelos dados em vez da matemática. De um jeito ou de outro, a ordem deixa de se perder e passa a ser sentida.
🌱 Um lugar grampeado a uma palavra é o mesmo que habitar o tempo?

🌱 Um lugar grampeado a uma palavra é o mesmo que habitar o tempo?

Demos um endereço ao modelo — mas ele ainda é uma etiqueta somada por cima do sentido, relida toda vez que ele olha. Você não carrega uma coordenada; você sente a ordem como ritmo, como causa, como um instante que puxa pro seguinte. Então talvez a ordem não devesse ser um rótulo que a gente cola. E se onde uma palavra está devesse viver dentro do próprio ato de uma palavra se virar pra olhar outra — não grampeado antes, mas sentido no próprio olhar?
toque →deslize ↑ para maisdeslize ↓ para sair