5  🎲 Autoencodeurs et Modèles Variationnels (VAE)

5.1 L’Autoencodeur Classique

Un autoencodeur apprend à compresser puis à reconstruire ses données d’entrée en passant par un goulot d’étranglement très étroit — comme résumer un livre en dix mots, puis tenter de le réécrire depuis ce résumé.

L’autoencodeur classique ne doit pas être appréhendé comme un simple mécanisme de copie, mais comme une architecture de contrainte forçant l’extraction de caractéristiques sémantiques. En privant le réseau de ressources dimensionnelles, on l’oblige à résoudre un problème d’optimisation sous contrainte de goulot d’étranglement (bottleneck). Toute l’astuce réside dans cette privation délibérée : c’est le manque de capacité qui génère la représentation utile (Giguère n.d.; Canziani et al. 2020).

5.1.1 Le Triptyque Architectural

L’autoencodeur a trois pièces : l’encodeur qui compresse, le goulot qui étrangle, et le décodeur qui tente de reconstruire. C’est la petitesse du goulot qui force la compression à être sémantiquement utile.

Le système s’articule autour de trois composantes fondamentales (Machine Learning at Berkeley n.d.; Talbi 2021) :

  • L’Encodeur (\mathbf{z} = f_\theta(\mathbf{x})) : Une fonction paramétrique projetant l’entrée \mathbf{x} de haute dimension vers un espace latent \mathbf{z} de dimensionnalité réduite. Architecturalement, il peut s’agir d’un MLP ou d’un CNN pour les images.

  • Le Goulot d’étranglement (Bottleneck) : La couche critique dont la dimension d_z \ll d_x limite le flux d’information. Cette couche agit comme un filtre sémantique : seule l’information structurellement indispensable à la reconstruction peut y passer.

  • Le Décodeur (\hat{\mathbf{x}} = g_\phi(\mathbf{z})) : La fonction réciproque qui tente de reconstruire le signal original à partir de la représentation compressée. Il est souvent symétrique à l’encodeur.

5.1.2 L’Objectif de Reconstruction

Le modèle est entraîné à reproduire fidèlement sa propre entrée après l’avoir comprimée : plus l’écart entre l’original et la reconstruction est petit, mieux le goulot a retenu l’essentiel.

Mathématiquement, l’entraînement minimise la perte de reconstruction :

\mathcal{L}(\theta, \phi) = \mathbb{E}_{\mathbf{x} \sim p_{\text{data}}}\!\left[\|\mathbf{x} - g_\phi(f_\theta(\mathbf{x}))\|^2\right]

Cette contrainte force le modèle à ignorer les variations stochastiques (le bruit) pour ne conserver que les composantes principales du jeu de données. L’autoencodeur agit ainsi comme une extension non-linéaire de l’Analyse en Composantes Principales (ACP/PCA) : là où la PCA trouve le sous-espace linéaire optimal, l’autoencodeur apprend le manifold non-linéaire sur lequel réside réellement la distribution des données (Fournier and Aloise 2021).

🗜️ Transcription Télégraphique

Imaginons devoir transmettre un discours complet via un télégramme à coût fixe par mot. L’auteur est contraint de distiller le discours en ses idées essentielles, en éliminant toute redondance. À réception, le destinataire tente de reconstruire le discours original à partir de cette version compressée. Plus la contrainte de coût est sévère (petit bottleneck), plus la distillation sémantique est forcée. La qualité de reconstruction révèle alors ce que le modèle a appris à considérer comme “essentiel” dans les données.

5.1.3 Applications Pratiques

Grâce à sa capacité à distiller l’essentiel, l’autoencodeur sert de débruiteur, de détecteur d’anomalies (tout ce qu’il ne sait pas reconstruire est “anormal”), et d’outil de visualisation de l’espace latent.

La contrainte du goulot d’étranglement génère plusieurs capacités utiles :

  • Compression et Réduction de Dimension : La représentation latente \mathbf{z} constitue une représentation compacte, exploitable pour la visualisation (t-SNE sur \mathbf{z}) ou comme entrée d’un modèle aval (Fournier and Aloise 2021).

  • Débruitage (Denoising Autoencoders) : En entraînant le modèle à reconstruire \mathbf{x} à partir d’une version bruitée \tilde{\mathbf{x}} = \mathbf{x} + \epsilon, on force l’encodeur à ignorer le bruit aléatoire. L’espace latent ne pouvant encodeur le bruit faute de capacité, le décodeur apprend à reconstruire la structure propre du signal (Bengio 2012).

  • Détection d’Anomalies : Pour une donnée hors-distribution, la perte de reconstruction \|\mathbf{x} - \hat{\mathbf{x}}\|^2 est structurellement élevée, le modèle n’ayant pas de “vocabulaire latent” pour la représenter. Ce signal constitue un détecteur d’anomalies sans supervision.

5.1.4 Fragmentation du Manifold

L’espace latent de l’autoencodeur ressemble à un archipel : des îles valides entourées de vide. Tirer un point aléatoire dans ce vide produit un décodage incohérent — c’est ce qui motive le VAE.

Malgré ces qualités, l’autoencodeur classique souffre d’un défaut architectural critique : la fragmentation du manifold latent. L’espace \mathbf{z} est discontinu, parsemé de “trous sémantiques” entre les clusters correspondant aux différentes classes. Interpoler entre deux points latents valides peut produire des reconstructions incohérentes (Shrivastava, Rameshan, and Agnihotri 2024).

Ce constat est fondamental : si l’on tire un point \mathbf{z} aléatoire dans l’espace latent, rien ne garantit que g_\phi(\mathbf{z}) produira une donnée sémantiquement valide. L’espace latent n’est pas un continuum utilisable — il est une collection de régions valides entourées de régions vides. C’est précisément cette limitation qui motive le passage au Variational Autoencoder.

🗜️ Simulateur — Architecture Autoencodeur

5.2 Du Déterminisme au Probabilisme

Là où l’autoencodeur encode chaque donnée en un point fixe, le VAE l’encode en une zone floue : plutôt que d’un point précis dans l’espace latent, on obtient un nuage gaussien, ce qui garantit que l’espace entre les zones est navigable.

Le passage à l’Autoencodeur Variationnel (VAE) marque une transition paradigmatique : l’encodeur ne produit plus un point fixe dans l’espace latent, mais les paramètres d’une distribution de probabilité. Ce saut conceptuel résout directement la fragmentation du manifold en remplaçant les coordonnées déterministes par des régions de confiance continues (Kassel 2026; Leclaire n.d.).

5.2.1 L’Encodeur Probabiliste

Pluttôt qu’une adresse précise (“vous êtes au point 3,7”), l’encodeur du VAE donne un code postal avec un rayon (« vous êtes quelque part dans ce quartier de rayon \sigma centré en \mu ») — ce qui force le décodeur à bien fonctionner partout dans ce quartier.

Dans un VAE, l’encodeur ne produit plus un vecteur \mathbf{z} unique mais les paramètres (\boldsymbol{\mu}, \boldsymbol{\sigma}) d’une distribution gaussienne multivariée diagonale (Wikipedia contributors 2026) :

q_\phi(\mathbf{z} | \mathbf{x}) = \mathcal{N}(\mathbf{z}; \boldsymbol{\mu}_\phi(\mathbf{x}), \text{diag}(\boldsymbol{\sigma}^2_\phi(\mathbf{x})))

Cette modélisation force chaque point de données \mathbf{x} à être représenté non pas comme un point mais comme une ellipsoïde gaussienne dans l’espace latent. Le décodeur doit apprendre à reconstruire correctement n’importe quel point échantillonné dans cette ellipsoïde, ce qui contraint l’espace latent à être dense et continu (Bergmann and Stryker n.d.).

🎯 Régions de Confiance Latentes

Conceptualisons chaque donnée \mathbf{x} comme une “balle gaussienne” centrée en \boldsymbol{\mu} avec un rayon proportionnel à \boldsymbol{\sigma}. L’entraînement établit un contrat entre encodeur et décodeur : l’encodeur s’engage à compacter l’information dans cette balle, le décodeur s’engage à produire une reconstruction valide pour tout point tiré dans cette balle. En forçant les balles à se recouvrir et à couvrir uniformément l’espace latent, le VAE crée un continuum naviguable — contrairement à l’AE classique où seuls les points encodés sont valides (Shi n.d.).

🕹️ AE vs VAE

5.2.2 L’Objectif ELBO

L’ELBO résoud un compromis : le terme de reconstruction pousse le modèle à mémoriser précisément (faire des petites zones), le terme KL le force à garder ces zones proches de l’origine et à ne pas s’effondrer en points (faire des zones suffisamment étales).

L’entraînement du VAE repose sur la maximisation de l’Evidence Lower Bound (ELBO), qui arbitre le conflit entre deux termes antagonistes (Leclaire n.d.; nik-55 2025) :

\mathcal{L}_{\text{ELBO}}(\theta, \phi) = \underbrace{\mathbb{E}_{q_\phi(\mathbf{z}|\mathbf{x})}\!\left[\log p_\theta(\mathbf{x}|\mathbf{z})\right]}_{\text{Terme de reconstruction}} - \underbrace{D_{\text{KL}}\!\left(q_\phi(\mathbf{z}|\mathbf{x}) \;\|\; p(\mathbf{z})\right)}_{\text{Terme de régularisation}}

  • Terme de reconstruction : Maximise la log-vraisemblance de reconstruire \mathbf{x} à partir d’un \mathbf{z} échantillonné. Il pousse l’encodeur à produire des représentations informatives.

  • Terme de régularisation (Divergence KL) : Mesure l’écart entre la distribution postérieure apprise q_\phi(\mathbf{z}|\mathbf{x}) et la distribution a priori p(\mathbf{z}) = \mathcal{N}(\mathbf{0}, \mathbf{I}). Il pousse les “balles gaussiennes” à rester proches de l’origine et à ne pas s’effondrer en points déterministes (ce qui reviendrait à un AE classique).

Cette tension est productive : le terme KL interdit à l’encodeur de “tricher” en mémorisant les données avec \boldsymbol{\sigma} \to 0, forçant une généralisation réelle.

5.2.3 Le \beta-VAE

En augmentant \beta, on serre davantage le corset sur l’espace latent : chaque dimension est forcée à contrôler un seul facteur de variation indépendant (rotation, couleur, échelle), au prix d’une reconstruction un peu moins fidèle.

Une extension importante est le \beta-VAE, qui introduit un hyperparamètre \beta > 1 pondérant le terme KL (Burgess et al. 2017) :

\mathcal{L}_{\beta\text{-VAE}} = \mathbb{E}_{q_\phi(\mathbf{z}|\mathbf{x})}\!\left[\log p_\theta(\mathbf{x}|\mathbf{z})\right] - \beta \cdot D_{\text{KL}}\!\left(q_\phi(\mathbf{z}|\mathbf{x}) \;\|\; p(\mathbf{z})\right)

Un \beta élevé contraint davantage l’espace latent, favorisant le disentanglement : chaque dimension de \mathbf{z} tend à contrôler un facteur de variation indépendant et interprétable (ex. : une dimension pour la rotation, une autre pour la couleur). Ce disentanglement est précieux pour la génération contrôlée mais se fait au détriment de la qualité de reconstruction (Burgess et al. 2017).

5.2.4 Génération et Interpolation

Un VAE bien entraîné est un espace contigu : on peut tirer un point au hasard et obtenir une image valide, ou glisser progressivement entre deux images pour créer des transitions réalistes.

Une fois entraîné, le VAE permet deux opérations fondamentales impossibles avec un AE classique :

  1. Génération : Tirer \mathbf{z} \sim \mathcal{N}(\mathbf{0}, \mathbf{I}) et décoder \hat{\mathbf{x}} = g_\theta(\mathbf{z}). La continuité de l’espace latent garantit la validité sémantique du résultat.

  2. Interpolation : Encoder deux données \mathbf{x}_a et \mathbf{x}_b pour obtenir \boldsymbol{\mu}_a et \boldsymbol{\mu}_b, puis décoder les points intermédiaires \boldsymbol{\mu}_a + t(\boldsymbol{\mu}_b - \boldsymbol{\mu}_a) pour t \in [0, 1]. La trajectoire dans l’espace latent est sémantiquement cohérente — une interpolation entre un “4” et un “9” MNIST passe progressivement par des formes intermédiaires plausibles.

5.3 Dérivation de la Divergence de Kullback-Leibler

La divergence KL mesure à quel point deux courbes de probabilité diffèrent l’une de l’autre — dans le VAE, c’est le thermomètre qui indique si les nuages gaussiens appris restent proches du nuage de référence centré à l’origine.

Pour comprendre comment le VAE préserve la continuité de son espace latent, une dérivation rigoureuse de la Divergence de Kullback-Leibler (DKL) entre deux distributions gaussiennes est indispensable. Cette forme fermée est la clé qui rend le VAE entraînable efficacement (Muñoz and Ramele n.d.).

5.3.1 Définition et Problème

Cette étape consiste à formaliser mathématiquement l’écart entre la distribution latente apprise par l’encodeur et la distribution normale standard choisie comme référence.

On cherche à quantifier l’écart entre la distribution postérieure apprise q_\phi(\mathbf{z}|\mathbf{x}) \sim \mathcal{N}(\boldsymbol{\mu}_1, \boldsymbol{\Sigma}_1) et la distribution a priori p(\mathbf{z}) \sim \mathcal{N}(\boldsymbol{\mu}_2, \boldsymbol{\Sigma}_2), avec typiquement p(\mathbf{z}) = \mathcal{N}(\mathbf{0}, \mathbf{I}). La définition générale est :

D_{\text{KL}}(P \| Q) = \int p(\mathbf{x}) \log \frac{p(\mathbf{x})}{q(\mathbf{x})} \, d\mathbf{x}

En substituant les densités gaussiennes et en développant le logarithme, l’intégrale se décompose en trois termes analytiques H_1, H_2 et H_3 (Muñoz and Ramele n.d.).

5.3.2 Décomposition en Trois Termes

L’intégrale se sépare en trois morceaux distincts : un qui compare les volumes, un autre qui mesure l’écart des centres, et un terme constant lié à la taille de l’espace.

Terme H_1 — Log-Déterminant :

Ce terme mesure le rapport de volume entre les deux ellipsoïdes de confiance :

H_1 = \frac{1}{2} \log \frac{|\boldsymbol{\Sigma}_2|}{|\boldsymbol{\Sigma}_1|}

Terme H_2 — Forme Quadratique :

En utilisant l’identité \mathbb{E}_P[\mathbf{x}^T \mathbf{A} \mathbf{x}] = \text{tr}(\mathbf{A}\boldsymbol{\Sigma}) + \boldsymbol{\mu}^T \mathbf{A} \boldsymbol{\mu}, on obtient :

H_2 = \frac{1}{2} \left[ \text{tr}\!\left(\boldsymbol{\Sigma}_2^{-1} \boldsymbol{\Sigma}_1\right) + (\boldsymbol{\mu}_2 - \boldsymbol{\mu}_1)^T \boldsymbol{\Sigma}_2^{-1} (\boldsymbol{\mu}_2 - \boldsymbol{\mu}_1) \right]

Ce terme pénalise à la fois l’éloignement des moyennes et la divergence des échelles.

Terme H_3 — Dimensionnalité :

Provenant de l’espérance du terme de normalisation de P en dimension k :

H_3 = \frac{k}{2}

5.3.3 Forme Fermée Finale

En assemblant ces trois morceaux, on obtient l’équation générale qui donne la distance exacte entre nos deux distributions.

La sommation D_{\text{KL}} = H_1 + H_2 - H_3 donne la formule standard (Muñoz and Ramele n.d.) (voir le Glossaire) :

\boxed{D_{\text{KL}}(P \| Q) = \frac{1}{2} \left( \text{tr}(\boldsymbol{\Sigma}_2^{-1} \boldsymbol{\Sigma}_1) + (\boldsymbol{\mu}_2 - \boldsymbol{\mu}_1)^T \boldsymbol{\Sigma}_2^{-1} (\boldsymbol{\mu}_2 - \boldsymbol{\mu}_1) - k + \log\frac{|\boldsymbol{\Sigma}_2|}{|\boldsymbol{\Sigma}_1|} \right)}

  • \text{tr}(\cdot) (Trace) : somme des éléments diagonaux d’une matrice carrée.
  • \boldsymbol{\Sigma}_2^{-1} (Covariance inverse) : inverse de la matrice de covariance \boldsymbol{\Sigma}_2.
  • (\cdot)^T (Transposition) : convertit un vecteur colonne en vecteur ligne pour permettre le produit matriciel (calcul de forme quadratique).
  • |\boldsymbol{\Sigma}| (Déterminant) : valeur scalaire mesurant la dilatation des volumes induite par la matrice de covariance.
  • k : dimension de l’espace latent (nombre de variables aléatoires gaussiennes).

5.3.4 Gaussiennes Diagonales du VAE

Dans la pratique, puisqu’on ne considère que des gaussiennes sans corrélations entre dimensions, la formule complexe se réduit à une simple somme sur chaque dimension latente — facile à calculer et à différencier.

Dans l’implémentation standard du VAE, les covariances sont diagonales : \boldsymbol{\Sigma}_1 = \text{diag}(\sigma_1^2, \ldots, \sigma_k^2) et \boldsymbol{\Sigma}_2 = \mathbf{I} (l’a priori standard). La formule se simplifie considérablement (voir le Glossaire) :

D_{\text{KL}}\!\left(\mathcal{N}(\boldsymbol{\mu}, \boldsymbol{\sigma}^2) \| \mathcal{N}(\mathbf{0}, \mathbf{I})\right) = \frac{1}{2} \sum_{j=1}^{k} \left(\sigma_j^2 + \mu_j^2 - 1 - \log \sigma_j^2\right)

  • \mathcal{N}(\boldsymbol{\mu}, \boldsymbol{\sigma}^2) : distribution normale paramétrée par son vecteur de moyenne \boldsymbol{\mu} et son écart-type \boldsymbol{\sigma}.
  • \mathbf{0} et \mathbf{I} : le vecteur de moyennes nul et la matrice de covariance identité (pas de corrélation, variance unitaire).
  • \sigma_j^2 : la variance de la j-ème composante de l’espace latent.
  • \mu_j : la moyenne de la j-ème composante.

Cette forme est remarquablement simple à calculer et à différencier. Son gradient est disponible analytiquement, sans nécessiter d’échantillonnage.

5.3.5 Interprétation Géométrique

Chaque terme de la formule KL joue un rôle de gardien : l’un évite que les nuages s’éloignent trop de l’origine, l’autre empêche qu’ils s’effondrent en points ou explose à l’infini.

Chaque terme joue un rôle géométrique précis dans la régularisation de l’espace latent :

Terme Mécanisme Effet sur l’espace latent
\mu_j^2 Pénalise l’éloignement de l’origine Centre les “balles gaussiennes” à \mathbf{0}
\sigma_j^2 Force une variance minimale Interdit l’effondrement en points (\sigma \to 0)
-\log \sigma_j^2 Force une variance maximale Interdit l’explosion en distributions infinies
-1 Terme de normalisation Référence : \sigma = 1 (aucune pénalité)

La trace et le log-déterminant agissent conjointement comme un garde-fou contre l’effondrement représentationnel : si \sigma_j \to 0, le terme -\log \sigma_j^2 \to +\infty force le gradient à résister à cet effondrement. C’est le mécanisme fondamental par lequel la divergence KL maintient la continuité de l’espace latent.

📐 Divergence KL

D_KL

5.4 Le Trick de Reparamétrisation et la Géométrie du Latent

Le problème : on ne peut pas différencier un tirage aléatoire. L’astuce : on externalise le hasard dans une variable fixe \epsilon, puis on applique une transformation déterministe — le gradient peut désormais traverser.

L’élégance du VAE repose sur un verrou algorithmique crucial : comment entraîner par rétropropagation un réseau qui échantillonne ? L’opération \mathbf{z} \sim \mathcal{N}(\boldsymbol{\mu}, \boldsymbol{\sigma}^2) est stochastique et non-différentiable — le gradient ne peut pas traverser un nœud d’échantillonnage.

🎲 Diagramme — L’Astuce de Reparamétrisation

5.4.1 Le Reparameterization Trick

L’astuce consiste à sortir la pièce aléatoire du réseau : le réseau génère la moyenne et l’écart-type de manière déterministe, et on y ajoute le hasard produit à l’extérieur.

La solution, introduite par le VAE original, déplace la stochasticité vers une variable externe \boldsymbol{\epsilon} indépendante des paramètres (Leclaire n.d.) :

\mathbf{z} = \boldsymbol{\mu} + \boldsymbol{\sigma} \odot \boldsymbol{\epsilon}, \qquad \boldsymbol{\epsilon} \sim \mathcal{N}(\mathbf{0}, \mathbf{I})

La transformation \mathbf{z} = \boldsymbol{\mu} + \boldsymbol{\sigma} \odot \boldsymbol{\epsilon} est déterministe par rapport aux paramètres (\boldsymbol{\mu}, \boldsymbol{\sigma}) — seul \boldsymbol{\epsilon} est aléatoire, et il est tiré indépendamment. Le gradient peut désormais s’écouler librement à travers \boldsymbol{\mu} et \boldsymbol{\sigma} jusqu’à l’encodeur.

🎲 Dé Pipé vs Dé Standard

Imaginez que vous deviez optimiser la mise d’un pari sur un dé pipé. Il est impossible de différencier directement par rapport au “biais” du dé si vous l’incluez dans le lancer (nœud stochastique). La reparamétrisation consiste à utiliser un dé standard équitable \boldsymbol{\epsilon} (source de hasard externe, non-optimisable), puis à appliquer une transformation déterministe \boldsymbol{\mu} + \boldsymbol{\sigma} \odot \boldsymbol{\epsilon} pour simuler le dé pipé. Le gradient peut maintenant traverser la transformation et atteindre les paramètres (\boldsymbol{\mu}, \boldsymbol{\sigma}).

5.4.2 Compacité et Stochasticité

La question de fond : est-ce le hasard du VAE qui crée de bonnes représentations, ou simplement la contrainte géométrique imposée par la KL ? Des résultats récents suggèrent que c’est la contrainte qui fait tout le travail.

Une perspective récente propose une réinterprétation profonde du rôle de la reparamétrisation (Shi n.d.). La question posée est : la stochasticité est-elle véritablement le mécanisme générateur de représentations utiles, ou n’est-elle qu’un vecteur pour imposer une régularisation géométrique ?

Des expériences montrent qu’il est possible d’obtenir des espaces latents de qualité comparable au VAE via des méthodes de Compactness Regularization déterministes (Shi n.d.) :

  • Asymmetric Expansion : Applique une pénalité \text{ReLU}(-\log \boldsymbol{\sigma}^2) qui interdit l’effondrement des variances sans imposer de distribution gaussienne.
  • Symmetric Stabilization : Régularise symétriquement les variances autour de 1, maintenant la géométrie sans recourir à l’échantillonnage.

Ce résultat suggère que la divergence KL est avant tout un bouclier géométrique contre l’effondrement représentationnel, pas un mécanisme probabiliste en soi. C’est la contrainte de compacité qui génère la sémantique, quelle que soit la forme qu’elle prend.

5.4.3 Métriques de Qualité du Latent

Deux indicateurs permettent de diagnostiquer la santé d’un espace latent : l’uniformité des distances entre voisins (est-ce que tout est bien réparti ?) et la couverture globale de l’espace de référence (est-ce qu’il reste des zones vides ?).

Pour évaluer objectivement la qualité d’un espace latent, deux métriques sont particulièrement informatives (Shi n.d.; Shrivastava, Rameshan, and Agnihotri 2024) :

CV-NND (Coefficient of Variation of Nearest-Neighbor Distances) :

Mesure l’uniformité de la densité locale. Pour chaque point \mathbf{z}_i, on calcule la distance à son voisin le plus proche d_i. Le CV-NND est le coefficient de variation de la distribution \{d_i\} :

\text{CV-NND} = \frac{\text{std}(\{d_i\})}{\text{mean}(\{d_i\})}

Un CV-NND bas indique une distribution géométriquement uniforme et bien dispersée — caractéristique d’un espace latent de VAE bien entraîné. Un CV-NND élevé signale des clusters denses entourés de régions vides (pathologie de l’AE classique).

DLC (Dynamic Latent Coverage) :

Évalue dans quelle mesure l’encodeur couvre le support de la distribution a priori p(\mathbf{z}) au cours de l’entraînement. Un DLC élevé en fin d’entraînement indique que l’espace latent est correctement ancré à \mathcal{N}(\mathbf{0}, \mathbf{I}) et ne présente pas de régions vides (Shrivastava, Rameshan, and Agnihotri 2024).

Métrique Bonne valeur Pathologie Diagnostic
CV-NND Faible Élevé Fragmentation du manifold
DLC Élevé Faible Effondrement postérieur (posterior collapse)

5.4.4 Le Posterior Collapse

Le posterior collapse est l’extrême opposé : l’encodeur cesse complètement de travailler et renvoie toujours la même gaussienne de référence, quel que soit l’input — comme un employé qui remplit toujours le même formulaire sans lire le dossier.

Le posterior collapse est la pathologie opposée à la fragmentation : l’encodeur “ignore” l’entrée et renvoie toujours la distribution a priori q_\phi(\mathbf{z}|\mathbf{x}) \approx p(\mathbf{z}). Le terme KL est alors nul, le terme de reconstruction aussi (le décodeur apprend à ignorer \mathbf{z} et génère depuis un modèle marginal). Cette pathologie survient quand le décodeur est trop puissant et apprend à modéliser p_\theta(\mathbf{x}) sans utiliser le code latent — le canal d’information entre encodeur et décodeur se ferme. La solution passe par un contrôle du \beta ou des techniques d’annelage (KL annealing).

5.5 VQ-VAE et Espace Latent Discret

Pluttôt qu’un nuage de points continus, le VQ-VAE contraint l’espace latent à un dictionnaire fini de mots : chaque image est décrite par un index pointant vers le mot le plus proche du dictionnaire, comme choisir le meilleur équivalent dans un lexique de 256 entrées.

Le VQ-VAE (Vector Quantized Variational Autoencoder) propose une alternative radicale au continuum gaussien du VAE : un espace latent discret, constitué d’un dictionnaire fini de vecteurs. Cette approche est particulièrement adaptée aux données dont la sémantique est naturellement hiérarchique et discrète — paroles, images haute résolution, partitions musicales (Shrivastava, Rameshan, and Agnihotri 2024).

🗂️ Codebook VQ-VAE

5.5.1 Le Codebook Latent

L’encodeur produit un vecteur continu, puis on cherche dans le dictionnaire le mot le plus proche et on l’utilise à la place — comme arrondir un nombre décimal au nombre entier le plus proche.

La pièce maîtresse du VQ-VAE est le codebook (dictionnaire) \mathcal{E} = \{\mathbf{e}_k\}_{k=1}^{K}, un ensemble de K vecteurs apprenables de dimension d_z. L’encodeur ne produit plus une distribution gaussienne mais un vecteur continu \mathbf{z}_e(\mathbf{x}), qui est ensuite quantifié par remplacement par le vecteur du codebook le plus proche :

\mathbf{z}_q(\mathbf{x}) = \mathbf{e}_{k^*}, \qquad k^* = \arg\min_k \|\mathbf{z}_e(\mathbf{x}) - \mathbf{e}_k\|^2 (voir le Glossaire)

  • \mathbf{z}_e(\mathbf{x}) : le vecteur continu en sortie de l’encodeur pour une entrée \mathbf{x}.
  • \mathbf{z}_q(\mathbf{x}) : le vecteur quantifié (discrétisé) correspondant.
  • \mathbf{e}_k : le k-ème vecteur du codebook (dictionnaire).
  • \arg\min_k : l’opération renvoyant l’indice k qui minimise la distance Euclidienne au carré.
  • \|\cdot\|^2 : la norme Euclidienne au carré, mesurant la distance géométrique dans l’espace latent.

Le décodeur reçoit \mathbf{z}_q et non \mathbf{z}_e. La représentation latente finale est donc un index discret k^* \in \{1, \ldots, K\} plutôt qu’un vecteur continu.

5.5.2 Les Deux Chemins de l’Objectif

L’apprentissage de cet alphabet nécessite de faire coopérer l’encodeur et le dictionnaire : chacun doit faire un pas vers l’autre pour stabiliser le code.

L’entraînement combine trois termes correspondant à deux dynamiques simultanées (Shrivastava, Rameshan, and Agnihotri 2024) :

\mathcal{L}_{\text{VQ-VAE}} = \underbrace{\|\mathbf{x} - g_\phi(\mathbf{z}_q)\|^2}_{\text{Reconstruction}} + \underbrace{\|\text{sg}[\mathbf{z}_e] - \mathbf{z}_q\|^2}_{\text{Codebook}} + \underbrace{\beta \|\mathbf{z}_e - \text{sg}[\mathbf{z}_q]\|^2}_{\text{Commitment}} (voir le Glossaire)

  • g_\phi(\cdot) : le décodeur paramétré par ses poids \phi.

  • \text{sg}[\cdot] : l’opérateur stop-gradient (bloque la rétropropagation du gradient).

  • \beta (bêta) : l’hyperparamètre pondérant la perte d’engagement (commitment loss).

  • Chemin A — Codebook Loss : Rapproche les vecteurs du codebook \mathbf{e}_k vers les encodages \mathbf{z}_e qui leur sont affectés. Entraîne le dictionnaire.

  • Chemin B — Commitment Loss : Rapproche les encodages \mathbf{z}_e vers les vecteurs du codebook qui leur sont assignés. Force l’encodeur à “s’engager” vers les vecteurs du dictionnaire plutôt que de dériver arbitrairement. Le coefficient \beta contrôle la force de cet engagement.

5.5.3 Le Problème du Gradient à la Quantification

La sélection du mot le plus proche dans le dictionnaire est une opération non-différentiable. La solution : faire semblant qu’elle n’existe pas en backward et copier directement le gradient comme si l’entrée et la sortie de quantification étaient identiques.

L’opération \arg\min est non-différentiable : le gradient ne peut pas traverser la sélection de k^*. La solution est le straight-through estimator : en forward, on utilise \mathbf{z}_q, mais en backward, on copie directement le gradient de g_\phi vers \mathbf{z}_e comme si la quantification n’existait pas :

\frac{\partial \mathcal{L}}{\partial \mathbf{z}_e} \approx \frac{\partial \mathcal{L}}{\partial \mathbf{z}_q} (voir le Glossaire)

  • \partial : le symbole de dérivation partielle.
  • \approx : le symbole d’approximation du gradient (copie de gradient du Straight-Through Estimator).

Cette approximation est grossière mais fonctionne empiriquement car elle oriente l’encodeur dans la bonne direction.

5.5.4 Mise à Jour par EMA

Pour éviter que notre dictionnaire ne change trop brusquement à chaque étape, on met à jour ses mots par petites touches progressives (moyenne mobile), sans utiliser directement les gradients.

Pour stabiliser l’entraînement du codebook, une alternative au gradient standard est la mise à jour par Exponential Moving Average (EMA). Chaque vecteur \mathbf{e}_k est mis à jour comme une moyenne pondérée des encodages qui lui sont affectés :

\mathbf{e}_k \leftarrow (1 - \gamma) \mathbf{e}_k + \gamma \cdot \frac{\sum_i \mathbf{z}_e^{(i)} \cdot \mathbb{1}[k^{(i)} = k]}{\sum_i \mathbb{1}[k^{(i)} = k]} (voir le Glossaire)

  • \leftarrow : affectation ou opérateur de mise à jour (remplacement).
  • \gamma (gamma) : le coefficient de décroissance pour la moyenne mobile exponentielle.
  • \mathbb{1}[\text{cond}] : la fonction indicatrice (vaut 1 si la condition est vraie, 0 sinon).

Cette approche est plus stable que l’optimisation directe par descente de gradient et évite que le codebook oscille entre les mises à jour (Shrivastava, Rameshan, and Agnihotri 2024).

5.5.5 Risque de Codebook Collapse

Si l’encodeur prend l’habitude d’utiliser toujours les mêmes 5 entrées sur 256, les 251 autres deviennent inutiles — la capacité du dictionnaire est gaspillée et la qualité de génération s’effondre.

La pathologie principale du VQ-VAE est le Codebook Collapse : une fraction des K vecteurs du dictionnaire capture toute la variance des données, laissant les autres vecteurs inutilisés. L’encodeur apprend à ignorer une large partie du codebook, réduisant effectivement la capacité de représentation à quelques codes actifs.

Les solutions incluent : la réinitialisation périodique des vecteurs inactifs, l’augmentation du coefficient \beta du commitment loss, ou des techniques de codebook dropout forçant l’encodeur à utiliser des codes alternatifs.

📚 L’Alphabet de Compression

Imaginez construire un alphabet de K symboles pour encoder les phonèmes d’une langue. Si l’encodeur apprend à tout exprimer avec 5 symboles sur 256 (collapse), la plupart des distinctions sémantiques se perdent. À l’inverse, si chaque phonème est trop précisément représenté par un seul symbole (espace trop large), la généralisation en souffre. La tension entre expressivité du codebook et utilisation uniforme des vecteurs est le défi fondamental du VQ-VAE.

5.5.6 VQ-VAE-2 et Génération Hiérarchique

VQ-VAE-2 empile deux niveaux de dictionnaires : un pour les détails fins (textures, bords) et un autre pour la structure globale (composition, forme) — comme un roman qui a à la fois un plan de chapitre et un plan de paragraphe.

L’extension naturelle, VQ-VAE-2, empile plusieurs niveaux de codebooks pour capturer des structures à différentes échelles : un codebook “fin” pour les détails locaux (textures, bords) et un codebook “grossier” pour la structure globale (forme, composition). La génération utilise ensuite un modèle autoregressif (PixelCNN) opérant dans l’espace des codes discrets, produisant des images de qualité remarquable en évitant les compromis probabilistes du VAE.

5.6 La Contrainte comme Sémantique

Trois approches, un même principe : plus on contraint l’espace latent, plus le modèle est forcé à apprendre des représentations compactes et généralisables. AE serre légèrement, VAE serre avec des garde-fous probabilistes, VQ-VAE impose un alphabet fini.

L’exploration des trois architectures d’espace latent révèle une leçon unificatrice : la sémantique émergente est une fonction directe de la contrainte exercée sur l’espace latent. Plus la contrainte est rigoureuse et structurée, plus le modèle est forcé à distiller l’essence informative des données (Fournier and Aloise 2021; Shrivastava, Rameshan, and Agnihotri 2024).

5.6.1 Tableau Comparatif des Architectures

Voici comment se comparent les trois architectures sur leurs principes de base, leurs manières de générer, et leurs problèmes typiques.

Critère Autoencodeur (AE) VAE VQ-VAE
Nature de l’espace latent Déterministe (point) Probabiliste (distribution) Discret (codebook)
Régularisation Bottleneck seul Divergence KL Commitment Loss
Méthode de génération Interpolation (fragile) Échantillonnage gaussien Autoregressif sur codes
Indicateur de qualité Erreur de reconstruction CV-NND bas / DLC élevé Utilisation uniforme du codebook
Pathologie principale Trous sémantiques Posterior collapse Codebook collapse
Applications typiques Débruitage, anomalies Génération, disentanglement Image/audio haute qualité

5.6.2 La Hiérarchie des Contraintes

Du simple goulot d’étranglement à l’alphabet discret, chaque modèle resserre un peu plus le corset sur l’espace latent.

Les trois architectures forment une hiérarchie de contraintes croissantes :

  1. AE : Contrainte douce par réduction de dimension. L’espace latent est structuré uniquement par la pression de reconstruction — pas de garantie sur sa géométrie.

  2. VAE : Contrainte probabiliste via la divergence KL. L’espace latent est forcé à ressembler à \mathcal{N}(\mathbf{0}, \mathbf{I}), garantissant continuité et couverture.

  3. VQ-VAE : Contrainte discrète via le commitment loss. L’espace est réduit à un ensemble fini de prototypes, imposant la compacité la plus extrême.

Paradoxalement, c’est l’architecture la plus contrainte (VQ-VAE) qui produit souvent les meilleures représentations pour les données haute dimension, car elle force le modèle à apprendre des abstractions véritablement discrètes et compositionnelles.

5.6.3 Connexion avec les Modèles de Fondation

Les VAE ne sont pas seulement un exercice académique : Stable Diffusion, l’un des modèles génératifs les plus populaires du monde, utilise un VAE pour comprimer les images en espace latent avant d’y appliquer la diffusion.

Les autoencodeurs variationnels constituent une fondation théorique essentielle pour les architectures modernes. Les modèles de diffusion latente (Latent Diffusion Models, dont Stable Diffusion) s’appuient explicitement sur un VAE pour comprimer les images en un espace latent, dans lequel le processus de diffusion opère. Cette séparation des préoccupations — compression sémantique (VAE) et modélisation générative (diffusion) — permet de combiner les avantages des deux paradigmes.

Plus généralement, la notion d’espace latent contraint est le fil conducteur reliant les autoencodeurs, les modèles de diffusion, et les grands modèles de language (LLM) qui, eux aussi, opèrent sur des représentations compressées internes. La maîtrise de l’espace latent n’est pas une technique parmi d’autres : c’est le paradigme central du deep learning moderne.

🔑 Points Clés à Retenir
  • AE : La contrainte du bottleneck force l’extraction de primitives sémantiques, mais ne garantit pas la continuité du manifold — l’interpolation reste fragile.
  • VAE : La divergence KL est un régulateur géométrique qui transforme le code latent en un continuum naviguable. Le reparameterization trick est un outil algorithmique, pas une nécessité probabiliste fondamentale.
  • VQ-VAE : La discrétisation impose la compacité la plus forte. Le risque de codebook collapse est géré par EMA et les techniques d’utilisation forcée des codes.
  • Leçon unificatrice : La contrainte — qu’elle soit probabiliste ou discrète — transforme le signal brut en structure géométrique compacte. C’est cette compacité qui permet la généralisation et la génération.