Por qué el doble de contexto cuesta cuatro veces más.

SRC·14 Source
El doble de texto, cuatro veces el trabajo.

El doble de texto, cuatro veces el trabajo.

El don de la atención es que cada palabra puede sopesar a todas las demás: por eso entiende tan bien el contexto. Y ahí está la trampa. Dale el doble y no trabaja el doble; trabaja cuatro veces más. La mirada que lo ve todo se cobra al cuadrado, y ese precio es el muro invisible detrás de cada 'ventana de contexto'.
Queremos que lo lea todo. La factura dice que no.

Queremos que lo lea todo. La factura dice que no.

El sueño es simple: meterle un libro entero, todo un código, y que lo tenga todo en mente a la vez. Guardar el texto es fácil: crece con calma, línea a línea. El problema es el coste de relacionarlo todo, que se dispara mucho más rápido que el propio texto. La longitud crece en línea recta. La factura crece en curva.
¿Por qué al cuadrado? Cada palabra sopesa a todas.

¿Por qué al cuadrado? Cada palabra sopesa a todas.

comparisons=n×n=n2\text{comparisons} = n \times n = n^2
La atención no es un vistazo rápido. Para situar una palabra, el modelo la compara con todas las demás, y lo hace con cada palabra. Con n palabras, eso es una cuadrícula de n por n: n² comparaciones, sin atajos. Como el arte con hilos: tensa un hilo entre cada par de clavos del borde y los hilos se acumulan como el cuadrado de los clavos. Unos pocos clavos más, muchísimo más hilo.
El doble de longitud, el cuádruple de coste.

El doble de longitud, el cuádruple de coste.

cost(2n)cost(n)=(2n)2n2=4\dfrac{\text{cost}(2n)}{\text{cost}(n)} = \dfrac{(2n)^2}{n^2} = 4
Como el trabajo depende de n², un poco más de texto duele mucho. El doble de palabras no es el doble de esfuerzo: es cuatro veces. ¿Diez veces las palabras? Cien veces el esfuerzo. Como alicatar un suelo: duplica el ancho de la sala y no duplicas las baldosas, las cuadruplicas. El borde crece de dos en dos; el suelo de dentro crece de cuatro en cuatro.
No es solo la matemática. Es la memoria.

No es solo la matemática. Es la memoria.

ARn×n    memory=O(n2)A \in \mathbb{R}^{n \times n} \;\Rightarrow\; \text{memory} = O(n^2)
Esas n² puntuaciones no se calculan y se olvidan: hay que sostener la cuadrícula entera a la vez antes de que se convierta en atención. Así que la memoria también crece como n², y suele ser el primer muro con el que chocas: no 'demasiado lento', sino 'sin espacio'. Como un embalse tras una presa: cuanto más largo el río que intentas contener, más sube el agua, hasta lamer el mismísimo borde.
Un solo paso estalla. El resto se mantiene tranquilo.

Un solo paso estalla. El resto se mantiene tranquilo.

O(nd2)the rest+O(n2d)all-pairs,n2dnd2    nd\underbrace{O(n\,d^2)}_{\text{the rest}} + \underbrace{O(n^2 d)}_{\text{all-pairs}}, \qquad n^2 d \gg n\,d^2 \iff n \gg d
Aquí está la salvación, y la trampa. Casi todo el modelo crece con suavidad: pasar las palabras por sus capas cuesta alrededor de n·d². Solo el paso de todos-contra-todos cuesta n²·d. Como dos enredaderas trepadoras: arrancan a la par, pero una sigue duplicando su alcance y se dispara por delante. En cuanto el texto es más largo que ancho el modelo —en cuanto n supera a d—, esa enredadera, el cuadrado, lo adelanta todo.
La fórmula famosa: ahora lee su etiqueta de precio.

La fórmula famosa: ahora lee su etiqueta de precio.

Attention(Q,K,V)=softmax ⁣(QKd)V    O(n2d)\mathrm{Attention}(Q,K,V) = \mathrm{softmax}\!\left(\dfrac{QK^{\top}}{\sqrt{d}}\right)V \;\Rightarrow\; O(n^2 d)
Aquí está, toda la atención en una línea. Ese QKᵀ de dentro es la cuadrícula de todos-contra-todos; ahí nace el n². El poder y el precio son el mismo hecho: una mirada que lo toca todo tiene que tocarlo todo. Como una araña de luces: para iluminar todo el salón a la vez, cada cristal debe arder. El esplendor es el coste.
🌱 Tú no sopesas cada palabra contra todas. ¿Por qué él sí?

🌱 Tú no sopesas cada palabra contra todas. ¿Por qué él sí?

Cuando lees esta frase, no contrastas cada palabra con todas las demás: te apoyas en la cercanía, en la costumbre, en la idea general, y te saltas casi todo sin pensarlo. Ese muro cuadrático es el precio de negarse a saltar. Así que la pregunta abierta es toda la frontera: ¿qué podría un modelo ignorar sin riesgo y aun así entender cada palabra?
toca →desliza ↑ para másdesliza ↓ para salir