Travaux pratiques : DDPM

Travaux pratiques : DDPM#

Pour ce TP nous reprendrons des ressources externes pour expérimenter avec le modèle de diffusion (DDPM) de (Ho et al. 2020). Le but sera de bien faire le lien entre les éléments de cours (expression de la loss, noise scheduler, génération, etc.) et les blocs de code repris.

Ressources#

  • Modèle de diffusion simple pour le dataset two-moons [blog] [notebook]

  • Exemple plus modulaire (mais non annoté) pour d’autres expériences sur données 2D [github]

  • Modèle de diffusion U-net pour la génération d’images (PyTorch) [Blog huggingface]

  • Modèle de diffusion U-net pour la génération d’images (Keras 2) [Exemples Keras]

Pour aller plus loin#

  • Reprendre les exemples U-net sur d’autre dataset d’images basse résolution (e.g., MNIST).

  • Expérimeter différent noise scheduler et/ou la réduction du nombre de time-steps.

  • Pour un modèle DDPM entrainé: tester la génération via DDIM eq. (12) de (Song et al., 2021).