Un autoencodeur variationnel (VAE) est une architecture de réseau de neurones artificiels introduite par Diederik P. Kingma et Max Welling en 2013. Il fait partie des familles des modèles graphiques probabilistes et des méthodes bayésiennes variationnelles. En plus d'être considéré comme une architecture de réseau de neurones autoencodeur, les autoencodeurs variationnels peuvent également être étudiés dans le cadre de la formulation mathématique des méthodes bayésiennes variationnelles, reliant un réseau encodeur neuronal à son décodeur via un espace latent probabiliste (par exemple, comme une distribution gaussienne multivariée) qui correspond aux paramètres d'une distribution variationnelle.
L'encodeur mappe chaque point (comme une image) d'un grand ensemble de données complexe vers une distribution dans l'espace latent, plutôt que vers un point unique dans cet espace. Le décodeur a la fonction opposée, qui est de mapper de l'espace latent vers l'espace d'entrée, encore une fois selon une distribution (bien qu'en pratique, le bruit soit rarement ajouté pendant l'étape de décodage). En mappant un point vers une distribution plutôt que vers un point unique, le réseau peut éviter le surapprentissage des données d'entraînement. Les deux réseaux sont généralement entraînés ensemble avec l'utilisation de l'astuce de reparamétrisation, bien que la variance du modèle de bruit puisse être apprise séparément. Bien que ce type de modèle ait été initialement conçu pour l'apprentissage non supervisé, son efficacité a été prouvée pour l'apprentissage semi-supervisé et l'apprentissage supervisé.
Aperçu de l'architecture et du fonctionnement
Un autoencodeur variationnel est un modèle génératif avec une distribution a priori et une distribution de bruit respectivement. Habituellement, ces modèles sont entraînés en utilisant le méta-algorithme d'espérance-maximisation (par exemple, l'ACP probabiliste, le codage parcimonieux). Un tel schéma optimise une borne inférieure de la vraisemblance des données, qui est généralement computationnellement intraitable, et ce faisant, nécessite la découverte de distributions q, ou postérieurs variationnels. Ces distributions q sont normalement paramétrées pour chaque point de données individuel dans un processus d'optimisation séparé. Cependant, les autoencodeurs variationnels utilisent un réseau de neurones comme approche amortie pour optimiser conjointement à travers les points de données. De cette manière, les mêmes paramètres sont réutilisés pour plusieurs points de données, ce qui peut entraîner des économies de mémoire massives. Le premier réseau de neurones prend en entrée les points de données eux-mêmes et produit des paramètres pour la distribution variationnelle. Comme il mappe d'un espace d'entrée connu vers l'espace latent de faible dimension, il est appelé l'encodeur.
Le décodeur est le deuxième réseau de neurones de ce modèle. C'est une fonction qui mappe de l'espace latent vers l'espace d'entrée, par exemple, comme les moyennes de la distribution de bruit. Il est possible d'utiliser un autre réseau de neurones qui mappe vers la variance, mais cela peut être omis pour simplifier. Dans un tel cas, la variance peut être optimisée avec la descente de gradient.
Pour optimiser ce modèle, il faut connaître deux termes : l'« erreur de reconstruction » et la divergence de Kullback-Leibler (KL-D). Les deux termes sont dérivés de l'expression d'énergie libre du modèle probabiliste, et diffèrent donc selon la distribution de bruit et l'a priori supposé des données, ici appelé distribution p. Par exemple, une tâche VAE standard comme IMAGENET est généralement supposée avoir un bruit distribué gaussiennement ; cependant, des tâches comme MNIST binarisé nécessitent un bruit de Bernoulli. La KL-D de l'expression d'énergie libre maximise la masse de probabilité de la distribution q qui chevauche la distribution p, ce qui peut malheureusement entraîner un comportement de recherche de mode. Le terme de « reconstruction » est le reste de l'expression d'énergie libre et nécessite une approximation par échantillonnage pour calculer sa valeur attendue.
Des approches plus récentes remplacent la divergence de Kullback-Leibler (KL-D) par diverses distances statistiques, voir « Variantes VAE à distance statistique » ci-dessous.
Formulation
Du point de vue de la modélisation probabiliste, on veut maximiser la vraisemblance des données \(x\) par leur distribution de probabilité paramétrée choisie \(p_\theta(x)=p(x|\theta)\). Cette distribution est généralement choisie comme une gaussienne \(N(x|\mu,\sigma)\) qui est paramétrée par \(\mu\) et \(\sigma\) respectivement, et en tant que membre de la famille exponentielle, elle est facile à manipuler comme distribution de bruit. Les distributions simples sont assez faciles à maximiser, mais les distributions où un a priori est supposé sur les latents \(z\) entraînent des intégrales intraitales. Trouvons \(p_\theta(x)\) en marginalisant sur \(z\).
\(p_\theta(x) = \int_z p_\theta({x,z}) \, dz,\)
où \(p_\theta({x,z})\) représente la distribution conjointe sous \(p_\theta\) des données observables \(x\) et de leur représentation latente ou encodage \(z\). Selon la règle de chaîne, l'équation peut être réécrite comme
\(p_\theta(x) = \int_z p_\theta({x|z}) p_\theta(z) \, dz.\)
En pratique, l'intégrale sur \(z\) est intraitable car l'espace latent est de haute dimension et le postérieur vrai \(p_\theta(z|x)\) est inconnu. Le VAE introduit un réseau encodeur \(q_\phi(z|x)\) pour approximer le postérieur vrai, et un réseau décodeur \(p_\theta(x|z)\) pour reconstruire les données. L'objectif d'entraînement est la borne inférieure de l'évidence (ELBO), qui est la somme du terme de reconstruction et du terme de divergence KL. L'astuce de reparamétrisation permet la rétropropagation à travers le processus d'échantillonnage en exprimant \(z\) comme \(z = \mu + \sigma \odot \epsilon\), où \(\epsilon\) est échantillonné à partir d'une distribution normale standard.
Entraînement et optimisation
Le VAE est entraîné en maximisant l'ELBO par rapport aux paramètres \(\theta\) et \(\phi\). Le terme de reconstruction encourage le décodeur à reconstruire avec précision les données d'entrée, tandis que le terme de divergence KL régularise l'espace latent pour qu'il soit proche de l'a priori (typiquement une distribution normale standard). Cet équilibre aide à prévenir le surapprentissage et permet la génération de nouveaux points de données en échantillonnant à partir de l'a priori et en décodant.
L'astuce de reparamétrisation est cruciale pour un entraînement efficace utilisant la descente de gradient stochastique. En déplaçant la stochasticité vers la variable de bruit \(\epsilon\), les gradients peuvent circuler à travers les parties déterministes du réseau. La variance du modèle de bruit peut être apprise séparément, et l'erreur de reconstruction est souvent calculée en utilisant l'erreur quadratique moyenne pour les données continues ou l'entropie croisée binaire pour les données binaires.
Applications et impact
Le VAE est devenu un modèle fondateur dans Generative AI, permettant des tâches telles que la génération d'images, la détection d'anomalies et l'apprentissage de représentations. Il a été étendu à divers domaines, y compris Deep learning et Machine learning, et a influencé le développement d'autres modèles génératifs comme les Large language models, bien que ceux-ci utilisent généralement des architectures différentes. Les VAE sont également utilisés dans des contextes d'apprentissage semi-supervisé et supervisé, démontrant leur polyvalence au-delà de l'apprentissage non supervisé.
L'article original de Kingma et Welling a été très influent, et le cadre VAE a été adapté de nombreuses manières, comme l'utilisation de différentes distances statistiques au lieu de la divergence KL pour traiter l'effondrement de mode. La capacité du modèle à apprendre des espaces latents lisses l'a rendu utile pour l'interpolation et la manipulation d'attributs de données.
Variantes et extensions
Plusieurs variantes de VAE ont été proposées pour améliorer leurs performances. Par exemple, le beta-VAE introduit un facteur de pondération sur le terme de divergence KL pour encourager des représentations plus désenchevêtrées. D'autres variantes utilisent différents a priori, comme des modèles de mélange gaussien, ou emploient un entraînement adversarial pour améliorer le réalisme des échantillons générés. L'astuce de reparamétrisation a également été généralisée à d'autres distributions, comme les variables catégorielles, en utilisant l'approximation Gumbel-softmax.
Dans le contexte de Artificial intelligence, les VAE sont souvent comparés aux réseaux antagonistes génératifs (GAN), qui sont une autre classe de modèles génératifs. Alors que les GAN peuvent produire des images plus nettes, les VAE ont tendance à être plus stables à entraîner et fournissent un cadre probabiliste utile pour l'estimation de l'incertitude. Au début des années 2020, les VAE restent un domaine de recherche actif, avec des applications dans la conception de Neural network et au-delà.