Bird
Raised Fist0
Computer Visionml~20 mins

Image datasets (CIFAR-10, ImageNet) in Computer Vision - Practice Problems & Coding Challenges

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Challenge - 5 Problems
🎖️
Image Dataset Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
Understanding CIFAR-10 Dataset Characteristics

Which of the following statements about the CIFAR-10 dataset is correct?

ACIFAR-10 is primarily used for natural language processing tasks.
BCIFAR-10 images are grayscale and have a resolution of 224x224 pixels.
CCIFAR-10 has 100 classes with 600 images each, all in black and white.
DCIFAR-10 contains 60,000 color images of size 32x32 pixels divided into 10 classes.
Attempts:
2 left
💡 Hint

Think about the number of classes and image size commonly used in beginner image classification tasks.

Predict Output
intermediate
1:30remaining
Output Shape of CIFAR-10 Training Data

Given the following Python code snippet loading CIFAR-10 using TensorFlow, what is the shape of x_train?

Computer Vision
import tensorflow as tf
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.cifar10.load_data()
print(x_train.shape)
A(50000, 32, 32, 3)
B(60000, 28, 28, 1)
C(10000, 32, 32, 3)
D(50000, 224, 224, 3)
Attempts:
2 left
💡 Hint

Recall the number of training images and their dimensions in CIFAR-10.

Model Choice
advanced
2:00remaining
Choosing a Model for ImageNet Classification

You want to train a deep learning model on the ImageNet dataset, which has over 1 million images and 1000 classes. Which model architecture is most suitable for this task?

AA small fully connected neural network with 2 hidden layers.
BA recurrent neural network (RNN) designed for text sequences.
CA convolutional neural network (CNN) like ResNet-50 pretrained on ImageNet.
DA simple logistic regression model.
Attempts:
2 left
💡 Hint

Consider the dataset size, image complexity, and model type best suited for images.

Metrics
advanced
1:30remaining
Evaluating Model Accuracy on CIFAR-10

After training a model on CIFAR-10, you get the following confusion matrix summary for 10 classes. Which metric best summarizes the overall model performance?

APerplexity, because it measures uncertainty in classification.
BAccuracy, because it shows the proportion of correctly classified images out of all images.
CMean Squared Error, because it measures the average squared difference between predicted and true labels.
DBLEU score, because it evaluates image classification quality.
Attempts:
2 left
💡 Hint

Think about which metric is commonly used for classification tasks with multiple classes.

🔧 Debug
expert
2:00remaining
Identifying the Cause of Slow Training on ImageNet

You are training a CNN on ImageNet but notice training is extremely slow. Which of the following is the most likely cause?

AUsing a very small batch size causing inefficient GPU utilization.
BUsing data augmentation techniques like random flips and crops.
CUsing pretrained weights from ImageNet for initialization.
DUsing mixed precision training to speed up computation.
Attempts:
2 left
💡 Hint

Consider how batch size affects hardware usage during training.

Practice

(1/5)
1. Which of the following best describes the CIFAR-10 dataset?
easy
A. A small dataset with 10 classes of images, easy for beginners
B. A very large dataset with millions of images and thousands of classes
C. A dataset mainly used for text recognition tasks
D. A dataset containing only black and white images

Solution

  1. Step 1: Understand CIFAR-10 size and classes

    CIFAR-10 contains 60,000 small images divided into 10 classes, making it manageable for beginners.
  2. Step 2: Compare with other datasets

    ImageNet is much larger with many more classes, unlike CIFAR-10.
  3. Final Answer:

    A small dataset with 10 classes of images, easy for beginners -> Option A
  4. Quick Check:

    CIFAR-10 = small, 10 classes [OK]
Hint: Remember CIFAR-10 is small and simple for learning [OK]
Common Mistakes:
  • Confusing CIFAR-10 with ImageNet size
  • Thinking CIFAR-10 has many classes
  • Assuming CIFAR-10 is for text data
2. Which Python code correctly loads the CIFAR-10 dataset using TensorFlow?
easy
A. import cifar10 train_images, train_labels = cifar10.load()
B. from tensorflow.keras.datasets import cifar10 (train_images, train_labels), (test_images, test_labels) = cifar10.load_data()
C. from tensorflow.data import cifar10 train, test = cifar10.load()
D. from keras.datasets import imagenet train, test = imagenet.load_data()

Solution

  1. Step 1: Identify correct import for CIFAR-10 in TensorFlow

    The correct import is from tensorflow.keras.datasets import cifar10.
  2. Step 2: Check the loading function

    cifar10.load_data() returns training and testing sets as tuples.
  3. Final Answer:

    from tensorflow.keras.datasets import cifar10 (train_images, train_labels), (test_images, test_labels) = cifar10.load_data() -> Option B
  4. Quick Check:

    Correct import and load_data() method [OK]
Hint: Use tensorflow.keras.datasets for CIFAR-10 loading [OK]
Common Mistakes:
  • Using wrong module names like tensorflow.data
  • Trying to load ImageNet with CIFAR-10 code
  • Missing the load_data() function call
3. What will be the shape of the training images array after loading CIFAR-10 with TensorFlow?
medium
A. (100000, 64, 64, 3)
B. (60000, 28, 28, 1)
C. (50000, 32, 32, 3)
D. (50000, 224, 224, 3)

Solution

  1. Step 1: Recall CIFAR-10 image count and size

    CIFAR-10 has 50,000 training images, each 32x32 pixels with 3 color channels (RGB).
  2. Step 2: Match shape format

    The shape is (number_of_images, height, width, channels) = (50000, 32, 32, 3).
  3. Final Answer:

    (50000, 32, 32, 3) -> Option C
  4. Quick Check:

    Training images shape = (50000, 32, 32, 3) [OK]
Hint: CIFAR-10 images are 32x32 RGB, 50k training samples [OK]
Common Mistakes:
  • Confusing CIFAR-10 with MNIST image size
  • Using ImageNet image dimensions
  • Mixing training and test set sizes
4. You wrote this code to load ImageNet but get an error:
from tensorflow.keras.datasets import imagenet
(train_images, train_labels), (test_images, test_labels) = imagenet.load_data()
What is the main problem?
medium
A. ImageNet is not available in tensorflow.keras.datasets module
B. The load_data() function requires extra parameters
C. You must import ImageNet from tensorflow.data instead
D. ImageNet images are grayscale, so loading fails

Solution

  1. Step 1: Check TensorFlow dataset availability

    TensorFlow's keras.datasets does not include ImageNet; it includes CIFAR-10, MNIST, etc.
  2. Step 2: Understand ImageNet loading method

    ImageNet requires special handling or external libraries, not keras.datasets.
  3. Final Answer:

    ImageNet is not available in tensorflow.keras.datasets module -> Option A
  4. Quick Check:

    ImageNet not in keras.datasets [OK]
Hint: ImageNet needs special loading, not keras.datasets [OK]
Common Mistakes:
  • Assuming ImageNet loads like CIFAR-10
  • Trying to import from wrong TensorFlow submodules
  • Believing ImageNet images are grayscale
5. You want to train a model to recognize 1000 different object categories. Which dataset is best suited for this task?
hard
A. CIFAR-10, because it has 10 classes and is easy to use
B. Fashion-MNIST, because it has clothing images
C. MNIST, because it has handwritten digits
D. ImageNet, because it has 1000 classes and many images per class

Solution

  1. Step 1: Identify dataset class count

    CIFAR-10 has only 10 classes, MNIST and Fashion-MNIST have 10 classes each, ImageNet has 1000 classes.
  2. Step 2: Match dataset to task

    For recognizing 1000 categories, ImageNet is the suitable dataset due to its size and diversity.
  3. Final Answer:

    ImageNet, because it has 1000 classes and many images per class -> Option D
  4. Quick Check:

    1000 classes need ImageNet [OK]
Hint: Use ImageNet for many classes, CIFAR-10 for few [OK]
Common Mistakes:
  • Choosing CIFAR-10 for many classes
  • Confusing MNIST with ImageNet
  • Ignoring class count importance