Algorithme génératif : définition et application en deep learning

Algorithme génératif : définition et application en deep learning L'algorithme génératif permet de concevoir une image ou toute autre représentation numérique. En IA, il existe plusieurs cas d'usage, notamment les generative adversarial networks ou les autoencodeurs.

Qu’est-ce qu’un algorithme génératif ?

Comme son nom l’indique, l’algorithme génératif reproduit ou modélise un élément à partir de données spécifiques, par exemple une image codée en langage binaire. Sur la base de l’apprentissage non supervisé, cette catégorie d’algorithme peut recourir à un réseau de neurones artificiels. L’idée est de traiter automatiquement un texte, un son ou une image en vue de générer une imitation ou de créer un modèle de reconnaissance d'objets ou de caractères et de discours.

Les champs d’application de l'algorithme génératif sont nombreux. Les algorithmes génératifs peuvent par exemple servir à générer des tableaux ou des photos originales à partir de bases de données picturales. En pharmacologie et en chimie, les chercheurs seraient en mesure de découvrir de nouvelles structures moléculaires grâce à ce type d'algorithme. L'algorithme génératif est également un enjeu clé dans le domaine de la bio-informatique et des neurosciences. Plus globalement, il permet une meilleure compréhension des données.

Un modèle profond génératif, c’est quoi ?

Le modèle profond génératif ou deep generative model combine des modèles génératifs avec des réseaux de neurones. Il existe trois grands types de deep generative model :

  1. L'auto-encodeur variationnel ou variational autoencoder (VAE) modélise les données d'apprentissage via une couche neuronale compressée et cachée en vue de les répliquer ensuite. A la différence d'un auto-encodeur classique, un VAE reprend au sein de cette couche cachée la distribution des données d'entrée, par exemple une représentation gaussienne. 
  2. Les processus autorégressif ou auto-regressive models (AR) se présentent sous la forme de modèles profonds génératifs contant des centaines de millions de paramètres. On en retrouve dans le traitement automatique du langage naturel ou natural language processing (GPT-2 , GPT-3) ou encore dans la reconnaissance d'images (BigGAN, VQ-VAE).
  3. Le generative adversarial Network (GAN) combine deux réseaux de neurones : un réseau de neurones génératif d'une part, un réseau de neurones discriminateur d'autre part (cf. explication ci-dessous).

Quid des réseaux antagonistes génératifs ou generative adversarial networks (GAN) ?

Les réseaux antagonistes génératifs ou generative adversarial networks (GAN) sont les principaux bénéficiaires de l’algorithme génératif. Ils usent des principes évoqués précédemment, comme le modèle génératif ou l’apprentissage non supervisé.

A partir de la théorie des jeux, ils confrontent deux réseaux : l’un est générateur, tandis que le second est discriminateur. Un dispositif qui permet de déterminer et d’optimiser le niveau de réalisme du travail de conception. Le GAN sert essentiellement à la modélisation d’images sur la base d’exemples réels. Le principe s’applique pour les modèles génératifs profonds, ainsi que les opérations de morphing qui nécessitent l’exploitation d’un autoencodeur (AE).