Aller au contenu principal

Module 1 — Modèles discriminatifs et modèles génératifs

Jusqu'ici, la plupart des cours de deep learning ont entraîné des réseaux à répondre : « quelle classe ? », « quelle valeur ? ». C'est de la modélisation discriminative. Ce cours prend l'exposition à contre-pied et se concentre sur des modèles qui produisent des données nouvelles : chiffres manuscrits, visages, phrases, sons. Avant d'écrire une seule ligne de code, il faut comprendre pourquoi ces deux points de vue mènent à des architectures et à des pièges différents.

Deux quantités à ne pas confondre

Un modèle discriminatif approche la distribution conditionnelle p(yx)p(y \mid x) : sachant l'entrée xx, quelle est la probabilité de chaque étiquette yy ? Un classifieur d'images entraîné sur MNIST modélise « sachant cette image de 28×2828 \times 28 pixels, quelle est la probabilité que ce soit un 3 ? ». Il ne sait rien dire de la probabilité que l'image existe en tant que telle.

Un modèle génératif approche la distribution jointe p(x,y)p(x, y) ou, plus souvent, la distribution marginale p(x)p(x) des données elles-mêmes. « Sachant que je m'intéresse aux chiffres manuscrits, quelle est la probabilité qu'une image donnée soit une image plausible de chiffre ? » Ce déplacement paraît anodin ; ses conséquences sont énormes.

p(x,y)=p(yx)p(x)=p(xy)p(y)p(x, y) = p(y \mid x)\, p(x) = p(x \mid y)\, p(y)

La règle de Bayes rappelle qu'à partir d'une bonne modélisation de p(xy)p(x \mid y) et de p(y)p(y), on peut reconstruire un classifieur. C'est la logique historique du bayésien naïf. L'inverse n'est pas vrai : un classifieur discriminatif ne permet ni de générer de nouveaux xx, ni de détecter qu'un xx est hors distribution.

Générer, c'est échantillonner

Un modèle génératif utile ne se contente pas de calculer une densité : il permet d'échantillonner, c'est-à-dire de tirer au sort des exemples xx selon p(x)p(x). C'est cette capacité qui distingue « un modèle qui sait reconnaître un chiffre plausible » d'« un modèle qui sait en produire un ».

Deux façons opposées d'échantillonner traversent tout le cours :

  • La voie autorégressive décompose p(x)=ip(xix<i)p(x) = \prod_i p(x_i \mid x_{<i}) et tire les pixels, les jetons ou les échantillons audio un par un. Elle est exacte, lente à l'inférence et dominante en génération de texte (GPT).
  • La voie par variable latente postule une variable cachée zz et modélise p(x)=p(xz)p(z)dzp(x) = \int p(x \mid z)\, p(z)\, dz. On tire zz facilement (souvent gaussien), puis on transforme zz en xx par un réseau. C'est la mécanique des VAE (module 3), des GAN (module 4) et, sous une forme itérative, des modèles de diffusion (module 6).
Vraisemblance ne veut pas dire qualité perçue

Maximiser la vraisemblance des données d'entraînement ne garantit pas des échantillons visuellement convaincants. Un VAE atteint une meilleure vraisemblance qu'un GAN sur MNIST tout en produisant des chiffres nettement plus flous. C'est le premier signe que l'objectif d'entraînement et le critère humain de qualité ne coïncident pas — le module 8 y reviendra avec les métriques FID et IS.

Les trois familles et leur chronologie

Trois grandes familles se partagent la génération moderne. Elles ne sont pas concurrentes mais complémentaires, chacune payant un compromis différent.

FamilleIdéeForceFaiblesse
Autoencodeur variationnel (VAE)Encoder vers une distribution latente, décoderEntraînement stable, densité calculableReconstructions floues
Réseau antagoniste (GAN)Générateur contre discriminateurÉchantillons nets et rapidesEntraînement instable, effondrement des modes
Modèle de diffusionBruiter puis apprendre à débruiterQualité de pointe, entraînement stableÉchantillonnage coûteux

L'ordre historique compte pour lire les papiers. Les VAE apparaissent en 2013, les GAN en 2014, la version moderne des modèles de diffusion (DDPM) en 2020. Chaque famille est née d'une frustration face à la précédente : les GAN pour la netteté que les VAE ne produisaient pas, les modèles de diffusion pour la stabilité que les GAN n'offraient pas. Aucune n'a rendu les autres obsolètes : la production de texte reste autorégressive, la production d'images est dominée par la diffusion, et les VAE servent d'auxiliaire dans les modèles de diffusion latente que le module 6 étudiera.

Ce que le fil rouge du cours illustre

Ce cours va construire ces trois familles, dans cet ordre, en gardant à chaque étape le même contexte pédagogique. Les modules 2 à 5 travaillent sur MNIST : les chiffres manuscrits sont assez simples pour qu'un VAE ou un petit GAN tiennent sur un GPU de portable, et assez structurés pour qu'un effondrement des modes se voie à l'œil nu. Les modules 6 à 8 basculent sur CelebA en 64×6464 \times 64 pixels, car la diffusion et les métriques modernes n'ont d'intérêt que sur des images naturelles avec de la variabilité.

La dernière partie du cours (modules 9 et 10) sort de l'image pour élargir au texte et à l'audio, puis aborde la question qui décide de l'usage réel de ces techniques : à qui appartiennent les données d'entraînement, et à qui appartiennent les visages générés ?

En résumé

  • Un modèle discriminatif approche p(yx)p(y \mid x) et sait classer ; un modèle génératif approche p(x)p(x) et sait produire ou détecter du hors distribution.
  • Un modèle génératif utile fournit un mécanisme d'échantillonnage : autorégressif (jeton par jeton) ou par variable latente (tirer zz, transformer en xx).
  • Vraisemblance et qualité perçue ne coïncident pas : les VAE gagnent en vraisemblance, les GAN gagnent en netteté, et les modèles de diffusion arbitrent différemment le compromis.
  • Les trois familles — VAE, GAN, diffusion — sont complémentaires ; leur ordre historique explique les frustrations qu'elles cherchaient chacune à corriger.

Module suivant : le point de départ le plus simple, l'autoencodeur ordinaire, et pourquoi il ne suffit pas à générer.