Bird
Raised Fist0
Computer Visionml~5 mins

Cutout and CutMix in Computer Vision - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the main idea behind the Cutout data augmentation technique?
Cutout randomly masks out a square patch of the input image during training. This forces the model to focus on other parts of the image, improving robustness and generalization.
Click to reveal answer
intermediate
How does CutMix differ from Cutout in data augmentation?
CutMix replaces a random patch of one image with a patch from another image and mixes their labels proportionally. Unlike Cutout which masks with zeros, CutMix combines two images and their labels.
Click to reveal answer
intermediate
Why does CutMix use mixed labels when combining two images?
Because the new image contains parts from two different images, the label is a weighted combination of both original labels. This helps the model learn from mixed features and improves generalization.
Click to reveal answer
beginner
What is a practical benefit of using Cutout or CutMix during training?
Both techniques help the model become less sensitive to specific parts of images and reduce overfitting. This leads to better performance on new, unseen images.
Click to reveal answer
advanced
In Cutout, what happens if the masked patch is too large?
If the masked patch is too large, the model may lose too much information from the image, making learning harder and possibly hurting performance.
Click to reveal answer
What does Cutout do to an image during training?
ASwaps patches between two images
BMasks a random square patch with zeros
CRotates the image randomly
DAdds noise to the entire image
How does CutMix combine labels of two images?
AMixes labels proportionally to the area of patches combined
BUses only the label of the second image
CUses only the label of the first image
DIgnores labels during training
Which technique replaces a patch of one image with a patch from another image?
ACutMix
BCutout
CRandom Crop
DHorizontal Flip
What is a key goal of using Cutout or CutMix in training?
ATo increase model size
BTo make images grayscale
CTo reduce overfitting and improve generalization
DTo speed up training time
If the masked patch in Cutout is too large, what might happen?
AModel learns faster
BModel accuracy increases automatically
CModel ignores the patch
DModel loses too much information and performance drops
Explain how Cutout and CutMix help improve model training in computer vision.
Think about how hiding or mixing parts of images forces the model to learn better features.
You got /4 concepts.
    Describe the difference between Cutout and CutMix in terms of image and label manipulation.
    Focus on what happens to the image pixels and labels in each method.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of the Cutout technique in computer vision?
      easy
      A. To remove a patch from an image to improve model robustness
      B. To combine two images by overlaying one on the other
      C. To increase image resolution for better detail
      D. To convert images to grayscale for simpler processing

      Solution

      1. Step 1: Understand Cutout's function

        Cutout removes a small patch from an image during training to force the model to learn from other parts.
      2. Step 2: Compare options

        Only To remove a patch from an image to improve model robustness describes removing a patch to improve robustness. Others describe different techniques.
      3. Final Answer:

        To remove a patch from an image to improve model robustness -> Option A
      4. Quick Check:

        Cutout = patch removal [OK]
      Hint: Cutout = cut a patch out of the image [OK]
      Common Mistakes:
      • Confusing Cutout with CutMix
      • Thinking Cutout increases resolution
      • Assuming Cutout converts image color
      2. Which of the following is the correct way to mix labels in CutMix augmentation in Python using PyTorch?
      easy
      A. new_label = label1 * lambda + label2 * (1 - lambda)
      B. new_label = label1 + label2
      C. new_label = label1 - label2
      D. new_label = label1 / label2

      Solution

      1. Step 1: Recall CutMix formula

        CutMix creates a new label by mixing two labels weighted by lambda and (1 - lambda).
      2. Step 2: Match formula to options

        new_label = label1 * lambda + label2 * (1 - lambda) correctly shows weighted sum of two labels. Others are incorrect operations.
      3. Final Answer:

        new_label = label1 * lambda + label2 * (1 - lambda) -> Option A
      4. Quick Check:

        CutMix = weighted sum [OK]
      Hint: CutMix blends labels weighted by lambda [OK]
      Common Mistakes:
      • Using addition without weights
      • Subtracting or dividing labels incorrectly
      • Confusing CutMix with Cutout
      3. Given the following code snippet applying Cutout, what will be the shape of the output image tensor?
      import torch
      import torchvision.transforms as T
      
      cutout = T.RandomErasing(p=1.0, scale=(0.1, 0.1))
      image = torch.randn(3, 224, 224)
      output = cutout(image)
      print(output.shape)
      medium
      A. torch.Size([3, 112, 112])
      B. torch.Size([1, 224, 224])
      C. torch.Size([224, 224, 3])
      D. torch.Size([3, 224, 224])

      Solution

      1. Step 1: Understand RandomErasing effect

        RandomErasing (Cutout) masks part of the image but does not change its shape.
      2. Step 2: Check input and output shapes

        Input is (3, 224, 224), output remains same shape after Cutout.
      3. Final Answer:

        torch.Size([3, 224, 224]) -> Option D
      4. Quick Check:

        Cutout keeps shape same [OK]
      Hint: Cutout masks but keeps image size [OK]
      Common Mistakes:
      • Thinking Cutout changes image dimensions
      • Confusing channel order with shape
      • Assuming output is batch dimension added
      4. The following code attempts to apply CutMix but causes an error. What is the main issue?
      def cutmix(image1, image2, lam):
          bbx1, bby1, bbx2, bby2 = rand_bbox(image1.size(), lam)
          image1[:, bbx1:bbx2, bby1:bby2] = image2[:, bbx1:bbx2, bby1:bby2]
          return image1
      
      # image1 and image2 are tensors of shape (3, 224, 448)
      # lam is a float between 0 and 1
      medium
      A. rand_bbox returns coordinates in (x, y) but slicing expects (height, width)
      B. rand_bbox expects size as tuple (H, W) instead of tensor.size() (C, H, W)
      C. The function modifies image1 in-place which is not allowed
      D. The function does not return the mixed label

      Solution

      1. Step 1: Analyze rand_bbox input and slicing

        rand_bbox expects size as (height, width), but image1.size() returns (channels, height, width).
      2. Step 2: Identify mismatch in size argument

        Passing image1.size() (C, H, W) instead of (H, W) causes rand_bbox to compute wrong coordinates, leading to slicing errors.
      3. Final Answer:

        rand_bbox expects size as tuple (H, W) instead of tensor.size() (C, H, W) -> Option B
      4. Quick Check:

        Size argument mismatch = error [OK]
      Hint: Pass (H, W) size to rand_bbox, not (C, H, W) [OK]
      Common Mistakes:
      • Ignoring coordinate order difference
      • Assuming in-place modification causes error
      • Forgetting to return mixed label
      5. You want to improve your image classifier's robustness by combining Cutout and CutMix. Which approach correctly applies both augmentations during training?
      hard
      A. Apply Cutout to each image separately, then combine them with CutMix
      B. Apply Cutout only after training with CutMix is complete
      C. Apply CutMix first to combine images, then apply Cutout to mask patches on the mixed image
      D. Apply CutMix only on validation data and Cutout only on training data

      Solution

      1. Step 1: Understand augmentation order

        CutMix combines two images, then Cutout can mask parts of the combined image to increase robustness.
      2. Step 2: Evaluate options for correct sequence

        Apply CutMix first to combine images, then apply Cutout to mask patches on the mixed image applies CutMix first, then Cutout, which is the correct order to augment the mixed image effectively.
      3. Final Answer:

        Apply CutMix first to combine images, then apply Cutout to mask patches on the mixed image -> Option C
      4. Quick Check:

        CutMix then Cutout = best practice [OK]
      Hint: Mix images first, then mask patches [OK]
      Common Mistakes:
      • Applying Cutout before mixing images
      • Using augmentations only on validation data
      • Applying augmentations after training
      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