A machine learning engineer is building a deep learning model to classify structural defects in manufacturing components using a small dataset of high-resolution images. The model achieves 99% accuracy on the training set, but its accuracy drops to 72% when evaluated on the validation set. Which of the following techniques would be most effective at mitigating this generalization issue?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Here's the deal: if your model looks like a genius during training but acts like a dummy on the test set, you're suffering from a classic case of overfitting. The model has basically memorized your training images instead of learning the actual features of the defects. Imagine studying for a history test by memorizing the exact phrasing of practice questions instead of learning the concepts—as soon as the teacher tweaks the wording on the real exam, you're toast! To fix this in computer vision, we use data augmentation. We take those training photos and randomly rotate them, crop them, flip them, or change the lighting. This forces the neural network to learn the core shapes and features, making it way more robust when it meets brand-new, unseen data. Trust me, it works like a charm!
Full explanation below image
Full Explanation
Overfitting occurs when a neural network learns the noise and specific details of the training dataset to the extent that it negatively impacts the model's performance on new data. This manifests as high training accuracy paired with poor validation or test performance, indicating that the model has failed to generalize.
Data augmentation is a highly effective technique to combat overfitting, especially in computer vision tasks. By applying random, realistic transformations to the training images—such as rotation, flipping, scaling, cropping, and adjusting brightness or contrast—we artificially expand the size and diversity of the training dataset. This prevents the network from memorizing specific pixel coordinates or orientations. Instead, the model is forced to learn invariant features (e.g., recognizing a defect regardless of its angle or illumination), which significantly improves its ability to generalize to unseen real-world data.
Let's analyze the incorrect options: - Increasing model capacity by adding more layers makes the model more complex. A more complex model is actually more prone to overfitting, as it has more parameters to memorize the training data. - Increasing the batch size can speed up training and provide more stable gradient updates, but it does not address the lack of data diversity or prevent overfitting. - Training for more epochs will only cause the model to overfit the training set further, driving validation performance down even more.