Que sont les GAN? Comment et pourquoi vous devriez les utiliser!



Cet article couvre l'explication détaillée de `` Que sont les GAN '' avec les limites et les défis couvrant le processus de formation et la mise en œuvre des cas d'utilisation.

Les Réseaux Adversaires Génératifs ou GAN sont une approche de modélisation générative utilisant L'apprentissage en profondeur pour former le modèle de manière intelligente pour générer des données en utilisant l'approche sous-modèle. Dans cet article, nous essaierons de comprendre en détail «Que sont les GAN». Les sujets suivants sont traités dans cet article:

Que sont les modèles génératifs?

Les modèles génératifs ne sont rien d'autre que les modèles qui utilisent un approche. Dans un modèle génératif, il y a des échantillons dans les données, c'est-à-dire des variables d'entrée X, mais il lui manque la variable de sortie Y. Nous utilisons uniquement les variables d'entrée pour entraîner le modèle génératif et il reconnaît les modèles des variables d'entrée pour générer une sortie inconnue et basé uniquement sur les données d'entraînement.





Dans , nous sommes plus alignés sur la création de modèles prédictifs à partir des variables d'entrée, ce type de modélisation est connu sous le nom de modélisation discriminative. Dans un problème de classification, le modèle doit déterminer à quelle classe appartient l'exemple. D'autre part, des modèles non supervisés sont utilisés pour créer ou générer de nouveaux exemples dans la distribution d'entrée.

Pour définir les modèles génératifs en termes simples, nous pouvons dire que les modèles génératifs sont capables de générer de nouveaux exemples à partir de l’échantillon qui sont non seulement similaires à d’autres exemples, mais qui sont également indiscernables.



L'exemple le plus courant de modèle génératif est un qui est plus souvent utilisé comme modèle discriminant. D'autres exemples de modèles génératifs incluent le modèle de mélange gaussien et un exemple plutôt moderne qui est les réseaux d'adversaires généraux. Essayons de comprendre que sont les GAN?

Que sont les réseaux conflictuels génératifs?

Les réseaux opposés génératifs ou GAN sont un modèle génératif basé sur l'apprentissage en profondeur qui est utilisé pour l'apprentissage non supervisé. Il s'agit essentiellement d'un système dans lequel deux Les réseaux de neurones se concurrencer pour créer ou générer des variations dans les données.

Il a été décrit pour la première fois dans un article en 2014 par Ian Goodfellow et une théorie de modèle standardisée et très stable a été proposée par Alec Radford en 2016, connue sous le nom de DCGAN (Deep Convolutional General Adversarial Networks). La plupart des GAN existants utilisent l'architecture DCGAN.



L'architecture des GAN se compose de deux sous-modèles appelés Modèle de générateur et le Modèle de discriminateur. Essayons de comprendre comment fonctionnent réellement les GAN.

Comment ça marche?

Pour comprendre le fonctionnement des GAN, décomposons-le.

  • Génératif - Cela signifie que le modèle suit le approche et est un modèle génératif.
  • Adversaire - Le modèle est formé dans un contexte contradictoire
  • Réseau - Pour la formation du modèle, utilise les réseaux de neurones comme algorithmes d'intelligence artificielle.

Dans les GAN, il existe un réseau de générateurs qui prélève un échantillon et génère un échantillon de données, et après cela, le réseau Discriminator décide si les données sont générées ou extraites de l'échantillon réel à l'aide d'un binaire. problème avec l'aide d'une fonction sigmoïde qui donne la sortie dans la plage de 0 à 1.

organigramme - que sont les gnas - edureka

Le modèle génératif analyse la distribution des données de telle manière qu'après la phase d'apprentissage, la probabilité que le discriminateur fasse une erreur soit maximisée. Et le discriminateur, d'autre part, est basé sur un modèle qui évaluera la probabilité que l'échantillon provienne des données réelles et non du générateur.

tutoriel mysql pour les débutants avec des exemples

L'ensemble du processus peut être formalisé dans une formule mathématique donnée ci-dessous.

Dans la formule ci-dessus:

G = Générateur

D = discriminateur

Pdata (x) = Distribution des données réelles

Pdata (z) = Distributeur du générateur

x = échantillon de données réelles

z = échantillon du générateur

D (x) = Réseau discriminateur

G (z) = réseau de générateurs

Vient maintenant la partie formation pour un GAN, qui peut être divisée en 2 parties qui sont effectuées séquentiellement.

comment déclarer une variable d'instance en java

Comment former un GAN?

Partie 1:

Entraînez le discriminateur et geler le générateur, ce qui signifie que l'ensemble d'apprentissage pour le générateur est défini sur False et que le réseau ne fera que le passage vers l'avant et aucune rétro-propagation ne sera appliquée.

Fondamentalement, le discriminateur est formé avec les données réelles et vérifie s'il peut les prédire correctement, et de même avec les fausses données pour les identifier comme fausses.

Partie 2:

Former le générateur et geler le discriminateur. Dans cette phase, nous obtenons les résultats de la première phase et pouvons les utiliser pour améliorer l'état précédent afin d'essayer de mieux tromper le discriminateur.

Étapes de la formation

  1. Définir le problème - définir le problème et collecter des données.
  2. Choisissez l'architecture du GAN - En fonction de votre problème, choisissez à quoi devrait ressembler votre GAN.
  3. Former le discriminateur sur des données réelles - Entraînez le discriminateur avec des données réelles pour les prédire comme réels pendant n nombre de fois.
  4. Générer de fausses entrées pour le générateur - Générer de faux échantillons à partir du générateur
  5. Former un discriminateur à de fausses données - Former le discriminateur à prédire les données générées comme fausses.
  6. Générateur de train avec la sortie du discriminateur - Après avoir obtenu les prédictions du discriminateur, entraînez le générateur à tromper le discriminateur

Défis du réseau conflictuel génératif

Le concept de GAN est plutôt fascinant mais il y a beaucoup de revers qui peuvent causer beaucoup d'obstacles sur son chemin. Certains des défis majeurs auxquels sont confrontés les GAN sont:

  1. Stabilité est nécessaire entre le discriminateur et le générateur, sinon tout le réseau tomberait. Au cas où, si le discriminateur est trop puissant, le générateur échouera complètement à s'entraîner. Et si le réseau est trop indulgent, n'importe quelle image serait générée, rendant le réseau inutile.
  2. Les GAN échouent lamentablement à déterminer le positionnement des objets en termes de nombre de fois où l'objet doit apparaître à cet endroit.
  3. La perspective 3D gêne les GAN car elle n'est pas capable de comprendre perspective , cela donnera souvent une image plate pour un objet 3D.
  4. Les GAN ont du mal à comprendre objets globaux . Il ne peut pas différencier ou comprendre une structure holistique.
  5. Les nouveaux types de GAN sont plus avancés et devraient surmonter complètement ces lacunes.

Applications de réseau conflictuelles génératives

Voici quelques applications des GAN.

Prédiction de l'image suivante dans une vidéo

La prédiction d'événements futurs dans une image vidéo est rendue possible à l'aide de GAN. Le DVD-GAN ou Dual Video Discriminator GAN peut générer des vidéos 256 × 256 d'une fidélité remarquable jusqu'à 48 images de longueur. Cela peut être utilisé à diverses fins, y compris la surveillance dans laquelle nous pouvons déterminer les activités dans un cadre déformé en raison d'autres facteurs tels que la pluie, la poussière, la fumée, etc.

Génération de texte en image

GAN attentif orienté objet (obj-GAN), effectue la synthèse texte-image en deux étapes. La génération de la mise en page sémantique est l'étape initiale, puis la génération de l'image en synthétisant l'image à l'aide d'un générateur d'image dé-convolutif est l'étape finale.

Cela pourrait être utilisé de manière intensive pour générer des images en comprenant les légendes, les mises en page et affiner les détails en synthétisant les mots. Il existe une autre étude sur les storyGANs qui peut synthétiser l'ensemble des storyboards à partir de simples paragraphes.

Amélioration de la résolution d'une image

Le réseau antagoniste génératif à super-résolution ou SRGAN est un GAN qui peut générer des images super-résolution à partir d'images basse résolution avec des détails plus fins et une meilleure qualité.

Les applications peuvent être immenses, imaginez une image de meilleure qualité avec des détails plus fins générés à partir d'une image basse résolution. La quantité d'aide qu'elle produirait pour identifier les détails des images basse résolution peut être utilisée à des fins plus larges, notamment la surveillance, la documentation, la sécurité, la détection de modèles, etc.

Traduction d'image en image

Pix2Pix GAN est un modèle conçu pour la traduction d'images-images à usage général.

Salaire Java Developer Inde

Génération d'images interactives

Les GAN peuvent également être utilisés pour générer des images interactives.Le laboratoire d'informatique et d'intelligence artificielle (CSAIL) a développé un GAN qui peut générer des modèles 3D avec un éclairage et des réflexions réalistes rendus possibles par l'édition de forme et de texture.

Plus récemment, les chercheurs ont mis au point un modèle capable de synthétiser un visage reconstitué animé par le mouvement d’une personne tout en préservant l’apparence du visage.

Cela nous amène à la fin de cet article où nous avons appris «Que sont les GAN». J'espère que vous êtes clair avec tout ce qui a été partagé avec vous dans ce tutoriel.

Si vous avez trouvé cet article sur 'Que sont les GAN' pertinent, consultez le une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier.

Nous sommes là pour vous aider à chaque étape de votre voyage et proposer un programme conçu pour les étudiants et les professionnels qui souhaitent devenir . Le cours est conçu pour vous donner une longueur d'avance dans la programmation Python et vous former aux concepts Python de base et avancés ainsi que divers comme

Si vous rencontrez des questions, n'hésitez pas à poser toutes vos questions dans la section commentaires de «Que sont les GAN» et notre équipe se fera un plaisir de vous répondre.