Variational Autoencoders
Antes de empezar con los autoencoders variacionales vamos a hacer un pequeño repaso sobre autoencoders.
Autoencoders
Los autoencoders son una familia de redes neuronales que tienen como objetivo aprender una representación útil de los datos de entrada.
Su funcionamiento se basa en comprimir y reconstruir datos. Generalmente, constan de dos redes:
- Un encoder que representa los datos de entrada en un espacio latente, . Este espacio suele tener menor dimensión, aunque también existen autoencoders sobrecompletos regularizados.
- Un decoder que, a partir del espacio latente, reconstruye los datos, .
Los parámetros de cada red se optimizan a la vez para que las reconstrucciones sean lo más parecidas a los datos originales, .

La idea se originó en la década de 1980 y fue retomada, entre otros trabajos, por Hinton y Salakhutdinov[hinton2006reducing] en 2006. Hoy tiene aplicaciones directas en tareas como detección de anomalías, manifold learning, compresión o generación de datos.
La función de pérdida de un autoencoder convencional mide qué tan bien el modelo puede reconstruir la entrada original una vez comprimidos los datos al espacio latente. Por tanto, el objetivo es que la salida sea lo más parecida posible a la entrada . La elección de la función de error depende principalmente de la naturaleza de los datos de entrada.
-
Mean Squared Error (MSE)
Es la función de pérdida más utilizada para datos continuos (por ejemplo, imágenes o series temporales).
El objetivo es minimizar la diferencia al cuadrado entre la entrada original y la salida reconstruida :
-
Binary Cross Entropy
Se utiliza cuando los datos de entrada están normalizados en el rango [0, 1] y se interpretan como probabilidades o cuando los datos son binarios. Es muy común en autoencoders donde la capa de salida tiene una función de activación sigmoide.
Existen muchas variantes de autoencoders como Denoising Autoencoders[vincent2008extracting], Sparse Autoencoders[makhzani2013k] o Contractive Autoencoders[rifai2011contractive]. De aquí en adelante nos centraremos en los Variational AutoEncoders (VAE)[kingma2013auto] por sus propiedades generativas.
VAE
Los autoencoders deterministas no imponen por sí solos una distribución conocida sobre sus códigos. Pueden dejar regiones del espacio latente sin datos y, si muestreamos arbitrariamente una de ellas, el decoder puede producir una salida poco realista.
Un VAE representa cada entrada mediante una distribución aproximada y regulariza esas distribuciones con respecto a un prior conocido .
La combinación de una posterior continua y la regularización hacia el prior favorece un espacio latente que podemos muestrear: primero tomamos y después generamos . Mapear a una distribución, por sí solo, no garantizaría esta propiedad.
Esto es precisamente un modelo generativo de variables latentes.

La relación entre los datos de entrada y el vector latente viene dada por:
- Prior:
- Likelihood:
- Posterior:
La distribución de los datos entonces se puede modelar como:
En general no es fácil calcular porque la integral sobre un espacio latente continuo y de alta dimensión es intratable. Los VAE recurren a la inferencia variacional para aproximar la posterior y construir un objetivo optimizable.
La distribución compleja que queremos aproximar es . Elegimos una familia tractable y aprendemos sus parámetros globales , que son los pesos del encoder. En el caso habitual de una gaussiana diagonal, el encoder produce para cada entrada una media y una desviación .
De esta manera, se introduce:
- Un encoder que aproxima la posterior .
- Un decoder que modela la probabilidad de los datos condicionada al código latente.
Para poder retropropagar a través del muestreo se utiliza el truco de reparametrización:
La aleatoriedad queda en , mientras que y siguen siendo funciones diferenciables de los pesos del encoder.

Función de error: ELBO
La distribución estimada por el encoder, , debe aproximar la posterior real . Para comparar distribuciones usamos la divergencia de Kullback–Leibler, , que mide el coste esperado adicional de representar muestras de mediante .
En este caso queremos minimizar con respecto a .
Usando el teorema de Bayes, se puede reescribir como:
- El primer término es el log-likelihood de los datos, que queremos maximizar.
- El segundo término es el log-likelihood esperado de los datos bajo la posterior aproximada (encoder).
- El tercer término es la divergencia KL entre la posterior aproximada y el prior.
Combinando estos términos, se puede definir la función de pérdida de un VAE como:
conocida como Evidence Lower Bound (ELBO). La ELBO se maximiza; cuando hablamos de función de pérdida minimizamos su negativo, .
- El primer término es la reconstrucción de que tiende a hacer el esquema de codificación-decodificación lo más eficiente posible maximizando el log-likelihood con muestreo de (encoder).
- El segundo término regulariza las variables latentes minimizando la divergencia KL entre la posterior aproximada y el prior. Normalmente elegimos y una gaussiana diagonal cuyos parámetros dependen de cada entrada.
Aplicaciones
Las aplicaciones de los VAE incluyen el modelado de texto[yang2017improved], la detección de anomalías, la estimación de la vida útil de sistemas industriales[costa2022variational], la clasificación de arritmias[costa2021semi] o el diseño molecular[de2023population].
Posterior collapse
Los VAE son susceptibles al posterior collapse: el encoder aprende para todas las entradas, el término KL se aproxima a cero y deja de contener información útil sobre . Esto ocurre especialmente cuando el decoder es suficientemente expresivo para modelar los datos sin utilizar la variable latente.
No significa que todas las entradas se conviertan necesariamente en un único punto. Significa que sus distribuciones posteriores se vuelven indistinguibles del prior y, por tanto, el decoder puede ignorar . La calidad visible de las muestras dependerá de la capacidad del decoder: pueden seguir siendo plausibles aunque el espacio latente no se utilice.
Trucos de entrenamiento
Hay varias aproximaciones para solventar este problema, entre ellas:
- KL Divergence Annealing: incrementa gradualmente el peso del término de divergencia KL en la función de pérdida durante el entrenamiento para permitir que el modelo aprenda primero a reconstruir los datos antes de imponer una regularización fuerte en el espacio latente.
- Free Bits: establece un umbral mínimo para la divergencia KL en cada dimensión de la variable latente, asegurando que cada dimensión contribuya con al menos un "mínimo de información" y evitando que colapsen a valores triviales.
- Minimum Desired Rate: similar a Free Bits, pero aplica una penalización para mantener un mínimo de información en el espacio latente, forzando que la compresión no pierda relevancia.
- Limitar la capacidad del decoder o añadir conexiones desde : reduce la posibilidad de que el decoder explique los datos sin recurrir a la variable latente.
Variantes del VAE
Los VAE entrenados con una pérdida de reconstrucción píxel a píxel tienden a producir imágenes borrosas. ¿De dónde procede este efecto?

Cuando el likelihood de píxeles se modela como una gaussiana con varianza fija, maximizarlo equivale aproximadamente a minimizar un error cuadrático. Si una entrada admite varias reconstrucciones plausibles, ese objetivo favorece la media condicional de esas alternativas, que puede verse borrosa. No se trata de promediar las reconstrucciones de todo el dataset, sino de una consecuencia del modelo de observación y de la incertidumbre multimodal.
β-VAE
Una familia de objetivos introduce un peso sobre la regularización:
El β-VAE original[higgins2017beta] utiliza habitualmente para favorecer representaciones más disentangled a costa de fidelidad de reconstrucción. El objetivo general también permite explorar otros valores.
Si recuperamos la ELBO estándar. Con se penaliza menos la información latente y puede mejorar la reconstrucción, aunque la posterior agregada puede alejarse del prior. Con aumenta la presión de regularización y compresión.
Con se puede reducir en parte las generaciones borrosas. En contrapartida, una ventaja de utilizar es que fomenta el aprendizaje de una representación latente "desenredada". Intuitivamente, esto significa que cada dimensión latente representa un factor/característica diferente de los datos de entrada. Por ejemplo, un modelo entrenado con fotos de rostros humanos podría captar la suavidad, el color de la piel, el color o la longitud del pelo, la emoción, si se llevan gafas y muchos otros factores relativamente independientes en dimensiones separadas.
En resumen: el diseño de un VAE es casi siempre un juego de equilibrio entre "quiero que la reconstrucción se vea bien" y "quiero que el espacio latente tenga sentido".
InfoVAE
El InfoVAE[zhao2017infovae] separa el control de la información mutua de la coincidencia entre la posterior agregada y el prior. Una forma de su objetivo es:
Aquí puede ser KL, MMD u otra divergencia adecuada. Los hiperparámetros y controlan la información conservada sobre y cuánto se aproxima la posterior agregada al prior; determinados valores recuperan el VAE estándar.
Multimodal VAEs
Los VAE multimodales[wu2018multimodal], [shi2019variational] son una extensión del modelo VAE estándar para manejar y aprender representaciones conjuntas de datos provenientes de diferentes modalidades. Estas modalidades pueden incluir texto, imágenes, audio, vídeo, etc. La idea principal es capturar las dependencias y correlaciones entre diferentes tipos de datos, aprendiendo una representación latente compartida que pueda ser utilizada para tareas como la generación o imputación de datos.
Hasta ahora se han propuesto varios enfoques para el aprendizaje multimodal de VAEs; en esta review se recopilan algunos de los trabajos más influyentes.
Hierarchical VAEs
En el VAE básico se utiliza una sola variable latente con un prior sencillo, normalmente una gaussiana estándar. Una jerarquía introduce variables a distintas escalas y priors condicionales, lo que aumenta la expresividad tanto del modelo de inferencia (encoder) como del modelo generativo (decoder) y puede mejorar la log-verosimilitud:

La distribución que se quiere modelar entonces es:
Por tanto, el ELBO se expresaría de la siguiente forma:
Se han publicado muchos modelos jerárquicos, entre los que destacan VD-VAE (Very Deep VAE)[child2020very] para generación de imágenes o Bit-Swap[kingma2019bit] para compresión de datos.
VD-VAE muestra hasta dónde puede llegar una jerarquía muy profunda construida con bloques convolucionales y distribuciones gaussianas diagonales. Utiliza nearest-neighbor upsampling seguido de convoluciones, parametrizaciones residuales y otras decisiones de estabilidad para entrenar directamente con la ELBO. El remuestreo evita artefactos asociados a ciertas convoluciones transpuestas, pero no debe interpretarse por sí solo como una solución general al posterior collapse.
Extra: Compresión
En Bit-swap se presenta un VAE jerárquico con el que se demuestra que el esquema de compresión bits-back (BB-ANS) se puede usar con modelos de variables latentes. Es decir, este tipo de modelos generativos se pueden utilizar como esquemas de compresión eficientes. Vamos a verlo, pero primero: un poco de teoría de la información.
Complejidad de Kolmogórov
En teoría de la información, la complejidad de Kolmogórov de un objeto , denotada como , se refiere a la longitud de la descripción más corta posible de dicho objeto en un 'ordenador universal'. Representa la complejidad inherente de una pieza de información en función de la longitud del programa binario más conciso capaz de generarla.
Un programa binario más corto implica un mayor nivel de regularidad o predictibilidad en los datos.
Un programa binario más largo sugiere una estructura más compleja y menos compresible.
De manera similar, la complejidad de Kolmogórov de dado , , corresponde a la longitud del programa binario que, recibiendo como entrada, produce . A partir de esta idea, Bennett et al. [bennett1998information] derivaron la métrica de distancia de información, :
Esta métrica evalúa esencialmente la existencia de un programa sencillo capaz de transformar un objeto en otro y, por tanto, proporciona una medida de la relación o de la cantidad de información compartida entre ellos. Cuanto más simple sea el programa de conversión, más similares se consideran los objetos. Sin embargo, la complejidad de Kolmogórov no es computable teóricamente sino que solo puede aproximarse.
Compresión
Las técnicas de compresión aproximan la complejidad de Kolmogórov, ya que ofrecen un medio práctico para representar los datos de manera más concisa sin perder información esencial. El objetivo principal de un compresor sin pérdida (lossless compressor) es minimizar el número de bits necesarios para representar los datos, permitiendo posteriormente su descompresión exacta.
Los métodos de compresión logran este objetivo identificando y explotando redundancias o patrones presentes en los datos. Para alcanzar la menor longitud de compresión posible, los símbolos con mayor probabilidad reciben códigos más cortos. De acuerdo con el Teorema de Codificación de Fuentes de Shannon [shannon1948mathematical], la longitud de los bits codificados está directamente relacionada con la entropía de la fuente de información:
Lo que buscan los algoritmos de compresión es modelar eficazmente la distribución “real” de los datos :
-
Una estrategia habitual consiste en los métodos basados en diccionarios, donde se identifican patrones o secuencias de datos y se reemplazan por códigos más cortos. Entre ellos se encuentran los algoritmos de Lempel-Ziv, que construyen dinámicamente un diccionario durante la compresión [kosaraju2000compression].
-
Los modelos basados en contexto, como la codificación aritmética adaptativa, ajustan las probabilidades de codificación en función del contexto de los símbolos previamente codificados [moffat1998arithmetic].
-
Los métodos de codificación entrópica, como Huffman, asignan códigos prefijo más cortos a los símbolos más probables [moffat2019huffman].
Los avances recientes han incorporado técnicas de Machine Learning a los algoritmos de compresión. ¿Qué modelos podemos utilizar para aproximar la distribución real de los datos?
Exacto, los VAEs!!
Modelos generativos como compresores
En un pipeline habitual de compresión, los datos se representan mediante una secuencia de símbolos y se codifican en un conjunto de bits . Posteriormente, se aplica el proceso inverso para recuperar los datos originales.
-
Compresión:
-
Descompresión:
Los métodos de compresión sin pérdida buscan minimizar el número de bits sin sacrificar información. Para un símbolo de probabilidad , la longitud ideal es bits; la longitud media óptima está acotada por la entropía de Shannon.
Cuanto mejor sea la compresión, mejor será la aproximación de . En un contexto probabilístico, puede expresarse como la probabilidad de observar los datos bajo un modelo determinado:
donde es la probabilidad de observar los datos dado un conjunto específico de parámetros, es la distribución a priori y representa los parámetros del modelo.
En el contexto de un modelado generativo, esta expresión suele formularse en términos de la variable latente :
Te suena, no?
Utilizando esta notación, el proceso de envío de información en un esquema de compresión () se desarrolla de la siguiente manera:
- La variable latente se codifica utilizando .
- La muestra se codifica utilizando .
- Se transmiten tanto como .
Por otra parte, la recepción de la información () sigue estos pasos:
- se decodifica utilizando .
- se decodifica utilizando .
El número de bits involucrados corresponde inicialmente a . El método bits-back permite recuperar aproximadamente bits usados para seleccionar [frey1997efficient]. Esta idea conecta la inferencia variacional con la compresión probabilística.
El proceso de compresión descrito anteriormente puede interpretarse según el esquema BB-ANS [townsend2019practical]. Algunos bits adicionales se utilizan para generar una muestra mediante el encoder ; posteriormente, se emplea para codificar a través de , mientras que la propia variable se codifica usando la distribución a priori . El proceso inverso permite recuperar mediante , reconstruir mediante y recuperar los bits adicionales iniciales utilizando .

La longitud final del flujo de bits para un único dato viene dada por:
Los términos y se transmiten, mientras que bits se recuperan mediante bits-back. En esperanza, el coste neto coincide con la negative Evidence Lower Bound (negative ELBO):
La división por convierte nats en bits. Este coste corresponde a la función de pérdida que minimizamos en un VAE.
-
El primer término corresponde a la reconstrucción de y favorece un esquema de codificación y decodificación eficiente maximizando con muestras de .
-
El segundo término es la regularización del espacio latente mediante la minimización de la divergencia KL entre la aproximación variacional y la distribución a priori .
En consecuencia, minimizar la negative ELBO maximiza un límite inferior de y aproxima a la posterior del modelo .
Esta equivalencia demuestra que un modelo de variables latentes correctamente optimizado, como un VAE, es directamente aplicable a tareas de compresión, ya que minimiza la longitud de código alcanzable en el contexto de la codificación bits-back.
Jiang et al., en NPC (Non-Parametric learning by Compression)[jiang2022few], propusieron un método basado en esta premisa para clasificación de imágenes, superando a métodos supervisados y semisupervisados.
De igual forma, en Few-shot generative compression approach for system health monitoring [costa2025few] propuse un método basado en compresión y VAEs para diagnosticar casos donde los datos de monitorización son abundantes, pero hay muy pocas instancias etiquetadas.