Blog Info
Blog Info

Un premier coup d'œil aux Réseaux Antagonistes Génératifs

Introduction

Dans la dernière décennie, l'apprentissage automatique (Machine learning) et l'intelligence artificielle ont pris de plus en plus de place dans nos vies. Des véhicules autonomes à la reconnaissance faciale, en passant par la victoire contre des joueurs de classe mondiale dans des jeux en ligne, il n'est pas étonnant que cette technologie possède un énorme potentiel et puisse être dangereusement puissante. Ce document vise le grand public et a pour intention de fournir une compréhension intuitive -et toutefois précise- de ce que sont des Réseaux Antagonistes Génératifs (GANs) et de ce dont ils sont capables, accompagnée de réflexions plus élaborées. N.B. Bien que leur acronyme soit RAG, nous utiliserons l'abbréviation anglaise GAN pour General Adversarial Network, cette dernière étant bien plus courante.

1. Les modèles discriminatifs et génératifs

Dans le machine learning, deux méthodes principales peuvent être suivies. D'un côté, la méthode discriminative peut s'atteler à des problèmes\footnote{dans le sens épistémologique du terme} de classification tels qu'assigner l'étiquette (label) correcte à une image, calculer une valeur de sortie (output) hautement probable à partir de données d'entrée (input) complexes et jamais vues auparavant, et bien plus encore. De l'autre, ce modèle ne peut pas générer des données similaires. Une illustration intuitive d'un modèle discriminatif dans le comportement humain est la capacité à distinguer des signes chinois tout en étant incapable d'en écrire un seul correctement.
C'est là que la méthode générative diffère. Comme son nom le suggère, un modèle utilisant une telle approche peut générer des données qui ressemblent à ce qui lui a été fourni. Ici, pour autant que les données d'entrée soient sélectionées consciencieusement, aucun label n'est nécessaire. Supposons que vous vouliez générer un poème Baudelairien, il serait contreproductif de l'entraîner avec des écrits -non labellisés- venant de Victor Hugo ou Paul Verlaine.

2. Les Réseaux Antagonistes Génératifs

Bien que ces deux approches viennent d'être présentées séparément, rien n'empêche un réseau de les suivre toutes deux. C'est ici que les Réseaux Antagonistes Généraux entrent en jeu. Dans un GAN, un réseau génératif produits des candidats qu'un réseau discriminatif évaluera. En d'autres mots, l'objectif du générateur est de faire croire au discriminateur que les données fournies sont réelles.
Ce type de réseau, présenté en 2014 par Ian Goodfellow et ses collaborateurs [Goo+14], fut une étape énorme en machine learning. Pour illustrer ce propos, regardez cette suite de visages humains générés :

Figure 1: Progrès des GANs en génération de visages humains. Source: Ian Goodfellow sur Twitter

L'évolution ici est stupéfiante. Souvenons-nous qu'avant 2014, les GANs n'existaient tout simplement pas. Il y a une poignée de sites web qui montrent des images GAN-générées de personnes, d'œuvres d'art, de chats or même chevaux produites par StyleGAN2 [ Kar+19] pour les curieux d'entre vous. C'est sans effort -et un exercice intéressant- que l'on peut trouver des applications potentielles et réaliser qu'il en existe une pléthore.

3. Au-delà des GANs

Il existe plein de types de réseaux neuronaux, les réseaux antagonistes génératifs sont juste l'un d'entre eux. La raison pour laquelle je les ai présentés ici est que je les trouve parfaitement placés entre une compréhension intuitive et l'état de la recherche en IA. Je n'ai pas été fort technique ici, car ce n'est pas l'intention de cet article.
De manière assez intéressante, les GANs possèdent leurs limitations. Par exemple, il est impossible de configurer les paramètres d'une image de visage humain en vue de changer, disons, la couleur des cheveux, l'expression du visage ou la forme du nez. Par contre, cela est rendu possible par des Auto-encodeurs Latents Antagonistes (ALAEs, pour Adversarial Latent Autoencoders) [PAD20] qui font usage des espaces latents.
La Figure 2 contient des screenshots d'une vidéo produite par Two Minute Papers sur les ALAEs. Son créateur, Karoly Zsolnai-Fehér, démontre l'usage des curseurs de droite afin de changer les paramètres désirés. Dans le cas des figures 2a et 2b, le curseur mouth-open est changé vers une valeur plus haute. Nous remarquons que les changements des plis du visages sont non seulement présents près de la bouche, mais aussi autour des yeux.

(a): Curseur mouth-open bas
(b): Curseur mouth-open haut
Figure 2: Visages générés paramétrisables produits par un ALAE. Screenshots d'une vidéo de TMP sur le sujet.

4. Discussion

En considérant les informations disponibles et le progrès actuel fait dans la recherche en IA et machine learning, que serait-il réalisable dans la prochaine décennie ? Afin de répondre à une telle question, plusieurs manières de raisonner peuvent être employées. Dans ce cas-ci, j'utiliserai la suivante :

  1. Prendre connaissance des avancements actuels dans le domaines que l'on étudie
  2. Réfléchir à comment (et si) il peuvent être améliorés ou perfectionnés individuellement
  3. Trouver des nouvelles façons de les combiner pour produire des résultats novateurs
Ce dernier point peut être facilité en fusionnant différents sujets ensemble. Essayons avec le machine learning et le cinéma.

Créer un film pourrait-il devenir un travail fait par une seule personne, qui ne requiérerait aucun acteur ni aucun équipement autre qu'un ordinateur ? Nous ne parlons pas d'animation ici mais plutôt de donner un script comme donnée d'entrée à un programme et obtenir un film complet en sortie. Nous avons vu que c'est une tâche sans effort que de générer des images de visages humains et, comme illustré sur la figure 2, de les faire sourire. Pourrions-nous créer un espace latent d'expressions faciales ? Il semblerait que nous puissions le faire [ ZS17]. Un peu plus de recherche et d'entraînement et ce sera bon. Qu'en est-il des mouvements corporels ? Eh bien, en considérant les papiers actuels, cela a l'air prometteur [Sia+20; Par+19a]. Cela pourrait continuer avec du design d'intérieur [Mao+16], des paysages [Par+19b] (Nvidia a mis en ligne un site où l'on peut expérimenter avec leur GAN), la synthèse texte-vers-image [Ree+16], le traitement du langage naturel [Bro+20] et bien plus encore.

Bien que chacun des articles cités aient leurs failles, je conseillerais de regarder la figure 1 à nouveau. Cela devrait donner un indication de la place à l'amélioration qu'il existe pour ces applications. Combiner les technologies évoquées et les laisser suffisamment mûrir créerait les conditions idéales dans lesquelles notre film sans acteur pourrait devenir réalité. Les impacts d'une telle réalisation pourraient être immenses. Par exemple, si cette façon de créer des films devient la norme, c'est toute une industrie qui s'effondrerait. Cela reste bien sûr encore proche de la science-fiction mais les voitures autonomes n'étaient-elles pas de la science-fiction il y a 10 ou 20 ans?

5. Conclusion

La recherche sur l'IA progresse à un rythme considérable et transforme notre société, les exemples que nous avons vus ne sont que la partie émergée d'un iceberg dont nous ignorons la taille. Les possibilités semblent infinies et, tant que des données et une puissance de calcul suffisantes sont fournies, le seul facteur limitant semble être notre imagination (et nos valeurs). Comme pour tout outil puissant, nous devons être vigilants en l'employant, mais l'avenir semble fascinant.

Références

[Bro+20] Tom B. Brown et al. Language Models are Few-Shot Learners. 2020. arXiv: 2005.14165 [cs.CL].
[Goo+14] Ian J. Goodfellow et al. Generative Adversarial Networks. 2014. arXiv: 1406.2661 [stat.ML].
[Kar+19] Tero Karras et al. Analyzing and Improving the Image Quality of StyleGAN. 2019. arXiv: 1912.04958 [cs.CV].
[Mao+16] Xudong Mao et al. Least Squares Generative Adversarial Networks. 2016. arXiv: 1611.04076 [cs.CV].
[PAD20] Stanislav Pidhorskyi, Donald Adjeroh, and Gianfranco Doretto. Adversarial Latent Autoencoders. [preprint]. 2020. arXiv: 2004.04467 [cs.LG].
[Par+19a] Soohwan Park et al. Learning Predict-and-Simulate Policies From Unorganized Human Motion Data. 2019. URL: ICC.pdf.
[Par+19b] Taesung Park et al. Semantic Image Synthesis with Spatially-Adaptive Normalization. 2019. arXiv:1903.07291 [cs.CV].
[Ree+16] Scott Reed et al. Generative Adversarial Text to Image Synthesis. 2016. arXiv: 1605.05396 [cs.NE].
[Sia+20] Aliaksandr Siarohin et al. First Order Motion Model for Image Animation. 2020. arXiv: 2003.00196 [cs.CV].
[ZS17] Yuqian Zhou and Bertram Emil Shi. Photorealistic Facial Expression Synthesis by the Conditional Difference Adversarial Autoencoder. 2017. arXiv: 1708.09126 [cs.CV].