¿Existe un límite fundamental a lo pequeño que puede comprimirse un texto? ASCII gasta 8 bits por carácter; dar códigos cortos a las letras frecuentes baja el promedio hacia 4 bits, y métodos más astutos que explotan patrones a lo largo de pasajes largos lo hacen aún mejor. Pero ¿dónde está el suelo? La pregunta se remonta a los años cuarenta, al trabajo fundacional de Claude Shannon que lanzó la teoría de la información, y las mismas matemáticas aparecen hoy en cómo se entrenan los modelos de lenguaje.
En los modelos de lenguaje actuales, el preentrenamiento se describe como predicción del siguiente token con algo llamado pérdida de entropía cruzada, un término con raíces en la teoría de la información. Una de las conclusiones de la teoría es que predecir y comprimir son matemáticamente el mismo problema: predecir bien significa comprimir bien. Esa equivalencia me replantea el objetivo de entrenamiento: no se trata realmente de adivinar tokens, sino de construir el compresor de texto más eficiente posible.
La frase «la compresión es inteligencia» es provocadora, pero inteligencia es una palabra tan elástica y mal definida que el eslogan por sí solo no puede juzgarse con precisión; la afirmación más segura es que las matemáticas de la compresión están extrañamente ligadas a la inteligencia artificial. Aun así, la frase corta invita a pensar, así que la serie la toma en serio y dedica tres videos a examinar qué significa realmente la afirmación. El trabajo de la primera parte es entender los límites de la compresión y llevar al espectador a reinventar la idea central del teorema de codificación sin ruido de Shannon.
El ejemplo de calentamiento va así: un rover en una luna lejana recibe cuatro comandos de movimiento —arriba, abajo, izquierda, derecha—, cada uno de un paso de tamaño fijo. Los comandos no llegan con la misma frecuencia: la mitad son «arriba», un cuarto «abajo», un octavo «izquierda» y un octavo «derecha». Por simplicidad, se asume que cada comando es independiente, extraído de esta distribución sin importar el contexto. La pregunta: cuando el flujo de bits es lento y costoso, ¿cuál es la forma más eficiente de codificar estos comandos en bits?
El estudiante directo asigna dos bits por comando, lo que se decodifica fácilmente pero nunca explota lo común que es el comando «arriba». El estudiante astuto propone longitudes variables: «arriba» se convierte en 0, «abajo» en 10, «izquierda» en 110, «derecha» en 111. El promedio ponderado da: la mitad del tiempo 1 bit, un cuarto del tiempo 2 bits, un octavo cada uno 3 bits, para 1,75 bits por comando en total. Es una clara victoria sobre el esquema plano de 2 bits.
Las longitudes variables plantean un rompecabezas de decodificación: ¿cómo sabe el robot dónde caen los límites? En el código propuesto ninguna palabra de código comienza a otra, una propiedad llamada libre de prefijo. El robot lee bits y registra un comando solo una vez que se ha formado una palabra de código completa. En el diagrama de todas las cadenas binarias, cada elección consume una porción del espacio de código: 0 toma la mitad, 10 un cuarto, 110 y 111 un octavo cada uno. Las porciones coinciden exactamente con las probabilidades de los comandos, sin dejar nada sobrante.
El estudiante teórico no escribe código real y en cambio reflexiona sobre qué propiedades debe tener un código ideal. La idea astuta: el ruido aleatorio debería ser incompresible, así que un compresor perfecto debe producir un flujo de bits indistinguible del ruido aleatorio. Un mensaje comprimido de n bits es una de las 2 elevado a n posibilidades, todas igualmente probables bajo la apariencia de ruido, así que cada mensaje fuente lleva la probabilidad 2 elevado a menos n. Codificar un mensaje en menos bits lo baja una capa del diagrama; un bit ahorrado aquí cuesta dos bits en otro lugar, como presionar un bulto en una alfombra solo para que se levante peor en otra parte.
Este razonamiento hace inevitable la expresión logarítmica: un mensaje que usa n bits en un esquema ideal tiene probabilidad 2 elevado a menos n, así que tomar logaritmos en base 2 y negar equipara el conteo de bits con el logaritmo negativo de la probabilidad. Shannon llamó a esta cantidad la información de un evento: la columna crece alta cuando la probabilidad se aprieta hacia cero y se encoge cuando la probabilidad se acerca a la certeza. Cuando las probabilidades no son potencias limpias de 2, el valor sale fraccionario, y los bits fraccionarios tienen sentido como cota inferior de la longitud de código de un mensaje completo en lugar de de un solo símbolo.
El lenguaje difiere del caso del robot en dos aspectos: la probabilidad de cada nueva letra depende fuertemente de todo lo que la precede, y las probabilidades nunca son potencias ordenadas de 2. Una pequeña demostración de modelo de lenguaje en el dispositivo en el video produce una distribución diferente en cada posición, con la advertencia de que los números del modelo pueden no igualar las probabilidades verdaderas del lenguaje. La probabilidad de una oración completa es el producto de probabilidades condicionales sucesivas, la regla de la cadena, y como los logaritmos convierten productos en sumas, la información del mensaje completo se divide bellamente en términos por símbolo. La tercera parte promete un algoritmo concreto que comprime el texto hasta cerca de ese valor sumado.
Una forma de estimar las probabilidades es escanear libros y contar lo que tiende a seguir a grupos cortos de letras, pero eso colapsa en contextos largos no vistos. Shannon en cambio jugó un juego de adivinanzas con su esposa Betty: ella adivinaba un pasaje letra por letra mientras él escribía la letra correcta en los fallos y un guion en los aciertos. La copia abreviada llevaba la misma información, ya que su duplicado podía regenerar el original repitiendo el juego. El artículo de 1950 escaló el experimento, registrando cuántas adivinanzas requería cada letra y mapeando ese conteo a una probabilidad implícita.
La nota filosófica es que Shannon no estaba haciendo análisis de datos puro; estaba sondeando cajas negras inteligentes, tratando a los cerebros entrevistados como modelos de lenguaje indescriptibles pero sofisticados. Hoy construimos las cajas negras en lugar de interrogarlas. La entropía se define en este punto: la información promedio por símbolo de una distribución, la suma ponderada de cada probabilidad por su valor de información. La anécdota del nombre acredita a von Neumann, aunque el video mismo señala que la documentación es dudosa.
La intuición corre así: cuanto más uniformemente se distribuye una distribución, mayor es la entropía total, mientras que un evento dominante la arrastra hacia abajo ya que el resultado probable lleva poca información; repartir la probabilidad entre más símbolos la sube. Esto es esencialmente el teorema de codificación sin ruido del artículo de 1948: ningún código supera esta cota, y la cota siempre puede aproximarse arbitrariamente de cerca. Para procesos dependientes del contexto como el lenguaje, la versión generalizada pide la tasa de entropía, promediada sobre todos los mensajes posibles. Con al menos cien letras de contexto, Shannon estimó el inglés en alrededor de un bit por carácter, como si el lenguaje pudiera comprimirse en una sola respuesta sí-no por letra.
La segunda parte abre con un artículo llamativo de 2002: Benedetto, Caglioti y Loreto mostraron en Physical Review Letters que gzip puede recuperar estructura entre lenguas. El método añade un pequeño fragmento del documento B al documento A y comprime el resultado, luego lo compara con comprimir A solo. La diferencia mide qué tan bien se comprime el fragmento de B bajo un diccionario afinado para A: pequeño cuando las lenguas se parecen, grande cuando difieren. Reconocimiento de lengua, atribución de autoría y el árbol de familias lingüísticas fueron supuestamente recuperados con esta distancia de co-compresión.
La escena regresa entonces al robot: control de misión cambia el plan de modo que «arriba» y «abajo» caen cada uno a un octavo, «izquierda» sube a un cuarto y «derecha» a la mitad, mientras los decodificadores permanecen codificados al esquema antiguo. Ponderando las longitudes de código antiguas por las frecuencias nuevas se obtiene un octavo del tiempo 1 bit, un octavo 2 bits, tres cuartos 3 bits, promediando 2,625 bits por comando. Ese número es la entropía cruzada de la distribución antigua respecto a la nueva, preguntando cómo se desempeña un código afinado para un contexto en otro. Formalmente, un código afinado a Q gasta menos log2(q_i) bits por símbolo, así que bajo la realidad P el promedio es la suma de p_i por menos log2(q_i). En el diagrama de barras, los anchos llevan P mientras las alturas llevan los valores de información de Q.
Distribuciones de juguete de dos resultados afilan la intuición: con Q uniforme y P sesgada, cada símbolo lleva un bit de información así que los pesos no cambian nada y la entropía cruzada se queda en 1 bit. Al revés, la entropía de Q cae por debajo de un bit, y sin embargo el mismo código frente a una realidad uniforme gasta alrededor de 1,74 bits; el orden importa porque P y Q juegan papeles distintos en la fórmula. Fijar P y variar Q traza una curva minimizada exactamente donde Q iguala a P, y ese valor mínimo es la entropía de P. La curva verde trazada por esos mínimos es, en el caso de dos resultados, la propia curva de entropía de P.
El truco de compresión se relee con esta lente: comprimir un fragmento de B con un compresor afinado a A es una estimación empírica de la entropía cruzada. No literalmente: los documentos hacen de distribuciones, y gzip está lejos de la compresión en el límite de Shannon, reemplazando repeticiones por punteros vía LZ77 antes de la codificación Huffman. Aun así, la medida de distancia hace trabajo real de lenguaje natural, como la atribución de autoría. La lección se generaliza: la entropía cruzada aparece dondequiera que los patrones de un escenario deben medirse contra otro.
La aplicación es el entrenamiento de modelos de lenguaje: el texto se divide en tokens, el modelo produce una distribución del siguiente token por contexto, y la pérdida promedia los logaritmos negativos de las probabilidades de los tokens verdaderos. El aprendizaje automático usa el logaritmo natural, que difiere de la base 2 por un factor constante absorbido en la tasa de aprendizaje. ¿Por qué el logaritmo, a fin de cuentas? Un patrón como «mi nombre es ___» se repite miles de veces con nombres diferentes; la distribución Q del modelo y las frecuencias P de los datos definen una pérdida total escribible con una función genérica por ejemplo F de Q. Exigir que el total se minimice solo cuando el modelo coincide con los datos fuerza, vía optimización con multiplicadores de Lagrange, que la derivada de F tome una forma constante respecto a q que solo los logaritmos poseen. La mano está forzada: la pérdida no se elige, se deduce.
La variante de objetivos suaves es la destilación: el modelo pequeño entrena contra la distribución completa del modelo grande en cada punto en lugar del único token verdadero, con la entropía cruzada escrita explícitamente. La analogía es el ajedrez: ver partidas en silencio frente a un jugador más fuerte que explica cuánto pesa cada movimiento candidato en cada turno. Una nota al pie define la divergencia KL como la entropía cruzada menos la entropía, los bits por símbolo desperdiciados por un código mal afinado: cero cuando las distribuciones coinciden, creciendo cuando divergen, asimétrica. La tercera parte promete el algoritmo que convierte un predictor en un compresor genuino, equiparando el preentrenamiento con el entrenamiento por compresión óptima.
Comentario de la IA
"«Ver estos dos videos seguidos me dejó una sola impresión: el logaritmo no es una función de pérdida para memorizar, sino la parada a la que todos deben llegar una vez que la pregunta de la compresión se toma en serio. La serie convierte las fórmulas de una lista de memorización en el resultado inevitable del razonamiento, y estructuré este artículo en ese mismo orden.»"
Evaluación de la IA
Fortalecer el argumento del otro lado: la compresión es pasiva, mientras que la inteligencia necesita metas, acción y decisiones secuenciales; incluso una distribución predictiva perfecta nunca elige qué hacer con sus predicciones. Un archivo zip no es un agente, y esta objeción apunta al volante decisional dentro de la propia definición de inteligencia de Hutter. Si tuviera que defender el eslogan, concedería que la compresión provee el motor del modelo del mundo, mientras que la dirección debe buscarse en otra parte.
Hay límites que el video omite: los experimentos reportados nunca cuentan el tamaño del compresor mismo, así que incluso cuando un modelo de 70 mil millones de parámetros comprime modalidades ajenas de manera impresionante, añadir los parámetros hace que la descripción en dos partes sea mucho más grande que el archivo crudo. La serie también salta la pregunta de la memorización: los modelos memorizan hasta que la capacidad se llena y solo entonces generalizan, mientras que gzip está lejos del límite de Shannon. Estos tres puntos completan el marco para leer los números del video.
De quién es la afirmación y a quién sirve también aplica aquí: la página de talentos y el rompecabezas KL al final del episodio se conectan orgánicamente con el contenido pero siguen siendo una vitrina comercial. Cifras como las tasas Chinchilla y la correlación de menos 0,95 llegan vía relatos secundarios, así que a la hora de decidir, el montaje del artículo de DeepMind y el alcance del estudio de correlación —31 modelos sobre 12 benchmarks— merecen verificaciones independientes. En este artículo usé esos números como señales, no como fundamentos.
Mi conclusión es esta: para alguien que lee curvas de pérdida, decide sobre destilación, o quiere teoría de la información por intuición, esta serie es una parada de primera clase; para cualquiera que asuma que una pérdida menor significa automáticamente un modelo más inteligente, es una trampa. La pérdida es una métrica proxy, no un certificado de capacidad. Me tomo en serio el vínculo compresión-inteligencia, pero siempre escribo el signo igual entre ellos a lápiz.
Fuentes
12 enlaces; ninguna otra noticia publicada los cita. Stories sharing a link do not confirm each other; a source's origin is not inferred from how often it is cited.
- @youtube https://www.youtube.com/watch?v=GlYgs6v2YfU
- @youtube https://www.youtube.com/watch?v=l6DKRf-fAAM
- @3blue1brown https://www.3blue1brown.com/lessons/cross-entropy/
- @3blue1brown https://3blue1brown.substack.com/p/reinventing-entropy
- @3blue1brown https://3blue1brown.substack.com/p/but-what-is-cross-entropy
- @pubmed https://pubmed.ncbi.nlm.nih.gov/11801178/
- @arxiv https://arxiv.org/pdf/cond-mat/0108530
- @math https://math.mit.edu/~shor/18.310/noiseless-coding.pdf
- @sebastianraschka https://sebastianraschka.com/faq/docs/next-token-prediction.html
- @arxiv https://arxiv.org/abs/2309.10668
- @arxiv https://arxiv.org/abs/2404.09937
- @shanakacdesoysa https://shanakacdesoysa.substack.com/p/compression-isnt-intelligence-so
entropía · entropía cruzada · compresión · teoría de la información · shannon · 3blue1brown · modelos de lenguaje