Inicio · Parte 16
Softmax, embeddings, positional encoding, atención escalada, multi-head, Transformer completo, muestreo, VAE, GAN, difusión, GNN y ecuaciones de Bellman.
Esta parte traduce a matemática los artículos que definen el estado del arte. No hay conceptos nuevos: la atención es un promedio ponderado por productos escalares, el ELBO es la cota de Jensen sobre una log-verosimilitud, la difusión es un proceso estocástico con reverso aprendido y Bellman es una recursión sobre esperanzas. Todo lo necesario está en las quince partes anteriores, y lo que se hace aquí es reconocerlo.
Las clases 321 a 328 construyen el Transformer pieza a pieza. Softmax convierte logits arbitrarios en una distribución categórica, y su invariancia frente a desplazamientos es exactamente lo que permite restar el máximo para evitar el desbordamiento: sin ese truco, exp(1000) es infinito y la implementación falla. Q, K y V son tres proyecciones distintas del mismo token, con papeles distintos: qué busco, qué ofrezco y qué aporto.
El detalle más citado y menos entendido es el 1/√d. Con dimensión 256, los productos escalares de vectores aleatorios tienen desviación proporcional a √d, y la softmax de valores tan dispersos se satura: un peso se lleva casi toda la masa y los gradientes desaparecen. Dividir por √d devuelve las puntuaciones a una escala manejable, y la demostración numérica de la clase 325 lo hace evidente comparando d = 8 con d = 256.
Las clases 329 y 330 tratan la generación. Un modelo autorregresivo factoriza la probabilidad de una secuencia mediante la regla de la cadena de la clase 183, y la máscara causal es lo que impide que un token vea el futuro: olvidarla produce un modelo con métricas excelentes durante el entrenamiento e inútil al generar. Temperatura, top-k y top-p reescriben la distribución antes de muestrear, y conviene tener claro que temperatura alta no significa mayor calidad sino mayor entropía.
Las clases 331 a 335 recorren los modelos generativos. El VAE necesita el truco de reparametrización para que el gradiente atraviese una operación de muestreo, y su objetivo es el ELBO: reconstrucción menos KL, con una brecha respecto de la log-verosimilitud que es exactamente otra KL, siempre no negativa. Las GAN se formulan como un juego minimax cuyo discriminador óptimo tiene forma cerrada y cuyo equilibrio ocurre en D = 0,5. La difusión añade ruido con un horario fijo —y una propiedad muy práctica: se puede saltar a cualquier paso sin simular los anteriores— y aprende a invertir el proceso prediciendo el ruido añadido.
El cierre incorpora dos áreas más. Los grafos, donde el Laplaciano codifica la estructura y la multiplicidad del autovalor cero cuenta las componentes conexas, y donde el paso de mensajes hace crecer el campo receptivo un salto por capa, exactamente igual que las convoluciones de la parte 15. Y el aprendizaje por refuerzo, donde la ecuación de Bellman expresa el valor como recompensa inmediata más valor futuro descontado, y REINFORCE convierte eso en un gradiente sobre la política.
El capstone entrena un mini-Transformer causal completo con 101 parámetros que aprende a copiar el token anterior. Es una tarea trivial y elegida a propósito: permite comprobar que la matriz de atención aprende a mirar exactamente una posición atrás, que es la verificación más directa posible de que el mecanismo funciona como se ha descrito.
| # | Clase | Demostración ejecutable |
|---|---|---|
321 |
Softmax y distribuciones categóricas | softmax_distributions |
322 |
Embeddings y similitud coseno | cosine_similarity |
323 |
Positional encoding | positional_encoding |
324 |
Query, Key y Value | query_key_value |
325 |
Scaled dot-product attention | scaled_dot_product_attention |
326 |
Self-attention | self_attention |
327 |
Multi-head attention | multi_head_attention |
328 |
Transformer completo | transformer_block |
329 |
Modelado autoregresivo | autoregressive_modeling |
330 |
Sampling, temperatura, top-k y top-p | sampling_strategies |
331 |
Variational Autoencoders | variational_autoencoder |
332 |
ELBO y variational inference | elbo |
333 |
GAN y juegos minimax | gan_minimax |
334 |
Diffusion models: forward process | diffusion_forward |
335 |
Diffusion models: reverse process | diffusion_reverse |
336 |
Graph Laplacian | graph_laplacian |
337 |
Message passing en GNN | message_passing |
338 |
Bellman equations | bellman_equations |
339 |
Policy gradients | policy_gradients |
340 |
Capstone: mini-Transformer matemático | capstone_mini_transformer |
compmath run --part 16
| Término | Definición | Clase |
|---|---|---|
| Softmax | Convierte logits reales en una distribución categórica. Es la de máxima entropía dados los logits. | 321 |
| Estabilidad numérica del softmax | Restar el máximo antes de exponenciar. La salida no cambia y se evita el desbordamiento. | 321 |
| Similitud coseno | Producto escalar normalizado. Mide dirección e ignora magnitud. | 322 |
| Positional encoding | Información de posición añadida al embedding. La versión sinusoidal no tiene parámetros. | 323 |
| Query, Key, Value | Tres proyecciones del mismo token: qué busco, qué ofrezco y qué aporto. | 324 |
| Atención escalada | softmax(QKᵀ/√d)·V. La escala evita que la softmax se sature en alta dimensión. | 325 |
| Factor 1/√d | Corrige que la varianza del producto escalar crece con la dimensión. | 325 |
| Self-attention | Atención donde consultas, claves y valores vienen de la misma secuencia. | 326 |
| Máscara causal | Impide que un token atienda a posiciones futuras. Imprescindible en generación. | 326 |
| Multi-head attention | Varias atenciones en subespacios distintos, concatenadas y proyectadas. | 327 |
| Conexión residual | Sumar la entrada a la salida del bloque. Crea un camino directo para el gradiente. | 328 |
| Feed-forward por posición | MLP aplicado independientemente a cada token, típicamente con expansión ×4. | 328 |
| Modelado autorregresivo | Factorizar la probabilidad de una secuencia como producto de condicionales. | 329 |
| Perplejidad | Exponencial de la entropía cruzada. Número efectivo de opciones equiprobables. | 329 |
| Temperatura | Divide los logits antes del softmax. Menor concentra la distribución, mayor la aplana. | 330 |
| Top-k y top-p | Truncar el vocabulario a los k mejores o a la masa acumulada p antes de muestrear. | 330 |
| Autoencoder variacional | Codificador que produce una distribución latente y decodificador que reconstruye. | 331 |
| Truco de reparametrización | z = μ + σ·ε con ε fijo, para que el gradiente atraviese el muestreo. | 331 |
| ELBO | Cota inferior de la log-verosimilitud: reconstrucción menos KL al prior. | 332 |
| Brecha del ELBO | KL entre la posterior aproximada y la verdadera. Siempre no negativa. | 332 |
| Juego minimax | Dos jugadores con objetivos opuestos. Base del entrenamiento de las GAN. | 333 |
| Discriminador óptimo | D*(x) = p_datos/(p_datos + p_G). En el equilibrio vale 0,5 en todas partes. | 333 |
| Proceso directo de difusión | Añadir ruido gaussiano según un horario fijo hasta destruir la señal. | 334 |
| Horario de ruido | Secuencia de β que determina cuánto ruido se añade en cada paso. | 334 |
| Proceso inverso | Red que predice el ruido añadido y permite reconstruir el dato original. | 335 |
| Laplaciano del grafo | L = D − A. Sus autovalores describen la conectividad de la estructura. | 336 |
| Multiplicidad del autovalor cero | Número de componentes conexas del grafo. | 336 |
| Paso de mensajes | Cada nodo agrega información de sus vecinos. Una capa equivale a un salto. | 337 |
| Sobresuavizado | Con muchas capas, todos los nodos convergen a representaciones indistinguibles. | 337 |
| Ecuación de Bellman | V(s) = max_a [R + γ·V(s')]. Valor como recompensa inmediata más futuro descontado. | 338 |
| Factor de descuento | γ entre 0 y 1. Pondera cuánto valen las recompensas futuras. | 338 |
| REINFORCE | Gradiente de política que sube la probabilidad de acciones con recompensa alta. | 339 |
| Línea base | Valor restado a la recompensa para reducir la varianza sin sesgar el gradiente. | 339 |