Introduction Stay organized with collections Save and categorize content based on your preferences.
-
Generative adversarial networks (GANs) are generative models that create new data instances resembling training data, such as images that look like real photographs but are not of actual people.
-
GANs consist of a generator that learns to produce the target output and a discriminator that learns to distinguish real data from generated data, working in tandem to enhance the realism of the output.
-
This course covers GAN fundamentals, common GAN loss functions, training challenges, and using the TF-GAN library to build GANs, assuming prior knowledge of machine learning and TensorFlow.
-
Completing Machine Learning Crash Course and having some TensorFlow programming experience are prerequisites for this GANs course.
Generative adversarial networks (GANs) are an exciting recent innovation in machine learning. GANs are generative models: they create new data instances that resemble your training data. For example, GANs can create images that look like photographs of human faces, even though the faces don't belong to any real person. These images were created by a GAN:

Figure 1: Images generated by a GAN created by NVIDIA.
GANs achieve this level of realism by pairing a generator, which learns to produce the target output, with a discriminator, which learns to distinguish true data from the output of the generator. The generator tries to fool the discriminator, and the discriminator tries to keep from being fooled.
This course covers GAN basics, and also how to use the TF-GAN library to create GANs.
Course Learning Objectives- Understand the difference between generative and discriminative models.
- Identify problems that GANs can solve.
- Understand the roles of the generator and discriminator in a GAN system.
- Understand the advantages and disadvantages of common GAN loss functions.
- Identify possible solutions to common problems with GAN training.
- Use the TF GAN library to make a GAN.
Prerequisites
This course assumes you have:
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-25 UTC.
Need to tell us more? [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-25 UTC."],[],[]]