Stay organized with collections
Save and categorize content based on your preferences.
Preventing Overfitting
As with any machine learning model, a key concern when training a convolutional
neural network is overfitting: a model so tuned to the specifics of the
training data that it is unable to generalize to new examples. Two techniques to
prevent overfitting when building a CNN are:
Data augmentation: artificially boosting the diversity and number of
training examples by performing random transformations to existing images to
create a set of new variants (see Figure 7). Data augmentation is especially
useful when the original training data set is relatively small.
Dropout regularization: Randomly removing units from the neural network
during a training gradient step.
Figure 7. Data augmentation
on a single dog image (excerpted from the "Dogs vs. Cats" dataset
available on Kaggle). Left: Original dog image from training set.
Right: Nine new images generated from original image using random
transformations.
[null,null,["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eOverfitting in convolutional neural networks can be mitigated by using techniques like data augmentation and dropout regularization.\u003c/p\u003e\n"],["\u003cp\u003eData augmentation involves creating variations of existing training images to increase dataset diversity and size, which is particularly helpful for smaller datasets.\u003c/p\u003e\n"],["\u003cp\u003eDropout regularization randomly removes units during training to prevent the model from becoming overly specialized to the training data.\u003c/p\u003e\n"],["\u003cp\u003eWhen dealing with large datasets, the need for dropout regularization diminishes and the impact of data augmentation is reduced.\u003c/p\u003e\n"]]],[],null,["# ML Practicum: Image Classification\n\n\u003cbr /\u003e\n\nPreventing Overfitting\n----------------------\n\nAs with any machine learning model, a key concern when training a convolutional\nneural network is *overfitting*: a model so tuned to the specifics of the\ntraining data that it is unable to generalize to new examples. Two techniques to\nprevent overfitting when building a CNN are:\n\n- **Data augmentation**: artificially boosting the diversity and number of training examples by performing random transformations to existing images to create a set of new variants (see Figure 7). Data augmentation is especially useful when the original training data set is relatively small.\n- **Dropout regularization**: Randomly removing units from the neural network during a training gradient step.\n\n| For more on dropout regularization, see [Training Neural Nets using Backpropagation](https://developers.google.com/machine-learning/crash-course/neural-networks/backpropagation) in [Machine Learning Crash Course](https://developers.google.com/machine-learning/crash-course/).\n\n*Figure 7. Data augmentation\non a single dog image (excerpted from the [\"Dogs vs. Cats\" dataset](https://www.kaggle.com/c/dogs-vs-cats/data)\navailable on Kaggle). **Left** : Original dog image from training set.\n**Right**: Nine new images generated from original image using random\ntransformations.*\n| Overfitting is more of a concern when working with smaller training data sets. When working with big data sets (e.g., millions of images), applying dropout is unnecessary, and the value of data augmentation is also diminished.\n| **Key Terms**\n|\n| |---------------------------------------------------------|-------------------------------------------------------------------------------|\n| | - data augmentation | - [dropout regularization](/machine-learning/glossary#dropout_regularization) |\n| | - [overfitting](/machine-learning/glossary#overfitting) |\n|"]]