Introduction aux réseaux neuronaux adversoriels génératifs (GAN) #
Les réseaux adversaires génératifs (GAN) sont des modèles génératifs élaborés en combinant deux architectures de réseaux neuronaux : le générateur et le discriminateur. Dans cette configuration, les deux réseaux s’affrontent en tant qu' »adversaires ». Le rôle principal du générateur est de créer de nouveaux échantillons de données et celui du discriminateur est d’évaluer leur authenticité en les distinguant des échantillons réels.
Les GAN utilisent généralement des techniques d’apprentissage non supervisé pour apprendre à partir de la distribution des données sans avoir besoin d’étiquettes prédéfinies. Grâce à la relation antagoniste (concurrence) entre le générateur et le discriminateur, le modèle s’améliore progressivement pour produire des sorties qui s’alignent étroitement sur la distribution attendue, créant ainsi de nouveaux échantillons réalistes qui sont difficiles à différencier des échantillons réels.
Leur capacité à générer des données réalistes et de haute qualité a rendu les GAN populaires dans divers domaines. Ils sont largement utilisés dans des applications artistiques telles que le transfert de style et la création de données synthétiques.
Histoire des GAN #
L’histoire des GAN a commencé comme une solution au besoin d’échantillons de données de haute dimension, réalistes et diversifiés. Les approches traditionnelles d’apprentissage automatique ont souvent eu du mal à traiter des données complexes et variées du monde réel, ce qui a incité les GAN à émerger comme une solution qui a élargi les possibilités des modèles génératifs. Cette vue d’ensemble offre un historique concis, soulignant les différents efforts des contributeurs clés dans l’évolution des GANs.
2014 : Origine des GAN
Goodfellow et al. (2014) ont proposé le cadre GAN, en introduisant les modèles générateur (G) et discriminateur (D) pour estimer les modèles génératifs sans s’appuyer sur les chaînes de Markov ou les réseaux d’inférence approximatifs déroulés, qui étaient courants dans les modèles génératifs de l’époque.
Les GAN ont été remarqués pour leur capacité à générer des images réalistes, ce qui a suscité un intérêt accru pour la recherche dans ce domaine.
2015 : Introduction du DCGAN
Radford et al. (2015) ont introduit les Deep Convolutional Generative Adversarial Networks (DCGAN), qui ont établi de nouvelles références pour l’architecture des GAN, en se concentrant sur la génération d’images réalistes par le biais de réseaux convolutionnels profonds. Cette innovation a permis d’améliorer la stabilité et les performances des tâches de génération d’images. Elle a introduit des concepts novateurs tels que l’arithmétique des images, qui a permis d’extraire des caractéristiques d’espaces latents spécifiques en conditionnant des images sur d’autres.
Cependant, DCGAN a été confronté à des limitations dans la résolution d’image de la sortie générée, ce qui a conduit au développement de BigGANs par Brock et al. (2018). Cette solution génère des images haute résolution et réalistes. BigGAN est reconnu comme l’un des modèles GAN les plus grands et les plus intensifs en termes de calcul à ce jour.
2017 : GAN progressif
Chez NVIDIA, Karras et al. (2017) ont développé Progressive GAN, qui met à l’échelle les images progressivement, en partant de résolutions plus petites (comme 4 x 4 ou 16 x 16) et en augmentant progressivement les tailles. Cette architecture a permis d’améliorer la stabilité et le détail de l’image générée.
2018 : Style GAN 1
Dans le modèle Style GAN 1, chaque générateur est conceptualisé comme un style distinct, chaque style influençant les effets à des échelles spécifiques, telles que les styles grossier (structure globale ou disposition), moyen (expressions faciales ou motifs) et délicat (éclairages et ombres ou forme du nez).
Les chercheurs y sont parvenus en cartographiant les images de l’espace latent « z » à l’espace latent intermédiaire « w » par l’intermédiaire d’un réseau de cartographie dédié.
2019 : Style GAN 2
StyleGAN 2 a amélioré son prédécesseur en traitant les artefacts tels que les artefacts de phase et de goutte d’eau afin d’améliorer la qualité et le réalisme de l’image. Il est devenu un modèle de pointe dans les GAN par rapport à ses prédécesseurs.
Le modèle GAN a connu de nombreuses améliorations depuis 2014. Malgré son impact transformateur sur la modélisation générative et la synthèse d’images, des préoccupations éthiques sont apparues en raison de problèmes tels que la technologie deepfake et la violation de la propriété intellectuelle, comme le cas notable de Robbie Barrat utilisant des GAN pour l’art de l’IA.
Ces préoccupations persistent, mais le modèle GAN continue de jouer un rôle crucial dans le domaine plus large de l’intelligence artificielle et reste une technologie générative importante.
L’architecture des GAN #
Au cœur du cadre GAN se trouve l’apprentissage contradictoire, qui implique le générateur et les réseaux de discrimination qui travaillent l’un avec l’autre et l’un contre l’autre dans le cadre de l’architecture.
Cette configuration est un jeu à somme nulle dans la théorie des jeux, où le succès d’un participant se fait aux dépens de l’autre. Les réseaux travaillent ensemble en adaptant les données d’apprentissage et en apprenant à partir des données en ajustant les poids en fonction des erreurs afin de minimiser la perte. Chaque réseau s’entraîne à travailler contre l’autre. L’objectif est d’atteindre un état d’équilibre dans lequel le discriminateur ne peut pas distinguer de manière fiable les échantillons réels des échantillons fictifs.
Le générateur initie le processus dans les GAN en produisant des données artificielles à partir d’une source de bruit aléatoire. Ces données subissent des améliorations répétées au fur et à mesure que le générateur améliore sa capacité à imiter la distribution naturelle des données, ce qui donne des résultats qui ressemblent de plus en plus à des données réelles. Simultanément, le discriminateur évalue le degré d’authenticité des données produites par le générateur, apprenant progressivement à différencier les données réelles des données générées.
Au fur et à mesure que le discriminateur s’améliore dans l’identification des données générées, il pousse le générateur à créer des données de plus en plus réalistes. Au fur et à mesure que le processus de formation se poursuit, il arrive un moment où le discriminateur éprouve des difficultés à faire la distinction entre les données générées et les données réelles.
Le rôle du générateur
Le générateur s’initialise en générant des données synthétiques à partir d’un bruit aléatoire. Ces données initiales sont souvent très éloignées de la sortie souhaitée, mais elles servent de point de départ à la formation du réseau. Le générateur observe ensuite la distribution des données réelles et ajuste ses sorties en conséquence. L’objectif est de générer des données qui ressemblent étroitement aux données réelles, de sorte que le discriminateur ne puisse pas faire la différence. Le processus d’apprentissage (ajustement des poids pour minimiser l’erreur) est progressif, le générateur apprenant à chaque interaction avec le discriminateur.
Le rôle du discriminateur
Le rôle du discriminateur dans l’architecture du GAN est d’évaluer l’authenticité des données produites par le générateur. Pour ce faire, il fait la distinction entre les données réelles et les données synthétiques créées par le générateur.
Le discriminateur s’adapte aux données d’apprentissage et apprend à discerner les différences entre les données réelles et les données synthétiques du générateur. L’objectif du discriminateur est d’attribuer des probabilités élevées aux points de données réelles et des probabilités faibles aux points synthétiques. Au fil du temps, la capacité du discriminateur à distinguer les données réelles et synthétiques s’affine, fournissant au générateur une cible mobile contre laquelle il peut s’améliorer.
Dans ce contexte, il estime la probabilité P(Y | X = x) qu’un point donné soit réel, en ajustant les probabilités pour attribuer une valeur de 1 aux exemples réels et de 0 aux points de données fictifs.
Comment les GAN apprennent : Formation et rétropropagation #
Le processus d’apprentissage des GAN implique une optimisation contradictoire du générateur et du discriminateur. En d’autres termes, l’objectif de ce processus est de trouver un optimum global pour les fonctions de perte des deux réseaux. Cette optimisation permet d’atteindre un état dans lequel le générateur reproduit effectivement la distribution des données réelles.
Le générateur cherche à minimiser sa fonction de perte, qui est généralement une mesure de la facilité avec laquelle le discriminateur peut identifier ses sorties comme fausses. Inversement, le discriminateur cherche à maximiser sa fonction de perte, qui reflète sa capacité à identifier correctement les données réelles et les données générées.
La fonction de perte du générateur
Voici la représentation mathématique de la fonction de perte du générateur :
E représente l’espérance sur l’espace latent (z) et la distribution des données réelles (x).
L’objectif est de minimiser la combinaison de deux termes de probabilité logarithmique :
-
log(D(G(z)) représente la probabilité logarithmique que le discriminateur (D) classe les données générées comme réelles.
-
log(1 – D(x)) représente la probabilité logarithmique que le discriminateur identifie correctement les données réelles comme étant réelles.
La fonction de perte du discriminateur
Voici la représentation mathématique de la fonction de perte du discriminateur :
La fonction se compose de deux termes :
-
log(D(G(z)) qui mesure la probabilité que le discriminateur attribue aux données générées, en cherchant à la maximiser.
-
Le second terme, log(1 – D(x)) évalue la probabilité attribuée par le discriminateur aux données réelles, en s’efforçant de la minimiser.
L’objectif global est de trouver les paramètres optimaux du générateur qui rendent les données générées indiscernables des données réelles.
Objectif d’apprentissage unifié
En combinant les fonctions de perte de chaque réseau, la formule de l’objectif d’apprentissage unifié montre l’essence de l’ensemble du processus d’apprentissage. Elle met l’accent sur la minimisation de la perte du générateur et la maximisation de la perte du discriminateur, ce qui amène les deux réseaux à un point optimal.
Rétropropagation dans les GAN
La rétropropagation dans le réseau calcule les gradients des fonctions de perte, ce qui permet au modèle d’ajuster ses paramètres et d’améliorer progressivement ses performances. En règle générale, elle implique l’ajustement des erreurs en amont du réseau, ce qui permet d’affiner les réseaux de générateurs et de discriminateurs en minimisant leurs pertes.
Évaluation des performances des GAN
L’évaluation des performances des GAN est plus complexe que celle des modèles traditionnels d’apprentissage automatique. Les modèles génératifs sont évalués à l’aide d’une combinaison de mesures portant sur différents aspects des résultats générés. Certaines mesures, comme le score d’initialisation (IS), la distance d’initialisation de Frechet (FID), l’évaluation humaine, la précision, le rappel et le score F1, sont combinées pour évaluer les performances du GAN en fonction de la tâche pour laquelle il est utilisé.
En général, ces mesures évaluent différents aspects des performances, tels que la qualité de l’image, la diversité, la similarité avec la distribution des données réelles et la capacité à tromper un discriminateur. L’objectif final est de s’assurer que le générateur produit des échantillons de haute qualité, diversifiés et réalistes.
Les GAN en action : Applications dans le domaine de la vision par ordinateur #
Les GAN prennent vie dans le domaine de la vision par ordinateur avec des applications transformatrices allant de la synthèse d’images à la détection d’objets. Voici quelques applications des GAN.
Génération et amélioration d’images
Des modèles comme StyleGAN, BigGAN et d’autres GAN conditionnés ont démontré une grande efficacité dans la génération d’images ou de croquis réalistes en haute résolution. Leur capacité à capturer des détails fins dans les images et à produire des résultats variés les rend utiles pour diverses tâches, de la création d’images artistiques à la génération d’ensembles de données synthétiques pour l’entraînement de modèles ML.
Augmentation des données pour l’apprentissage automatique
L’augmentation des données améliore les performances des modèles dans les tâches de vision par ordinateur et d’apprentissage automatique en diversifiant l’ensemble de données d’entraînement. Lorsque des variations réalistes d’ensembles de données existants sont créées avec des GAN pour une tâche de vision par ordinateur, la robustesse et la force de généralisation du modèle peuvent être améliorées, ce qui réduit les risques de surajustement. Cela est particulièrement utile dans les domaines où les données sont limitées et difficiles à collecter.
Exemples concrets et études de cas
CycleGAN facilite la traduction d’images dans le domaine de l’imagerie médicale à travers différentes modalités, ce qui facilite les tâches de diagnostic ou la conversion vocale. Les GAN sont également utilisés pour le sous-titrage d’images ou la synthèse vidéo, ce qui permet de générer des légendes descriptives pour les images et de créer des séquences vidéo réalistes. Ces technologies ont trouvé une utilisation importante dans les environnements virtuels et les simulations, entre autres applications.
Relever les défis des GAN #
Malgré leurs nombreuses applications et avancées, les GAN sont confrontés à plusieurs défis.
Problèmes de stabilité et de convergence
Lors de l’entraînement des GAN, les problèmes de stabilité et de convergence (les réseaux adversaires ont des difficultés à atteindre un état stable et désiré) sont généralement un sujet de préoccupation. Des techniques telles que la normalisation spectrale et la croissance progressive ont permis de stabiliser le processus de formation et de résoudre ces problèmes. Différentes techniques d’optimisation (comme l’utilisation de différents taux d’apprentissage pour le générateur et le discriminateur) peuvent contribuer à une formation plus stable et plus fiable.
Effondrement du mode et diversité
L’effondrement de mode se produit lorsqu’un GAN ne parvient pas à capturer toute la variabilité des données d’apprentissage, ce qui entraîne des résultats répétitifs ou limités. Pour relever ce défi, il faut incorporer la discrimination par minibatch ou la régularisation de la cohérence afin de rendre les échantillons générés plus cohérents. L’utilisation de GAN à croissance progressive et conditionnels s’est avérée utile pour garantir que les échantillons générés sont variés et semblent réels. Cela permet d’éviter l’effondrement du mode générateur.
Considérations éthiques et prévention des abus
La communauté des chercheurs et les médias grand public se sont montrés préoccupés par la technologie GAN, notamment en ce qui concerne la fabrication de Deepfakes. Des efforts sont en cours pour développer de meilleures méthodes de détection des Deepfakes et rendre l’IA plus transparente. Les efforts en matière d’IA responsable et les lignes directrices éthiques visent à réduire les inconvénients potentiels d’une mauvaise utilisation des GAN, comme la diffusion de fausses informations et les atteintes à la vie privée.
L’avenir des GAN : Au-delà de la génération d’images #
Les GAN ont parcouru un long chemin avec de nombreuses améliorations, nous donnant différentes versions comme le GAN de Wasserstein, qui aide à la stabilité et réduit les problèmes comme l’effondrement de mode ; le GAN conditionnel, qui est spécifique à une tâche et le CycleGAN (idéal pour les conversions vocales ou audio) ; le SpecGAN, le WaveGAN et le GANsynth, qui peuvent être utilisés pour générer des spectrographies et de l’audio, parmi d’autres innovations. Les chercheurs explorent également la manière dont les GAN peuvent fonctionner avec de nouveaux outils d’apprentissage profond tels que les transformateurs, les réseaux neuronaux informés par la physique, les modèles de langage étendu et les modèles de diffusion.
séries temporelles et segmentation sémantique. Ces avancées, et bien d’autres encore, illustrent l’évolution constante de la recherche sur les GAN. Pour l’avenir, les applications potentielles des GAN dans le domaine de la vision par ordinateur et au-delà sont vastes et diverses, ce qui en fait un domaine de recherche et de développement actif et prometteur.
- Les films à regarder sur l’intelligence artificielle - 4 février 2025
- NotebookLM et Veed.io : Créez des podcasts immersifs en un temps record - 4 février 2025
- SUNO : Créez des musique avec IA - 3 février 2025