Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udacity

Building Generative Models

via Udacity

Overview

This course covers the construction and training of Generative Adversarial Networks (GANs), providing a comprehensive understanding of generative models. Starting with foundational concepts of latent spaces and data distributions, learners will progress to implementing generator and discriminator networks using PyTorch. The curriculum emphasizes step-by-step training processes, improvements in GAN architecture, and the exploration of Deep Convolutional GANs. Additionally, the course presents conditional image generation and introduces diffusion models, highlighting comparisons with GANs. Practical applications culminate in a hands-on project focused on creating synthetic handwriting for CAPTCHA systems, reinforcing learned concepts.

Syllabus

  • Course Overview
    • Get an introduction to building Generative Adversarial Networks, meet your instructor, and preview key topics covered in the course.
  • Introduction to Generative Models
    • Explore the shift from data recognition to creation in AI through generative models, their applications, differences from classifiers, and crucial ethical considerations.
  • Latent Spaces and Data Distributions
    • Learn how generative AI uses latent spaces and data distributions to transform random noise into structured, creative outputs by mapping simple vectors to complex data like images.
  • Building a Simple Generator Network
    • Learn to build a simple generator network in PyTorch that transforms random noise into images, which is a core foundation for Generative Adversarial Networks (GANs) and creative AI models.
  • Discriminators and Adversarial Training
    • Discover how Generative Adversarial Networks use competition between a Generator and Discriminator to create realistic synthetic data through adversarial training.
  • Implementing a Discriminator with PyTorch
    • Learn how to build, train, and evaluate a discriminator in PyTorch as part of a GAN, mastering adversarial training, data preparation, and model evaluation techniques.
  • Generative Adversarial Networks
    • Explore GANs: two neural networks, a generator and a discriminator, compete to create realistic data, driving advances in creative AI like image, art, and text generation.
  • Training GANs Step by Step with PyTorch
    • Learn step-by-step GAN training with PyTorch by building, training, and analyzing generator and discriminator models to create realistic images and understand adversarial processes.
  • Improving GAN Training
    • Learn to overcome GAN training challenges like mode collapse and instability using techniques such as label smoothing, batch normalization, and LeakyReLU for stable, diverse outputs.
  • GAN Training Improvements with PyTorch
    • Learn how label smoothing and feature matching stabilize GAN training in PyTorch, alleviating common issues like instability and mode collapse for more reliable, diverse outputs.
  • Deep Convolutional GANs
    • Learn to build Deep Convolutional GANs (DCGANs) using convolutional layers, transposed/strided convolutions, and stable training to generate high-quality, realistic images.
  • Building and Training a DCGAN with PyTorch and TorchVision
    • Build and train a DCGAN in PyTorch to create realistic images from random noise, mastering adversarial training, architecture, and techniques for creative image generation.
  • Conditional Image Generation
    • Learn how Conditional GANs generate specific images by combining labels with noise, enabling control for tasks like data augmentation, text-to-image, and image-to-image translation.
  • Implementing a Conditional GAN
    • Learn to build, train, and use a conditional GAN to generate images of specific classes, gaining control over generative models by conditioning on class labels.
  • Introduction to Diffusion Models
    • Learn how diffusion models generate images by adding and removing noise in steps, using neural networks, and why they're stable and effective for generative AI.
  • U-Net Architecture for Diffusion
    • Discover how the U-Net architecture enables diffusion models to create images with both structure and fine detail, using encoder-decoder paths, skip connections, and time embedding conditioning.
  • Implementing a Simple Diffusion Model
    • Learn to build, train, and implement a basic diffusion model from scratch, mastering forward noising, U-Net architecture, and image generation through denoising steps.
  • Sampling and Image Generation with Diffusion
    • Learn how diffusion models generate images by reverse diffusion, denoising random noise step-by-step, and explore the trade-off between generation speed and image quality.
  • Comparing GANs and Diffusion Models
    • Explore the key differences between GANs and diffusion models, speed versus image quality, and learn to choose the right AI tool for any creative image generation task.
  • Project: Synthetic Handwriting Generator for CAPTCHA Systems
    • Build and compare a Conditional GAN and a Conditional Diffusion Model to generate diverse synthetic handwriting data, strengthening a next-generation CAPTCHA system against sophisticated bot attacks.

Taught by

Temi Afeye

Reviews

Start your review of Building Generative Models

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.