Bird
Raised Fist0
Computer Visionml~5 mins

GAN for image generation in Computer Vision - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does GAN stand for in machine learning?
GAN stands for Generative Adversarial Network. It is a type of model used to generate new data similar to a given dataset.
Click to reveal answer
beginner
What are the two main parts of a GAN?
A GAN has two parts: the Generator, which creates fake images, and the Discriminator, which tries to tell real images from fake ones.
Click to reveal answer
intermediate
How does the Generator learn to create better images?
The Generator learns by trying to fool the Discriminator. When the Discriminator is tricked, the Generator improves its image creation.
Click to reveal answer
beginner
What is the role of the Discriminator in a GAN?
The Discriminator's role is to classify images as real (from the dataset) or fake (from the Generator). It helps the Generator improve by providing feedback.
Click to reveal answer
intermediate
Why is GAN training considered a game between two networks?
GAN training is like a game because the Generator and Discriminator compete: the Generator tries to create realistic images, and the Discriminator tries to detect fakes. This competition improves both.
Click to reveal answer
What is the main goal of the Generator in a GAN?
ATo label images in the dataset
BTo classify images as real or fake
CTo create images that look real enough to fool the Discriminator
DTo reduce the size of the dataset
Which part of a GAN decides if an image is real or fake?
AGenerator
BDiscriminator
CEncoder
DDecoder
During GAN training, what happens when the Discriminator gets better at spotting fakes?
AThe training ends immediately
BThe Generator stops learning
CThe Discriminator becomes the Generator
DThe Generator improves to create more realistic images
What kind of data is typically generated by GANs in image generation tasks?
ANew images similar to training images
BAudio signals
CText descriptions
DRandom noise
Why is GAN training described as adversarial?
ABecause the Generator and Discriminator compete against each other
BBecause it uses adversarial examples for testing
CBecause it trains on adversarial attacks
DBecause it uses adversarial loss only for the Discriminator
Explain how the Generator and Discriminator work together during GAN training for image generation.
Think of it as a game where one tries to trick the other.
You got /4 concepts.
    Describe why GANs are useful for generating new images and how their training process helps improve image quality.
    Focus on the role of competition and learning from feedback.
    You got /4 concepts.

      Practice

      (1/5)
      1. What are the two main parts of a GAN used for image generation?
      easy
      A. Convolution and Pooling
      B. Encoder and Decoder
      C. Input Layer and Output Layer
      D. Generator and Discriminator

      Solution

      1. Step 1: Understand GAN components

        A GAN consists of two parts: a generator that creates images and a discriminator that evaluates them.
      2. Step 2: Match parts to options

        Only Generator and Discriminator correctly names these two parts as Generator and Discriminator.
      3. Final Answer:

        Generator and Discriminator -> Option D
      4. Quick Check:

        GAN parts = Generator and Discriminator [OK]
      Hint: Remember GAN = Generator + Discriminator [OK]
      Common Mistakes:
      • Confusing GAN parts with autoencoder parts
      • Thinking GAN uses Encoder and Decoder
      • Mixing up layers with GAN components
      2. Which of the following is the correct way to define the generator model in PyTorch for a GAN?
      easy
      A. generator = nn.Sequential(nn.Linear(784, 256), nn.ReLU(), nn.Linear(256, 100), nn.Softmax())
      B. generator = nn.Sequential(nn.Conv2d(1, 64, 3), nn.Sigmoid())
      C. generator = nn.Sequential(nn.Linear(100, 256), nn.ReLU(), nn.Linear(256, 784), nn.Tanh())
      D. generator = nn.Sequential(nn.ConvTranspose2d(100, 1, 3), nn.ReLU())

      Solution

      1. Step 1: Identify generator input and output sizes

        The generator takes a noise vector (size 100) and outputs an image vector (size 784 for 28x28 images).
      2. Step 2: Check model layers and activations

        generator = nn.Sequential(nn.Linear(100, 256), nn.ReLU(), nn.Linear(256, 784), nn.Tanh()) correctly uses Linear layers from 100 to 256 to 784 with ReLU and Tanh activations, common in GAN generators.
      3. Final Answer:

        generator = nn.Sequential(nn.Linear(100, 256), nn.ReLU(), nn.Linear(256, 784), nn.Tanh()) -> Option C
      4. Quick Check:

        Generator input=100, output=784 with ReLU and Tanh [OK]
      Hint: Generator maps noise to image size with Linear + Tanh [OK]
      Common Mistakes:
      • Using Conv2d instead of Linear for generator input
      • Reversing input-output sizes
      • Using Softmax instead of Tanh at output
      3. Given this PyTorch snippet for a GAN training step, what will be the shape of the generated images tensor?
      noise = torch.randn(16, 100)
      generated_images = generator(noise)
      medium
      A. (16, 784)
      B. (16, 100)
      C. (100, 16)
      D. (784, 16)

      Solution

      1. Step 1: Understand input noise shape

        The noise tensor has shape (16, 100), meaning batch size 16 and noise vector length 100.
      2. Step 2: Check generator output shape

        The generator maps each noise vector of size 100 to an image vector of size 784, so output shape is (16, 784).
      3. Final Answer:

        (16, 784) -> Option A
      4. Quick Check:

        Batch size 16, output image size 784 [OK]
      Hint: Output shape matches batch size and image vector size [OK]
      Common Mistakes:
      • Confusing input noise shape with output shape
      • Swapping batch size and feature dimensions
      • Assuming output shape is (16, 100)
      4. You have this error during GAN training: RuntimeError: size mismatch in Linear layer. What is the most likely cause?
      medium
      A. The input noise vector size does not match the first Linear layer input size
      B. The discriminator output is not a probability
      C. The generator uses ReLU instead of Tanh
      D. The batch size is too large

      Solution

      1. Step 1: Understand size mismatch error

        This error usually means the input tensor size does not match the expected input size of a Linear layer.
      2. Step 2: Identify likely cause in GAN

        If the noise vector size does not match the first Linear layer's input features in the generator, this error occurs.
      3. Final Answer:

        The input noise vector size does not match the first Linear layer input size -> Option A
      4. Quick Check:

        Size mismatch = input noise size error [OK]
      Hint: Check noise vector size matches Linear layer input [OK]
      Common Mistakes:
      • Blaming activation functions for size errors
      • Thinking batch size causes size mismatch
      • Ignoring input dimension mismatch
      5. You want to improve the quality of images generated by your GAN. Which of these strategies is most effective?
      hard
      A. Increase the size of the noise vector and train longer
      B. Use a deeper generator and discriminator with batch normalization
      C. Remove the discriminator and train only the generator
      D. Use random labels instead of real/fake labels for training

      Solution

      1. Step 1: Consider model architecture improvements

        Deeper networks with batch normalization help stabilize training and improve image quality.
      2. Step 2: Evaluate other options

        Increasing noise size alone or removing discriminator harms quality; random labels confuse training.
      3. Final Answer:

        Use a deeper generator and discriminator with batch normalization -> Option B
      4. Quick Check:

        Better architecture + batch norm = improved GAN images [OK]
      Hint: Better models + batch norm improve GAN image quality [OK]
      Common Mistakes:
      • Thinking bigger noise vector alone improves quality
      • Removing discriminator to simplify training
      • Using random labels instead of correct ones
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard