English · Español
00 — Motivación: por qué probabilidad para un modelo de gramática verbal¶
El panorama¶
Un mini-GPT entrenado lee "Yesterday I" y emite una distribución de probabilidad sobre todo su vocabulario de salida. Para el corpus de gramática verbal §A13 ese vocabulario tiene ≈600 formas (20 verbos × 5 tiempos × 3 personas + un pequeño conjunto de conectores). El modelo no está seguro de que el siguiente token sea "worked". Asigna probabilidad 0.78 a "worked", 0.09 a "work", 0.05 a "work-ing" (diferido pero informativo), y una cola fina sobre todo lo demás.
Este es el objeto central del modelado supervisado de lenguaje: una distribución condicional sobre el vocabulario dado el prefijo. De aquí surgen tres preguntas fundamentales:
- ¿Cómo medimos cuán "buena" es esa distribución? Spoiler: entropía cruzada (cross-entropy) — pero hay que ganarse el derecho a esa afirmación.
- ¿Qué significa que dos distribuciones estén cerca o lejos? Respuesta: divergencia KL (KL divergence) — pero, de nuevo, derivada de una definición, no asumida.
- ¿Por qué
nn.CrossEntropyLosses numéricamente delicado? Respuesta: probabilidades pequeñas × vocabularios grandes ×log= underflow salvo que trabajemos en log-space todo el tiempo.
La Fase 05 construye el conjunto de herramientas para responder a las tres rigurosamente.
El escenario §A13 en cifras¶
Concretamente, cuando decimos "el modelo emite una probabilidad sobre el vocabulario de formas verbales", esto es lo exacto:
| Cantidad | Símbolo | Valor (Fase 12+) |
|---|---|---|
| Tamaño del vocab | \(V\) | ≈ 600 |
| Verbos | \(N_{\text{verb}}\) | 20 |
| Tiempos | \(N_{\text{tense}}\) | 5 |
| Personas | \(N_{\text{person}}\) | 3 |
| Formas = N_verb × N_tense × N_person | 300 | |
| + traducciones al español (emparejadas 1 a 1) | 300 | |
+ un pequeño conjunto de conectores (I, you, he, ...) |
≈ 20–30 |
🇪🇸 El vocabulario completo es chico — unas 600 formas. Esto significa que las distribuciones que vamos a manipular son chicas y manejables a mano. Buen tamaño para entender la matemática sin perderte en escala.
La pequeñez de \(V\) es una característica: podemos dibujar distribuciones completas, calcular entropías a mano y verificar identidades exactamente. Para la Fase 11 (BPE) podríamos fusionar going → go + ing y hacer crecer \(V\) modestamente; revisitaremos el análisis de calibración en ese momento.
Por qué esta fase está entre la Fase 04 y la Fase 06¶
La Fase 04 (cálculo + optimización) nos dio el motor — descenso de gradiente. La Fase 05 nos da el objetivo — lo que el motor optimiza. Sin la Fase 05, la elección de cross_entropy_loss parecería arbitraria. Con la Fase 05, la elección queda forzada: es la única pérdida compatible con MLE sobre una distribución categórica.
La Fase 06 (Python para ingeniería de IA (AI)) es higiene de implementación. Sin la Fase 05, las implementaciones serían plausiblemente erróneas de formas sutiles (olvidarse de log_softmax, permitir \(\log 0\), calcular \(p \log p\) en \(p = 0\)).
El argumento de cinco líneas que vamos a reconstruir¶
Al final de esta fase, Borja reproducirá este argumento desde cero:
- MLE. Dadas observaciones i.i.d. \((x^{(n)}, y^{(n)})\) del condicional verdadero \(p^*(y \mid x)\), el estimador de máxima verosimilitud (likelihood) es \(\theta^{\text{MLE}} = \arg\max_\theta \sum_n \log q_\theta(y^{(n)} \mid x^{(n)})\).
- CE empírica. Esa suma es igual a \(-N \cdot \widehat{H}(p_{\text{emp}}, q_\theta)\) donde \(p_{\text{emp}}\) es la distribución empírica.
- CE poblacional. Cuando \(N \to \infty\), \(\widehat{H}(p_{\text{emp}}, q_\theta) \to \mathbb{E}_x[H(p^*(\cdot \mid x), q_\theta(\cdot \mid x))]\).
- CE = entropía + KL. \(H(p, q) = H(p) + D_{\text{KL}}(p \,\|\, q)\) por álgebra directa.
- Conclusión. Como \(H(p^*)\) no depende de \(\theta\), minimizar CE sobre \(\theta\) ≡ minimizar KL ≡ MLE.
Esta es la justificación completa de cross_entropy_loss. Son cinco líneas y merecen entenderse en profundidad.
Qué viene a continuación¶
01-discrete-distributions.md plantea el formalismo. 02-entropy-and-kl.md introduce incertidumbre y divergencia. 03-cross-entropy-and-mle.md es la pieza central — la cadena de igualdades de arriba. 04-log-sum-exp-and-stability.md cubre la parte numérica.
Lo que este archivo NO cubre¶
- Inferencia bayesiana y posteriores (diferida indefinidamente; no está en el alcance §A13).
- Distribuciones continuas, cambio de variables, normalising flows (fuera de alcance).
- La conexión con la teoría de la codificación y la codificación de fuente de Shannon (interesante, pero opcional — referenciada como nota a pie en §02).
Siguiente: 01-discrete-distributions.md