🧮 Computational Mathematics

Inicio · Parte 16 — Matemática de Transformers, modelos generativos, grafos y RL

330 — Sampling, temperatura, top-k y top-p

experto clase 10 de 20 4 horas demostración sampling_strategies

Temperatura alta no es más creatividad: es más entropía, y también más error.

Fórmulas

temperatura: softmax(z/T)
top-k: conservar los k logits mayores
top-p: conservar la masa acumulada hasta p

Desarrollo

Un modelo autorregresivo produce una distribución sobre el vocabulario; la estrategia de muestreo decide qué hacer con ella. Tomar siempre el máximo —greedy— es determinista y produce texto repetitivo; muestrear de la distribución cruda produce texto diverso pero con errores frecuentes de la cola.

La temperatura divide los logits antes del softmax. Con T < 1 las diferencias se amplifican y la distribución se concentra: más determinista y más conservador. Con T > 1 las diferencias se comprimen y la distribución se aplana: más variedad y más riesgo. En el límite T → 0 se recupera greedy y con T → ∞ se obtiene la uniforme.

Conviene decirlo sin eufemismos: temperatura alta no es más creatividad, es más entropía. Aumenta la probabilidad de tokens raros, y algunos de esos tokens son sorprendentes de forma interesante mientras que otros son simplemente incorrectos. El modelo no distingue entre ambos casos.

Top-k y top-p atacan el problema desde otro ángulo: en vez de reescalar toda la distribución, truncan la cola. Top-k conserva los k candidatos más probables; top-p —o muestreo por núcleo— conserva los que acumulan una masa p, lo que adapta el número de candidatos a lo segura que esté la distribución. Cuando el modelo tiene clara la respuesta, top-p deja pocos; cuando duda, deja muchos. Es la razón de que sea preferible a top-k, y en la práctica se combina con temperatura moderada.

Ejemplo trabajado

La misma distribución bajo cinco estrategias.

logits: [3,0 ; 2,5 ; 2,0 ; 1,0 ; 0,5 ; −1,0 ; −2,0]

greedy (argmax): token 0

T = 1,0:  [0,45108 ; 0,27360 ; 0,16594 ; 0,06105 ; ...]
T = 0,5:  [0,65417 ; 0,24066 ; 0,08853 ; 0,01198 ; ...]
           más determinista
T = 2,0:  [0,30702 ; 0,23911 ; 0,18622 ; 0,11295 ; ...]
           más diverso

top-k = 3:
  [0,50648 ; 0,30720 ; 0,18632 ; 0 ; 0 ; 0 ; 0]
  la cola se elimina y se renormaliza

Con T = 0,5 el token menos probable pasa de 3e-3 a 3e-5:
queda prácticamente descartado.

Qué calcula el laboratorio

Temperatura, top-k y top-p reescriben la distribución antes de muestrear.

python classes/part-16-matematica-de-transformers-modelos-generativos-grafos-y-rl/330-sampling-temperatura-top-k-y-top-p/lab.py
compmath run 330

Salidas del laboratorio (9)

Muestra de la ejecución real

{
  "logits": [
    3.0,
    2.5,
    2.0,
    1.0,
    0.5,
    -1.0,
    -2.0
  ],
  "greedy_argmax": 0,
  "T=1.0": {
    "probs": [
      0.45108,
      0.2736,
      0.16594,
      0.06105,
      0.03703,
      0.00826,
      0.00304
    ],
    "entropia": 1.964594
  },
  "T=0.5_mas_determinista": {
    "probs": [
      0.65417,
      0.24066,
      0.08853,
      0.01198,
      0.00441,
      0.00022,
      3e-05
    ],
    "entropia": 1.318802
  },
  "T=2.0_mas_diverso": {
    "probs": [
      0.30702,
      0.23911,
      0.18622,
      0.11295,
      0.08796,
      0.04155,
      0.0252
    ],
    "entropia": 2.456529
  },
  "top_k=3": {
    "probs": [
      0.50648,
      0.3072,
      0.18632,
      0.0,
      0.0,
      0.0,
      0.0
    ],
    "tokens_vivos": 3
  }
}

Errores comunes

Dónde se usa

Generación con modelos de lenguaje, síntesis de imágenes, generación de código y control del compromiso entre diversidad y fiabilidad.

Idea rectora de la parte

Bellman expresa el valor como recompensa inmediata más valor futuro descontado.

Error a evitar

Olvidar la máscara causal en el modelado autoregresivo.

Conexión con IA

Esta parte es la traducción matemática directa de los papers que definen el estado del arte actual.

Bibliografía de la clase

Archivos de la clase