1. Conmutar
  2. Computar
  3. Deducir
  4. Probabilidad
  5. Información
  6. Vectores
  7. Derivadas
  8. Optimizar
  9. Neuronas
  10. Generalizar
  11. Atención
  12. LLM

Capítulo 11 · Modelos de lenguaje

Predecir la siguiente palabra, a escala planetaria

Un LLM es un Transformer entrenado para minimizar la entropía cruzada de Shannon sobre billones de palabras. Este capítulo junta todas las piezas: cómo genera texto, por qué mejora de forma predecible al crecer, cómo se convierte en un asistente como ChatGPT y por qué a veces se inventa cosas.

El 30 de noviembre de 2022 OpenAI abrió al público un chat experimental. En cinco días tenía un millón de usuarios y, según algunas estimaciones, se convirtió en la aplicación de consumo de crecimiento más rápido de la historia hasta ese momento. Por dentro, ChatGPT era un modelo de la familia GPT, es decir, un Transformer entrenado para hacer una sola cosa: predecir el token siguiente. Todo lo que hemos visto en los capítulos anteriores ocurre a la vez en él.

La receta

  1. Tokenizar. El texto se trocea en unidades frecuentes con Byte Pair Encoding, un algoritmo de compresión de 1994 (Gage) que Sennrich y colaboradores adaptaron al lenguaje en 2016. Las palabras comunes son un token; las raras se parten en trozos.
  2. Representar. Cada token se convierte en un embedding, y decenas de bloques de atención lo transforman en un vector que resume todo el contexto anterior.
  3. Predecir. Una última matriz convierte ese vector en una puntuación (logit) zi por cada uno de los ~100 000 tokens del vocabulario, y un softmax la convierte en una distribución.
  4. Entrenar. Se minimiza la entropía cruzada (la log-verosimilitud negativa) sobre billones de tokens, con retropropagación y AdamW, durante semanas y en miles de GPU.
ℒ(θ)=−1T∑t=1Tlog⁡pθ(wt∣w1,…,wt−1).

Nada en esta fórmula habla de gramática, de hechos o de razonamiento. Pero para predecir bien el texto que escriben las personas hace falta, en alguna medida, todo eso. Ilya Sutskever lo resumió así: comprimir bien los datos obliga a aprender lo que los generó.

Generar: temperatura y muestreo

Para escribir, el modelo calcula la distribución del siguiente token, elige uno, lo añade al texto y repite. La forma de elegir importa mucho. El parámetro más conocido es la temperatura T:

pi=ezi/T∑jezj/T.

Con T→0 siempre sale el token más probable (decodificación voraz, repetitiva). Con T=1 se muestrea la distribución aprendida. Con T grande todo tiende a ser equiprobable (creativo… y luego incoherente). El nombre no es casual: es la distribución de Boltzmann de la física estadística, y tiene una caracterización que conecta con Shannon.

Teorema (softmax como máxima entropía; Jaynes, 1957)

Entre todas las distribuciones p sobre los tokens con un valor medio de logit fijado, ∑ipizi=c, la que tiene máxima entropía es pi∝ezi/T para la temperatura T que hace cumplir la restricción.

Demostración

Sea qi=ezi/T/Z. Para cualquier p que cumpla la restricción, por la desigualdad de Gibbs,

0≤DKL(p‖q)=−H(p)−∑ipilog⁡qi=−H(p)−cT+log⁡Z.

Luego H(p)≤log⁡Z−c/T=H(q), con igualdad solo si p=q (todo en nats).

En la práctica se combina con recortes: top-k se queda con los k tokens más probables y top-p (nucleus sampling, Holtzman et al., 2020) con el menor conjunto cuya probabilidad acumulada supera p. Así se evitan las rarezas de la cola de la distribución sin perder variedad.

La distribución del siguiente token para «El gato está sentado en el». Baja la temperatura para que casi siempre gane «sofá»; súbela para dar opciones a «teclado». Los tokens recortados por top-k o top-p aparecen apagados y su probabilidad se reparte entre los demás. Con «Muestrear 100» puedes comparar las frecuencias obtenidas con las probabilidades.

Las leyes de escalado

En enero de 2020 Jared Kaplan y sus colaboradores de OpenAI descubrieron una regularidad asombrosa: la pérdida de un modelo de lenguaje baja como una ley de potencias del número de parámetros N, del número de tokens de entrenamiento D y del cálculo empleado, a lo largo de siete órdenes de magnitud. En 2022 el equipo de DeepMind de Jordan Hoffmann ajustó una forma explícita, al entrenar más de 400 modelos:

L(N,D)=E⏟irreducible+ANα+BDβ,C≈6NDoperaciones.

El término E es la pérdida que ningún modelo puede eliminar: la entropía propia del texto, la incertidumbre que queda incluso conociendo perfectamente el idioma. Los otros dos son el precio de un modelo finito y de unos datos finitos. Con un presupuesto de cálculo C fijo, minimizar L es un problema de optimización con una solución sencilla.

Resultado (asignación óptima del cálculo; Hoffmann et al., 2022)

Minimizando L(N,D) con la restricción 6ND=C se obtiene N∗∝Ca y D∗∝Cb, con a=βα+β y b=αα+β. Empíricamente a≈b≈0,5: los parámetros y los datos deben crecer al mismo ritmo, con unos 20 tokens por parámetro.

Curvas de iso-cálculo: para un presupuesto C fijo, cada punto es un reparto distinto entre tamaño del modelo y datos (D=C/6N). Un modelo demasiado pequeño no aprovecha los datos; uno demasiado grande no ve suficientes. GPT-3 (175 000 millones de parámetros, 300 000 millones de tokens) estaba sobredimensionado: Chinchilla, con 70 000 millones de parámetros y 1,4 billones de tokens y un cálculo parecido, lo superó. Parámetros de la réplica de Besiroglu et al. (2024); pérdida en nats por token.

Las leyes de escalado convirtieron la IA en una disciplina de ingeniería con presupuestos predecibles. Explican la carrera por los centros de datos y también sus límites: la mejora es lenta (doblar el cálculo reduce la parte reducible de la pérdida solo un pequeño porcentaje) y los datos de texto de calidad no son infinitos.

De predictor a asistente

Un modelo preentrenado continúa textos, pero no sigue instrucciones: si le preguntas algo, quizá responda con otra pregunta, porque así siguen muchos textos de internet. Para convertirlo en un asistente se le ajusta con ejemplos de conversaciones y, sobre todo, con aprendizaje por refuerzo a partir de preferencias humanas (RLHF; Christiano et al., 2017; Ouyang et al., 2022). Aquí entra la última rama de la tabla: la teoría de juegos y el aprendizaje por refuerzo, que desde la ecuación de Bellman (1957) hasta AlphaGo (2016) estudian agentes que aprenden de recompensas.

Paso 1: un modelo de recompensa. Unas personas comparan pares de respuestas. Se ajusta una función r(x,y) con el modelo de Bradley-Terry (1952), pensado originalmente para clasificar jugadores a partir de partidas:

P(yA≻yB∣x)=σ(r(x,yA)−r(x,yB)).

Paso 2: optimizar la política sin alejarse demasiado. Se busca un modelo π que obtenga mucha recompensa pero siga hablando como el modelo original πref, penalizando la divergencia KL:

maxπ⁡𝔼y∼π(⋅∣x)[r(x,y)]−βDKL(π(⋅∣x)‖πref(⋅∣x)).
Teorema (política óptima con regularización KL)

El máximo se alcanza en

π∗(y∣x)=1Z(x)πref(y∣x)exp⁡(r(x,y)β).
Demostración

Dividiendo el objetivo entre −β y reordenando, maximizarlo equivale a minimizar

∑yπ(y)log⁡π(y)πref(y)er(y)/β=DKL(π‖π∗)−log⁡Z,

que por la desigualdad de Gibbs es mínimo exactamente cuando π=π∗.

Es otra vez un softmax: el modelo final repondera las probabilidades del original con la exponencial de la recompensa, y β hace el papel de la temperatura. Este resultado es la base de DPO (Rafailov et al., 2023), que despeja r de la fórmula y entrena directamente con las preferencias, sin aprendizaje por refuerzo explícito. Desde 2024, los modelos de razonamiento llevan esta idea más lejos: se entrenan con refuerzo sobre problemas con respuesta verificable (matemáticas, código) y aprenden a «pensar» con cadenas largas de pasos antes de contestar, cambiando cálculo en el momento de responder por precisión.

¿Por qué alucinan?

Un LLM a veces afirma con aplomo cosas falsas. Parte del problema tiene una explicación estadística. Un modelo entrenado por máxima verosimilitud tiende a estar calibrado: cuando asigna un 70 % a algo, acierta aproximadamente el 70 % de las veces. Kalai y Vempala (2024) demostraron que eso tiene un coste.

Teorema (los modelos calibrados alucinan; Kalai y Vempala, 2024, informal)

Para hechos arbitrarios que no siguen ningún patrón (como la fecha de cumpleaños de una persona poco conocida), un modelo de lenguaje calibrado debe generar hechos falsos con una tasa aproximadamente igual, como mínimo, a la fracción de esos hechos que aparecen una sola vez en los datos de entrenamiento. Esa fracción es la estimación de Good-Turing de la «masa no vista».

Lo que solo se ha visto una vez no se puede distinguir bien de lo que nunca se ha visto. Para reducir las alucinaciones hace falta algo más que predecir bien: enseñar al modelo a abstenerse, consultar fuentes externas o verificar. Ningún escalado de los datos de entrenamiento elimina por sí solo esta tensión.

Entonces, ¿por qué funciona la IA?

Recorramos la cadena una última vez. Turing mostró que una máquina universal puede ejecutar cualquier procedimiento, también uno aprendido. La probabilidad dio el lenguaje para aprender de datos inciertos y la regla de la cadena convirtió el texto en una sucesión de predicciones. Shannon convirtió «predecir bien» en un número, la entropía cruzada, que es a la vez verosimilitud y compresión. El álgebra lineal dio un espacio donde el significado es geometría; el cálculo y la retropropagación, el gradiente de miles de millones de parámetros por el precio de unas pocas evaluaciones; y la optimización estocástica, una forma barata de bajar por él. Las redes neuronales aportaron funciones capaces de aproximarlo casi todo, y la atención, el sesgo inductivo adecuado para el lenguaje y para el hardware. A escala, la pérdida baja según leyes de potencias, y el refuerzo con regularización KL convierte al predictor en un asistente.

Y quedan preguntas abiertas, muy de matemáticas: por qué generalizan redes que podrían memorizarlo todo, qué representan exactamente por dentro y cómo garantizar que hacen lo que queremos. Que estas preguntas sigan abiertas es, quizá, la mejor razón para estudiar las matemáticas de la IA.

Repasar la historia completa →Volver al índice

Referencias

  1. E. T. Jaynes (1957). «Information Theory and Statistical Mechanics». Physical Review, 106(4).
  2. R. A. Bradley y M. E. Terry (1952). «Rank Analysis of Incomplete Block Designs». Biometrika, 39(3/4).
  3. R. Sennrich, B. Haddow y A. Birch (2016). «Neural Machine Translation of Rare Words with Subword Units». ACL.
  4. P. Christiano et al. (2017). «Deep Reinforcement Learning from Human Preferences». NeurIPS.
  5. A. Radford et al. (2019). «Language Models are Unsupervised Multitask Learners». OpenAI.
  6. J. Kaplan et al. (2020). «Scaling Laws for Neural Language Models». arXiv:2001.08361.
  7. T. Brown et al. (2020). «Language Models are Few-Shot Learners». NeurIPS.
  8. A. Holtzman et al. (2020). «The Curious Case of Neural Text Degeneration». ICLR.
  9. J. Hoffmann et al. (2022). «Training Compute-Optimal Large Language Models». NeurIPS.
  10. L. Ouyang et al. (2022). «Training language models to follow instructions with human feedback». NeurIPS.
  11. R. Rafailov et al. (2023). «Direct Preference Optimization: Your Language Model is Secretly a Reward Model». NeurIPS.
  12. R. Schaeffer, B. Miranda y S. Koyejo (2023). «Are Emergent Abilities of Large Language Models a Mirage?». NeurIPS.
  13. A. T. Kalai y S. S. Vempala (2024). «Calibrated Language Models Must Hallucinate». STOC.
  14. T. Besiroglu, E. Erdil, M. Barnett y J. You (2024). «Chinchilla Scaling: A replication attempt». arXiv:2404.10102.