Inicio · Parte 13 — Teoría de la información, señales y series
KL(p‖q) = Σ p·log(p/q) ≥ 0
KL(p‖q) = 0 ⟺ p = q
KL(p‖q) ≠ KL(q‖p); no cumple la desigualdad triangular
La divergencia de Kullback-Leibler mide cuánta información se pierde al usar q en lugar de p. Es el exceso de entropía cruzada sobre la entropía: los bits desperdiciados por usar el código equivocado. Es no negativa y vale cero solo si las distribuciones coinciden.
Pese a llamarse divergencia y comportarse en parte como una distancia, no lo es. Le fallan dos propiedades: no es simétrica y no cumple la desigualdad triangular. Escribir «la distancia KL» es un error de vocabulario que arrastra errores de razonamiento.
La asimetría no es un defecto: es información. KL(p‖q) penaliza mucho que q asigne casi cero donde p tiene masa, así que fuerza a q a cubrir todo el soporte de p. Al revés, KL(q‖p) penaliza que q ponga masa donde p no la tiene, y produce soluciones que se concentran en un modo. Se conocen como comportamiento de cobertura y de búsqueda de modo.
Esa diferencia tiene consecuencias visibles. La inferencia variacional minimiza KL(q‖p) y por eso los VAE tienden a producir muestras borrosas concentradas en el modo dominante. Elegir la dirección de la KL no es un detalle técnico: determina el comportamiento cualitativo del modelo resultante.
Las dos direcciones sobre las mismas distribuciones.
p = [0,5 ; 0,3 ; 0,2]
q = [0,3 ; 0,4 ; 0,3]
KL(p‖q) = 0,08801517
KL(q‖p) = 0,08346467
No coinciden → no es simétrica ✓
KL(p‖p) = 0,0 ✓
Asimetría extrema: si q asignara 0,001 donde p tiene 0,5,
KL(p‖q) se dispara (castiga no cubrir)
KL(q‖p) apenas cambia (no le importa)
Por eso KL(p‖q) fuerza cobertura y KL(q‖p) busca modo.
KL: no simétrica y no es una distancia.
python classes/part-13-teoria-de-la-informacion-senales-y-series/264-divergencia-kl/lab.py
compmath run 264
pqKL(p||q)KL(q||p)simetricaKL(p||p)siempre_no_negativano_cumple_desigualdad_triangularKL_infinita_si_q=0_donde_p>0{
"p": [
0.5,
0.3,
0.2
],
"q": [
0.3,
0.4,
0.3
],
"KL(p||q)": 0.08801517,
"KL(q||p)": 0.08346467,
"simetrica": false,
"KL(p||p)": 0.0
}
Regularización de VAE, inferencia variacional, destilación de conocimiento, detección de desplazamiento de distribución y PPO en aprendizaje por refuerzo.
La función de pérdida de casi todo clasificador es entropía cruzada; el VAE optimiza un ELBO con un término KL; las CNN son convoluciones aprendidas.
10.1214/aoms/1177729694 verificado en Crossref (2026-08-19).