Cómo el texto se convierte en las piezas que un modelo lee.

SRC·04 Source
El modelo nunca ve una letra. Ni una palabra.

El modelo nunca ve una letra. Ni una palabra.

Antes de 'pensar' un solo pensamiento, tu frase se hace añicos en trozos, y cada trozo se convierte en un simple número. El mundo entero del modelo es ese flujo de enteros: no letras, no palabras, sino tokens. Todo lo que sabe del lenguaje, lo sabe sobre estas piezas.
¿Por qué no darle palabras y ya? ¿O letras?

¿Por qué no darle palabras y ya? ¿O letras?

Dos opciones obvias, ambas rotas. Una casilla por cada palabra significa un diccionario sin fin, y aun así tropieza con el primer nombre, error de tecleo o emoji que no ha visto. Por el otro lado, de a una letra, y una frase corta se infla a cien pasos casi vacíos. Como picar verduras: déjalas enteras y no se cocinan por dentro; pícalas hasta hacer puré y pierdes el plato. El corte justo está en medio.
La solución: dividir en <em>piezas</em>, no en palabras ni letras.

La solución: dividir en piezas, no en palabras ni letras.

Mantén enteras las palabras comunes; parte las raras en partes reutilizables. Así 'tokenization' se divide en 'token' + 'ization' — y ese 'ization' reaparece en 'civilization,' 'organization.' Unos pocos miles de partes estándar pueden deletrear casi cualquier cosa. Como piezas de construcción: nunca moldeas una pieza nueva para cada forma — encajas las que ya tienes.
¿De dónde salen las piezas? De la avaricia, una fusión a la vez.

¿De dónde salen las piezas? De la avaricia, una fusión a la vez.

(x,y)  =  argmax(x,y)count(x,y)(x,y)^{\star} \;=\; \arg\max_{(x,y)} \, \mathrm{count}(x,y)
Empieza desde los caracteres en bruto. Recorre una montaña de texto, encuentra el par vecino más frecuente y fusiónalo en una pieza nueva. Luego repite — miles de veces. 't'+'h' forman 'th'; más tarde 'th'+'e' forman 'the.' En palabras simples: los dos símbolos que más se ven juntos quedan pegados, una y otra vez, hasta tener tu vocabulario. Como la soldadura de fragua de un herrero: las dos barras que tomas juntas una y otra vez, al final las martillas en una sola — y ya nunca las unes a mano.
Cada pieza terminada es solo un número.

Cada pieza terminada es solo un número.

ids=[id(t)  :  ttokens],id(t){0,1,,V1}\text{ids} = \big[\, \mathrm{id}(t) \;:\; t \in \text{tokens} \,\big], \quad \mathrm{id}(t) \in \{0, 1, \dots, V-1\}
Una red hace cálculos, y no puedes multiplicar 'cat.' Así que cada pieza del vocabulario recibe un ID fijo — un número de fila de entre V. Tu frase se vuelve una corta lista de enteros, y eso es todo lo que entra. En palabras simples: una tabla congelada cambia cada trozo por su número. Como un guardarropa: entregas tu abrigo, tomas una ficha numerada, y de ahí en adelante todos tratan solo con fichas — nunca con abrigos.
Por esto no puede contar las r de 'strawberry.'

Por esto no puede contar las r de 'strawberry.'

Las piezas ignoran las costuras que a nosotros nos importan. 'strawberry' llega como dos o tres grumos, nunca como diez letras sueltas — así que el modelo sencillamente no puede ver las tres r para contarlas. Un espacio inicial incluso hace que ' dog' sea un token distinto de 'dog.' Lee en grumos, nunca en letras. Como un mosaico de cerca: puedes leer la imagen entera, pero cada tesela es un trozo macizo de color — pregunta qué letra se esconde dentro de una tesela, y no hay ninguna.
Así que un token es el verdadero alfabeto del modelo — un código aprendido.

Así que un token es el verdadero alfabeto del modelo — un código aprendido.

tokenscharacters4(English, on average)\text{tokens} \approx \dfrac{\text{characters}}{4} \quad (\text{English, on average})
Júntalo todo: el vocabulario — a menudo de 50.000 a 100.000 piezas — es un código de compresión, construido una vez y congelado. El texto común recibe un token corto; el texto raro se deletrea con muchos. En palabras simples: en promedio, unos cuatro caracteres ingleses se pliegan en un solo token. Longitud de contexto, velocidad, costo — todo se cuenta en tokens, no en palabras. El modelo no lee inglés; lee este código que el inglés atraviesa. Como embalar heno: la paja suelta es interminable, así que la prensas en pacas apretadas — y luego cuentas, cargas y cobras todo el campo en pacas, no en tallos.
🌱 Nunca conoce una palabra. Solo las piezas que elegimos por él.

🌱 Nunca conoce una palabra. Solo las piezas que elegimos por él.

Su mundo entero está hecho de cien mil fragmentos, fijados en su sitio antes de que aprendiera a pensar. Nunca conoce una letra, nunca conoce una palabra entera — solo estos trozos, y los números detrás de ellos. Entonces, cuando nos lee, ¿lee nuestro idioma? ¿O un dialecto privado, cosido a partir de fragmentos, que nuestras palabras solo atraviesan de paso?
toca →desliza ↑ para másdesliza ↓ para salir