Autoencoders Adversarial Latent – Vers la science des données
Python-PyTorch
Génération de visages et d’expressions par le simple code
Il y a quelques années, les modèles de reconnaissance faciale prenaient d’assaut Internet. Les gens ont été complètement renversés par la façon dont un ordinateur peut identifier un visage et, dans certains cas, peut même prédire l’âge! La reconnaissance faciale s’est rapidement infiltrée dans la technologie pour les masses – à tel point que presque tous les smartphones d’aujourd’hui en sont bénis. Il est révolu le temps où un logiciel d’identification du visage ou un système de sécurité coûterait un bras et une jambe!
Cependant, la technologie a évolué à un rythme sans précédent depuis l’avènement des systèmes de détection des visages. Le réseau neuronal d’aujourd’hui peut non seulement identifier ou détecter des visages, mais aussi générer des visages – visages que vous et moi ne pouvons pas discerner des vrais visages! Vous voulez essayer? Vérifier cette sur 😉.
Avec l’avènement des réseaux adverses génératifs, la génération de visages a été un domaine de recherche important dans le domaine de la vision par ordinateur.Dans cet article, je vais énoncer un type particulier d’autoencodeur qui aide à générer des visages mieux que jamais – (Alerte aux grands mots!) Adversarial Latent Autoencoder (ALAE) – un travail de recherche dont pré-impression a été mis à disposition sur Arxiv le 9 avril 2020.
Pour saisir le concept derrière les encodeurs automatiques latents (ALAE), passons d’abord par ses modèles d’inspiration: les réseaux adverses génératifs et les encodeurs automatiques.
Réseau Adversaire Génératif (GAN)
Un réseau contradictoire génératif est un réseau double, les deux parties étant un réseau discriminateur et un réseau générateur. Ce qui est intéressant avec les GAN, c’est que le générateur et les réseaux de discriminateurs se font constamment concurrence – et se forcent donc mutuellement à faire ressortir le meilleur d’eux-mêmes.
La tâche du générateur est de créer des données que le discriminateur ne sera pas en mesure de discriminer les données réelles. En d’autres termes, le générateur essaie de former une estimation de la véritable distribution des données. Un générateur idéal serait celui qui a déterminé la véritable distribution des données et peut ainsi générer des données infinies. Le réseau discriminateur, quant à lui, n’est qu’un réseau de classificateurs – il essaie de classer les données qui lui sont transmises comme réelles ou fausses.
Un autoencodeur se compose structurellement d’un encodeur, d’un décodeur et d’un goulot d’étranglement. Il s’agit d’un algorithme d’apprentissage non supervisé qui essaie d’apprendre la fonction d’identité et de fournir une sortie aussi proche de l’entrée que possible.
En savoir plus sur les encodeurs automatiques ici. Faites-moi savoir si vous souhaitez un article dédié aux encodeurs automatiques dans les commentaires!
Maintenant que nous avons une idée de base des encodeurs automatiques et des réseaux contradictoires génératifs, commençons par les encodeurs automatiques latents.
ALAE présente une architecture Autoencoder qui est générale et a une puissance génératrice comparable aux GAN tout en apprenant une représentation moins intriquée. Pour avoir une meilleure idée de la façon dont les ALAE tirent le meilleur parti des deux mondes, examinons l’architecture du modèle.
Architecture
Les travaux de recherche introduisent une nouvelle architecture en modifiant le paradigme original du GAN. L’architecture proposée définit le générateur et le discriminateur comme une composition sur 2 fonctions –
De nombreuses hypothèses importantes ont été émises lors de la définition du générateur et des réseaux discriminateurs –
- On suppose que les espaces latents à l’interface entre F et G et entre E et D sont les mêmes, représentés par W.
- F est supposé être une carte déterministe tandis que G et E peuvent être stochastiques.
- On suppose également que G dépend éventuellement d’une entrée bruitée indépendante η qui a une distribution fixe connue. Cela permet de créer un générateur stochastique plus général.
Une pratique courante lors de la définition des encodeurs automatiques, en général, est qu’une distribution latente cible souhaitée est définie pour l’espace latent – une distribution à laquelle l’encodeur est formé pour correspondre. L’ALAE, d’autre part, n’impose pas la distribution latente pour correspondre à une distribution cible spécifique. La seule contrainte dans la distribution latente est que la distribution de la sortie de E doit être la même que celle à l’entrée de G.S’accrochant à cette contrainte, le processus d’apprentissage décide ce qui est le mieux pour le modèle.
Voyons l’image de l’architecture –
Il s’agit de l’architecture générale d’ALAE. Vous vous demandez peut-être pourquoi l’architecture est abstraite – pourquoi elle n’est pas construite avec des couches convolutionnelles et des activations et autres. C’est parce que ce n’est que le concept général de l’architecture ALAE. Nous ne définissons pas ici l’architecture complète. L’architecture complète dépend de l’endroit où nous utilisons ALAE en tant qu’encodeur automatique.
StyleALAE utilise le StyleGAN générateur basé sur avec l’encodeur automatique Adversarial Latent. L’architecture peut être exprimée comme –
Le générateur est le réseau qui a été adapté à partir de l’architecture StyleGAN tandis que le codeur est l’architecture adaptée à partir d’ALAE. L’encodeur est conçu symétriquement au réseau du générateur de manière à capturer les informations de style de l’image. Des couches de normalisation d’instance sont ajoutées pour obtenir les écarts moyens et standard pour chaque canal, tirant efficacement la représentation de style de chaque niveau.
StyleALAE prend l’aide d’ALAE et de StyleGAN pour élever la barre pour la génération de visage et d’expression en utilisant l’intelligence artificielle. L’implémentation officielle du modèle StyleALAE peut être trouvée ici.
Voyons ce que le modèle est capable de réaliser –
Oui – c’est une image générée! Vous avez, n’est-ce pas? 😉
En savoir plus sur ALAE grâce au pré-impression chez arxiv et assurez-vous également de bien lire le réseau StyleGAN. Faites-moi savoir si vous êtes coincé quelque part! – heureux d’aider 😄.
Hmrishav Bandyopadhyay est un étudiant de 2e année au département d’électronique et de télécommunications de l’université de Jadvapur, en Inde. Ses intérêts résident dans le Deep Learning, la vision par ordinateur et le traitement d’images. On peut le joindre à – hmrishavbandyopadhyay@gmail.com || https://hmrishavbandy.github.io