Un autoencodeur variationnel (VAE) est une architecture de réseau neuronal artificiel introduite par Diederik P. Kingma et Max Welling en 2013. Il appartient aux familles des modèles graphiques probabilistes et des méthodes bayésiennes variationnelles. Le VAE combine un réseau encodeur et un réseau décodeur, reliés par un espace latent probabiliste qui suit généralement une distribution gaussienne multivariée. L'encodeur mappe chaque point de données d'entrée, comme une image, vers une distribution dans l'espace latent plutôt que vers un point unique, tandis que le décodeur mappe de l'espace latent vers l'espace d'entrée. Cette cartographie probabiliste aide à éviter le surapprentissage des données d'entraînement. Le modèle est entraîné à l'aide de l'astuce de reparamétrisation, et il a été initialement conçu pour l'apprentissage non supervisé, bien qu'il se soit également révélé efficace pour des tâches d'apprentissage semi-supervisé et supervisé.
Le VAE est un modèle génératif qui apprend la distribution de probabilité sous-jacente d'un ensemble de données. Il optimise une borne inférieure sur la vraisemblance des données, connue sous le nom de borne inférieure de la preuve (ELBO), qui est calculable de manière tractable. L'encodeur sert de réseau d'inférence amortie, optimisant conjointement les postérieurs variationnels sur tous les points de données, ce qui entraîne des économies de mémoire significatives par rapport à une optimisation par point de données. Le décodeur génère des données à partir de variables latentes, et les deux réseaux sont entraînés ensemble pour minimiser une fonction de perte composée d'un terme de reconstruction et d'un terme de divergence de Kullback-Leibler (KL).
Architecture et fonctionnement
L'architecture du VAE se compose de deux composants principaux : un encodeur et un décodeur. L'encodeur est un réseau neuronal qui prend des points de données d'entrée et produit des paramètres pour une distribution variationnelle, généralement la moyenne et la variance d'une gaussienne. Il mappe de l'espace d'entrée vers un espace latent de faible dimension. Le décodeur est un second réseau neuronal qui mappe de l'espace latent vers l'espace d'entrée, produisant souvent les moyennes de la distribution de bruit. Dans certaines implémentations, le décodeur produit également des paramètres de variance, mais cela peut être omis pour simplifier, la variance étant optimisée par descente de gradient.
L'objectif d'entraînement implique deux termes dérivés de l'expression de l'énergie libre du modèle probabiliste : l'erreur de reconstruction et la divergence KL. Le terme de reconstruction mesure à quel point le décodeur reconstruit l'entrée à partir des variables latentes, nécessitant une approximation par échantillonnage pour calculer son espérance. Le terme de divergence KL mesure la différence entre le postérieur variationnel et la distribution a priori sur les variables latentes, maximisant le chevauchement de la masse de probabilité. Le choix de la distribution de bruit dépend du type de données ; par exemple, le bruit gaussien est typique pour des données continues comme les images, tandis que le bruit de Bernoulli est utilisé pour des données binaires comme les chiffres MNIST binarisés.
Formulation
D'un point de vue de modélisation probabiliste, l'objectif est de maximiser la vraisemblance des données \(x\) sous une distribution paramétrée \(p_\theta(x) = p(x|\theta)\), souvent choisie comme une gaussienne. Cependant, lorsqu'un a priori est supposé sur les variables latentes \(z\), la vraisemblance marginale \(p_\theta(x) = \int_z p_\theta(x,z) dz\) devient intraitable. Pour résoudre cela, le VAE introduit un postérieur variationnel \(q_\phi(z|x)\), paramétré par l'encodeur, et optimise l'ELBO :
\[\log p_\theta(x) \geq \mathbb{E}_{q_\phi(z|x)}[\log p_\theta(x|z)] - D_{KL}(q_\phi(z|x) \| p_\theta(z))\]
Le premier terme est la vraisemblance de reconstruction, et le second terme est la divergence KL entre le postérieur variationnel et l'a priori. L'astuce de reparamétrisation permet aux gradients de circuler à travers le processus d'échantillonnage en exprimant \(z\) comme une fonction déterministe des sorties de l'encodeur et d'une variable de bruit aléatoire, permettant une rétropropagation standard.
Entraînement et optimisation
L'entraînement d'un VAE implique de minimiser l'ELBO négatif à l'aide de la descente de gradient stochastique. Le terme de reconstruction est généralement approximé par échantillonnage de Monte Carlo, tandis que la divergence KL peut souvent être calculée analytiquement lorsque l'a priori et le postérieur sont tous deux gaussiens. L'astuce de reparamétrisation est cruciale pour l'entraînement, car elle sépare la partie stochastique de la partie déterministe de l'échantillonnage des variables latentes. La variance du modèle de bruit peut être apprise séparément ou fixée.
Des approches récentes ont exploré le remplacement de la divergence KL par d'autres distances statistiques, comme la distance de Wasserstein, pour traiter des problèmes tels que l'effondrement modal et améliorer la qualité des échantillons générés. Ces variantes sont souvent appelées variantes VAE à distance statistique.
Applications
Les autoencodeurs variationnels ont été largement utilisés pour des tâches génératives, notamment la génération d'images, la détection d'anomalies et l'apprentissage de représentations. Ils sont particulièrement efficaces pour l'apprentissage non supervisé, où ils apprennent des représentations latentes compactes des données. Les VAE ont également été appliqués à l'apprentissage semi-supervisé, où ils exploitent des données non étiquetées pour améliorer les performances sur des tâches étiquetées, et à l'apprentissage supervisé dans certains contextes. L'architecture a inspiré de nombreuses extensions, telles que les VAE conditionnels, qui intègrent des étiquettes de classe dans le processus de génération, et les VAE hiérarchiques, qui utilisent plusieurs couches de variables latentes.
Variantes et extensions
Plusieurs variantes du VAE ont été développées pour améliorer ses performances et remédier à ses limites. Le beta-VAE introduit un facteur de pondération \(\beta\) sur le terme de divergence KL pour encourager des représentations plus désentrelacées. Le VQ-VAE (VAE à quantification vectorielle) utilise des variables latentes discrètes, utiles pour des tâches comme la génération de texte et d'audio. D'autres extensions incluent le CVAE (VAE conditionnel), qui conditionne la génération sur des informations auxiliaires, et le VAE-GAN, qui combine un VAE avec un réseau antagoniste génératif pour produire des images plus nettes. Ces variantes ont élargi l'applicabilité des VAE dans différents domaines.
Relation avec d'autres modèles
Le VAE est étroitement lié à d'autres modèles génératifs, tels que les réseaux antagonistes génératifs (GAN) et les flux normalisants. Alors que les GAN se concentrent sur la génération d'échantillons réalistes sans vraisemblance explicite, les VAE fournissent un cadre probabiliste fondé avec un objectif tractable. Les flux normalisants offrent un calcul exact de la vraisemblance mais sont souvent plus coûteux en calcul. La structure encodeur-décodeur du VAE partage également des similitudes avec les autoencodeurs traditionnels, mais l'espace latent probabiliste et la régularisation le distinguent des autoencodeurs déterministes.
Limites et orientations futures
Malgré leur succès, les VAE présentent des limites, notamment la tendance à produire des échantillons flous par rapport aux GAN, en raison de l'hypothèse de bruit gaussien et de l'objectif de reconstruction. La divergence KL peut également conduire à un effondrement du postérieur, où les variables latentes deviennent non informatives. La recherche en cours vise à résoudre ces problèmes grâce à de meilleurs a priori, des postérieurs plus expressifs et des mesures de divergence alternatives. Le VAE reste un modèle fondamental dans apprentissage profond et IA générative, avec une pertinence continue dans la recherche académique et les applications pratiques.