Aller au contenu principal

Autoencodeurs variationnels

Un autoencodeur variationnel (VAE) est un modèle génératif à variables latentes. Il définit un a priori p(z)p(z) et une vraisemblance de décodeur pθ(xz)p_{\theta}(x\mid z) :

pθ(x)=p(z)pθ(xz)dz.p_{\theta}(x) = \int p(z)\,p_{\theta}(x\mid z)\,dz.

Pour une observation xx, la distribution a posteriori pθ(zx)p_{\theta}(z\mid x) décrit les valeurs latentes susceptibles de l’expliquer sous le modèle. Cette distribution étant généralement difficile à calculer directement, un encodeur qϕ(zx)q_{\phi}(z\mid x) l’approche. Le même encodeur, aux paramètres partagés ϕ\phi, fournit une distribution approchée pour chaque observation. Cette réutilisation entre observations s’appelle l’inférence amortie.

Borne inférieure de l’évidence

L’entraînement maximise la borne inférieure de l’évidence (ELBO) :

L(x;θ,ϕ)=Eqϕ(zx)[logpθ(xz)]KL ⁣(qϕ(zx)p(z)).\mathcal{L}(x;\theta,\phi) = \mathbb{E}_{q_{\phi}(z\mid x)} \left[\log p_{\theta}(x\mid z)\right] - \mathrm{KL}\!\left(q_{\phi}(z\mid x)\,\|\,p(z)\right).

Il s’agit d’une borne inférieure car

logpθ(x)=L(x;θ,ϕ)+KL ⁣(qϕ(zx)pθ(zx)).\log p_{\theta}(x) = \mathcal{L}(x;\theta,\phi) + \mathrm{KL}\!\left( q_{\phi}(z\mid x) \,\|\, p_{\theta}(z\mid x) \right).

Dans l’ELBO, l’espérance de la log-vraisemblance du décodeur favorise l’explication de l’observation. La pénalité KL par rapport à l’a priori maintient la distribution approchée près de celui-ci, pour que les tirages issus de l’a priori atteignent plus facilement les régions apprises par le décodeur ; cela ne garantit pas la qualité des générations. Réduire cette espérance à une simple « perte de reconstruction » masque un choix de modélisation essentiel : les vraisemblances de Bernoulli, gaussienne, catégorielle ou autres impliquent des objectifs et des hypothèses différents sur les données.

Gradients reparamétrés

Pour un encodeur gaussien diagonal,

qϕ(zx)=N ⁣(z;μϕ(x),diag(σϕ2(x))),q_{\phi}(z\mid x) = \mathcal{N}\!\left(z;\mu_{\phi}(x), \operatorname{diag}(\sigma_{\phi}^2(x))\right),

on échantillonne au moyen d’un bruit indépendant des paramètres :

ϵN(0,I),z=μϕ(x)+σϕ(x)ϵ.\epsilon\sim\mathcal{N}(0,I), \qquad z=\mu_{\phi}(x)+\sigma_{\phi}(x)\odot\epsilon.

L’aléa est ainsi déplacé hors du chemin différentiable passant par μϕ\mu_{\phi} et σϕ\sigma_{\phi}.

Pour un a priori normal standard, le terme KL possède une forme fermée :

KL(qp)=12j(1+logσj2μj2σj2).\mathrm{KL}(q\|p) = -\frac{1}{2}\sum_j \left(1+\log\sigma_j^2-\mu_j^2-\sigma_j^2\right).

Une observation, une perte d’entraînement

Ici KL(qp)=Eq[logqlogp]\mathrm{KL}(q\|p)=E_q[\log q-\log p] mesure l’écart entre distributions ; elle est non négative, asymétrique et nulle seulement si elles coïncident presque partout. L’identité de l’ELBO suppose des densités et espérances bien définies. Elle découle de la substitution de Bayes, pθ(zx)=pθ(xz)p(z)/pθ(x)p_\theta(z\mid x)=p_\theta(x\mid z)p(z)/p_\theta(x), dans cette définition de KL. L’écart s’annule quand l’encodeur égale le vrai posterior, pas simplement quand la reconstruction est bonne. C’est l’argument variationnel d’Auto-Encoding Variational Bayes.

Prenons un encodeur unidimensionnel avec μ=1\mu=1, σ=0.5\sigma=0.5 et un tirage fixé ϵ=0.2\epsilon=0.2, donnant z=1.1z=1.1. Supposons p(xz)=N(z,1)p(x\mid z)=\mathcal N(z,1) et l’observation x=2x=2. La log-vraisemblance négative de ce tirage est (21.1)2/2+log(2π)/21.3239(2-1.1)^2/2+\log(2\pi)/2\approx1.3239. La KL analytique vers N(0,1)\mathcal N(0,1) vaut (1+0.251log0.25)/20.8181(1+0.25-1-\log0.25)/2\approx0.8181. L’estimation de l’ELBO négative à un échantillon vaut donc 2.14212.1421. Elle estime une espérance ; un tirage Monte-Carlo particulier ne garantit pas à lui seul une borne de logp(x)\log p(x).

Pour un lot de BB observations et une largeur latente dzd_z, l’encodeur produit moyenne et log-variance de forme [B, d_z]. Poser σ=exp(logvar/2)\sigma=\exp(\text{logvar}/2), tirer un bruit de même forme, sommer la log-vraisemblance de reconstruction sur les dimensions observées et la KL sur les dimensions latentes, puis moyenner sur le lot. Moyenner uniquement les dimensions de reconstruction au lieu de les sommer change implicitement son poids relatif à la KL. La génération utilise un tirage de l’a priori et le décodeur sans encodeur ; renvoyer la moyenne du décodeur fournit un résumé déterministe, pas un échantillon complet de la vraisemblance.

Génération et variantes

  • Génération : échantillonner zp(z)z\sim p(z), puis échantillonner ou décoder xpθ(xz)x\sim p_{\theta}(x\mid z).
  • VAE conditionnel : conditionner l’encodeur et le décodeur sur une information supplémentaire yy.
  • β\beta-VAE : pondérer le terme KL par β\beta pour modifier le compromis débit–distorsion. Un poids plus fort ne garantit pas une représentation uniquement désintriquée ou sémantiquement pertinente.

Modes d’échec

  • Effondrement du posterior : un décodeur puissant peut ignorer zz, laissant qϕ(zx)q_{\phi}(z\mid x) proche de l’a priori.
  • Écart d’approximation : la famille variationnelle choisie peut mal représenter le véritable posterior.
  • Vraisemblance inadaptée : une distribution de décodage commode peut produire des échantillons ou reconstructions indésirables.
  • Interprétation latente : une interpolation lisse ne prouve pas que les coordonnées latentes correspondent à des concepts humains indépendants.
  • Détection d’anomalies : les scores de reconstruction ou de vraisemblance peuvent échouer sur des données inconnues et exigent une validation propre à la tâche.

La source canonique est Auto-Encoding Variational Bayes. Le code d’entraînement lié à un framework est volontairement omis : les hypothèses du modèle et l’ELBO constituent la partie durable.

Explorer les liensOuvrir le réseau