Spécialisation Generative Adversarial Networks sur Coursera (proposée par deeplearning.ai)
Travaux de programmation de tous les cours de la spécialisation Coursera GAN proposés par deeplearning.ai
.
Cours
La spécialisation GAN sur Coursera contient trois cours :
Cours 1 : Construire des réseaux contradictoires génératifs de base
Cours 2 : Construire de meilleurs réseaux contradictoires génératifs
Cours 3 : Appliquer les réseaux contradictoires génératifs (GAN)
À propos des GAN
Les réseaux adverses génératifs (GAN) sont de puissants modèles d'apprentissage automatique capables de générer des images, des vidéos et des sorties vocales réalistes.
Ancrés dans la théorie des jeux, les GAN ont des applications très répandues : depuis l'amélioration de la cybersécurité en luttant contre les attaques adverses et en anonymisant les données pour préserver la confidentialité jusqu'à la génération d'images de pointe, la colorisation des images en noir et blanc, l'augmentation de la résolution des images, la création d'avatars, transformer des images 2D en 3D, et plus encore.
À mesure que la puissance de calcul augmente, la popularité des GAN et de leurs capacités augmente également. Les GAN ont ouvert de nombreuses nouvelles directions : depuis la génération de grandes quantités d'ensembles de données pour la formation de modèles d'apprentissage automatique et la possibilité de créer de puissants modèles d'apprentissage non supervisés jusqu'à la production de résultats plus nets, discrets et plus précis. Les GAN ont également éclairé la recherche dans des domaines adjacents tels que l'apprentissage contradictoire, les exemples et attaques contradictoires, la robustesse des modèles, etc.
À propos de cette spécialisation
La spécialisation deeplearning.ai Generative Adversarial Networks (GAN) fournit une introduction passionnante à la génération d'images avec les GAN, traçant un chemin allant des concepts fondamentaux aux techniques avancées grâce à une approche facile à comprendre. Il couvre également les implications sociales, notamment les préjugés dans le ML et les moyens de les détecter, la préservation de la vie privée, etc.
Construisez une base de connaissances complète et acquérez une expérience pratique des GAN. Entraînez votre propre modèle à l'aide de PyTorch, utilisez-le pour créer des images et évaluez une variété de GAN avancés.
Au propos de vous
Cette spécialisation s'adresse aux ingénieurs logiciels, aux étudiants et aux chercheurs de tous domaines, intéressés par l'apprentissage automatique et souhaitant comprendre le fonctionnement des GAN.
Cette spécialisation offre une voie accessible à tous les niveaux d'apprenants cherchant à percer dans l'espace des GAN ou à appliquer les GAN à leurs propres projets, même sans connaissance préalable de la recherche avancée en mathématiques et en apprentissage automatique.
Missions de programmation
Cours 1 : Créer des réseaux contradictoires génératifs de base (GAN)
- Il s'agit du premier cours de la spécialisation Generative Adversarial Networks (GAN).
Semaine 1 : Introduction aux GAN
- Découvrez les GAN et leurs applications, comprenez l'intuition derrière les composants de base des GAN et créez votre propre GAN à l'aide de PyTorch.
- Affectation:
Semaine 2 : GAN à convolution profonde
- Créez un GAN plus sophistiqué à l'aide de couches convolutives. Découvrez les fonctions d'activation utiles, la normalisation par lots et les convolutions transposées pour affiner votre architecture GAN et appliquez-les pour créer un DCGAN avancé spécifiquement pour le traitement des images.
- Affectation:
- GAN convolutif profond (DCGAN)
Semaine 3 : GAN Wasserstein avec normalisation
- Réduisez les cas de défaillance des GAN dus à des déséquilibres entre le générateur et le discriminateur en apprenant des techniques avancées telles que les WGAN pour atténuer l'entraînement instable et l'effondrement de mode avec une perte W et une compréhension de la continuité Lipschitz.
- Affectation:
- Wasserstein GAN avec pénalité de gradient (WGAN-GP)
Semaine 4 : GAN conditionnels et contrôlables
- Comprenez comment contrôler efficacement votre GAN, modifier les fonctionnalités d'une image générée et créer des GAN conditionnels capables de générer des exemples à partir de catégories déterminées.
- Missions :
- Construire un GAN conditionnel
- Génération contrôlable
Cours 2 : Construire de meilleurs réseaux contradictoires génératifs (GAN)
- Il s'agit du deuxième cours de la spécialisation Generative Adversarial Networks (GAN).
Semaine 1 : évaluation du GAN
- Comprenez les défis de l'évaluation des GAN, découvrez les avantages et les inconvénients des différentes mesures de performance du GAN et mettez en œuvre la méthode Fréchet Inception Distance (FID) à l'aide d'intégrations pour évaluer l'exactitude des GAN.
- Affectation:
- Évaluation de la distance de démarrage des GAN / Fréchet
Semaine 2 : Inconvénients et biais du GAN
- Découvrez les inconvénients des GAN par rapport à d'autres modèles génératifs, découvrez les avantages/inconvénients de ces modèles et découvrez les nombreux endroits d'où peuvent provenir les biais dans l'apprentissage automatique, pourquoi ils sont importants et une approche pour les identifier dans les GAN. .
- Questionnaire:
- Affectation:
- Laboratoire:
- Encodeur automatique variationnel (VAE)
Semaine 3 : StyleGAN et avancées
- Comprendre comment StyleGAN améliore les modèles précédents et implémenter les composants et les techniques associés à StyleGAN, actuellement le GAN le plus avancé avec des capacités puissantes
- Affectation:
- Carnets facultatifs :
- Composants de BigGAN
- StyleGAN2
Cours 3 : Appliquer les réseaux contradictoires génératifs (GAN)
- Il s'agit du troisième cours de la spécialisation Generative Adversarial Networks (GAN).
Semaine 1 : GAN pour l'augmentation des données et la préservation de la confidentialité
- Explorez les applications des GAN et examinez-les en termes d'augmentation des données, de confidentialité et d'anonymat.
- Améliorez vos modèles d'IA en aval avec les données générées par le GAN.
- Affectation:
Semaine 2 : Traduction d'image à image
- Tirez parti du cadre de traduction image à image et identifiez les extensions, généralisations et applications de ce cadre à des modalités au-delà des images.
- Implémentez Pix2Pix, un GAN de traduction image à image couplé, pour adapter les images satellite aux itinéraires cartographiés (et vice versa) avec un générateur U-Net avancé et des architectures de discriminateur PatchGAN.
- Missions :
Semaine 3 : Traduction non appariée d’image à image
- Comparez la traduction image à image appariée à la traduction image à image non appariée et identifiez comment leur différence clé nécessite différentes architectures GAN.
- Implémentez CycleGAN, un modèle de traduction image à image non apparié, pour adapter les chevaux aux zèbres (et vice versa) avec deux GAN en un.
- Affectation:
Clause de non-responsabilité
Je reconnais le temps difficile que les gens consacrent à développer leur intuition, à comprendre de nouveaux concepts et à déboguer des tâches. Les solutions téléchargées ici sont uniquement à titre de référence . Ils sont destinés à vous débloquer si vous êtes bloqué quelque part. Veuillez ne copier aucune partie du code tel quel (les affectations de programmation sont assez simples si vous lisez attentivement les instructions). De même, essayez vous-même les quiz avant de vous référer aux solutions du quiz.