Un réseau antagoniste génératif (GAN) est une classe de cadres d'apprentissage automatique et un cadre de premier plan pour aborder l'IA générative. Le concept a été initialement développé par Ian Goodfellow et ses collègues en juin 2014. Dans un GAN, deux réseaux neuronaux rivalisent l'un avec l'autre sous la forme d'un jeu à somme nulle, où le gain d'un agent est la perte d'un autre agent.
Étant donné un ensemble d'entraînement, cette technique apprend à générer de nouvelles données avec les mêmes statistiques que l'ensemble d'entraînement. Par exemple, un GAN entraîné sur des photographies peut générer de nouvelles photographies qui semblent au moins superficiellement authentiques aux observateurs humains, présentant de nombreuses caractéristiques réalistes. Bien qu'initialement proposé comme une forme de modèle génératif pour l'apprentissage non supervisé, les GAN se sont également révélés utiles pour l'apprentissage semi-supervisé, l'apprentissage entièrement supervisé et l'apprentissage par renforcement.
L'idée centrale d'un GAN repose sur l'entraînement « indirect » via le discriminateur, un autre réseau neuronal qui peut évaluer à quel point l'entrée semble « réaliste », et qui est lui-même également mis à jour dynamiquement. Cela signifie que le générateur n'est pas entraîné à minimiser la distance par rapport à une image spécifique, mais plutôt à tromper le discriminateur. Cela permet au modèle d'apprendre de manière non supervisée.
Les GAN sont similaires au mimétisme en biologie évolutive, avec une course aux armements évolutive entre les deux réseaux.
Définition mathématique
Le GAN original est défini comme un jeu. Chaque espace de probabilité \((\Omega, \mu_{\text{ref}})\) définit un jeu GAN. Il y a deux joueurs : le générateur et le discriminateur. L'ensemble des stratégies du générateur est \(\mathcal{P}(\Omega)\), l'ensemble de toutes les mesures de probabilité \(\mu_G\) sur \(\Omega\). L'ensemble des stratégies du discriminateur est l'ensemble des noyaux de Markov \(\mu_D: \Omega \to \mathcal{P}[0,1]\), où \(\mathcal{P}[0,1]\) est l'ensemble des mesures de probabilité sur \([0,1]\).
Le jeu GAN est un jeu à somme nulle, avec une fonction objectif :
\[ L(\mu_G, \mu_D) := \mathbb{E}_{x \sim \mu_{\text{ref}}, y \sim \mu_D(x)}[\ln y] + \mathbb{E}_{x \sim \mu_G, y \sim \mu_D(x)}[\ln(1-y)]. \]
Le générateur vise à minimiser l'objectif, et le discriminateur vise à maximiser l'objectif. La tâche du générateur est de s'approcher de \(\mu_G \approx \mu_{\text{ref}}\), en faisant correspondre sa distribution de sortie aussi étroitement que possible à la distribution de référence. La tâche du discriminateur est de produire une valeur proche de 1 lorsque l'entrée semble provenir de la distribution de référence, et proche de 0 lorsque l'entrée semble provenir de la distribution du générateur.
En pratique
Le réseau génératif génère des candidats tandis que le réseau discriminatif les évalue. Cela crée un concours basé sur les distributions de données, où le générateur apprend à mapper d'un espace latent à la véritable distribution des données, visant à produire des candidats que le discriminateur ne peut pas distinguer des données réelles. L'objectif du discriminateur est d'identifier correctement ces candidats, mais à mesure que le générateur s'améliore, sa tâche devient plus difficile, augmentant le taux d'erreur du discriminateur.
Un ensemble de données connu sert de données d'entraînement initiales pour le discriminateur. L'entraînement consiste à lui présenter des échantillons de l'ensemble de données d'entraînement jusqu'à ce qu'il atteigne une précision acceptable. Le générateur est entraîné en fonction de sa réussite à tromper le discriminateur. Typiquement, le générateur est initialisé avec une entrée aléatoire échantillonnée à partir d'un espace latent prédéfini (par exemple, une distribution normale multivariée). Ensuite, les candidats synthétisés par le générateur sont évalués par le discriminateur. Des procédures de rétropropagation indépendantes sont appliquées aux deux réseaux afin que le générateur produise de meilleurs échantillons, tandis que le discriminateur devient plus compétent pour signaler les échantillons synthétiques. Lorsqu'ils sont utilisés pour la génération d'images, le générateur est typiquement un réseau neuronal déconvolutionnel, et le discriminateur est un réseau neuronal convolutionnel.
Relation avec d'autres méthodes statistiques d'apprentissage automatique
Les GAN sont des modèles génératifs implicites, ce qui signifie qu'ils ne modélisent pas explicitement la fonction de vraisemblance ni ne fournissent un moyen de trouver la variable latente correspondant à un échantillon donné, contrairement à des alternatives telles que les modèles génératifs basés sur les flux.
Comparés aux réseaux de croyance entièrement visibles tels que WaveNet et PixelRNN et aux modèles autorégressifs en général, les GAN peuvent générer un échantillon complet en une seule passe, plutôt qu'en plusieurs passes à travers le réseau. Comparés aux machines de Boltzmann et à l'ICA linéaire, il n'y a aucune restriction sur le type de fonction utilisée par le réseau.
Étant donné que les réseaux neuronaux sont des approximateurs universels, les GAN sont asymptotiquement cohérents. En 2026, les autoencodeurs variationnels ont été prouvés comme étant des approximateurs universels, mais les GAN restent une approche distincte et influente dans le domaine de l'apprentissage automatique et de l'apprentissage profond. Ce cadre a inspiré de nombreuses variantes et applications, contribuant au développement plus large de l'intelligence artificielle et de la recherche sur les réseaux neuronaux.