ETAT DE L'ART - Les modèles génératifs appliqués aux images

Présentation des intervenants
Cet atelier a été animé par Ugo Tanielian, ML Researcher chez Criteo

Introduction
L'année 2022 a été riche en IA générative dans le domaine de la Computer Vision, avec le succès impressionnant des modèles de diffusion.
On a vu en quelques mois les prouesses réalisées par différents modèles tels que : 

  • DALLE2 (OpenAI)
  • Imagen (Google)
  • Stable Diffusion (RunWayML)
  • MidJourney. 

Durant cet état de l’art, Ugo nous a retracé l’évolution des modèles génératifs depuis 2014 afin de mieux comprendre les modèles d’aujourd’hui.

A retenir de l’état de l’art
Les modèles actuels se basent sur une des trois architectures suivantes : 

  • Generative Adversarial Networks (GANs) : Vanilla GAN, Wasserstein GAN, cinditionnal GAN
  • Variational AutoEncoders (VAEs)
  • Diffusion et Score-based models 

Generative Adversarial Networks
Ce sont les premiers modèles de génération d’images apparus en 2014. Un GAN est la combinaison de 2 réseaux de neurones qui sont en concurrence. Le premier est le générateur et son but est de générer des images de même nature que le jeu de données d'entraînement à partir d’un vecteur gaussien. Le second est le discriminateur et son objectif est de différencier les images générées (fake) des données d'entraînement (real). Il y a une concurrence entre le générateur qui doit tromper le discriminateur et ce dernier qui doit reconnaître les images générées.
Avantages

  • les images générées sont de très bonnes qualités
  • le temps de génération est très court

Inconvénients

  • les modes peu représentés dans les données ne sont pas souvent générés
  • les images générées manquent de diversité


Variational AutoEncoders
Un AutoEncoder est un réseau de neurones auto supervisés dont le but est le de compresser la donnée dans un espace de plus petite dimension (appelé espace latent) avec un encodeur et de la décompresser ensuite afin de se rapprocher le plus possible de la donnée originale. L’idée est de travailler sur l’espace latent et ainsi générer des images en grande dimension en partant d’un vecteur de très petite dimension.
Le souci est qu’il est impossible de connaître la distribution de probabilité de ce vecteur latent. L’astuce est de fixer la distribution que suit ce vecteur par une loi normale par exemple.
Avantages

  • le temps de génération est très court
  • les images générées sont diverses et variées
  • tous les modes sont bien couverts

Inconvénients

  • les images générées ne sont pas de bonne qualité


Diffusion & Score-based models
Le principe des modèles de diffusion est de bruiter itérativement une image (jusqu’à obtenir une image de bruit gaussien) et d’apprendre le processus inverse qui permet de débruiter cette dernière. Une fois le modèle suffisamment entraîné, il prend en entrée une image de bruit gaussien et génère itérativement une image de moins en moins bruitée jusqu'à obtenir une image de bonne qualité.
Avantages

  • les images générées sont de bonne qualité 
  • les images générées sont diverses et variées
  • tous les modes sont bien couverts

Inconvénients

  • le temps de génération est assez long


Si ce sujet vous intéresse et que vous souhaitez en apprendre plus, n’hésitez pas à revoir l’état de l’art sur notre chaîne Youtube et les slides sur notre site. Vous pouvez également vous exercer à coder ce genre de modèles grâce aux 3 Notebooks du cas pratique sur notre Github.

Share