When machine learning development companies create algorithms, as mentioned before, use three stages before completion. An epoch focuses on the training phase. As a reminder, training is the phase when developers will feed data to the algorithm for the desired outcome. So during this step, the machine learning algorithm will repeat the data a set number of times, this repeating process is called an epoch.
More specifically, during the epoch, the model learns the entire training data, then evaluates the loss role when its validation time. Keep this in mind, the number of epochs is a tunable hyperparameter that is necessary for most efficient result.
Let’s break this down, in this example you are training a machine learning model with a dataset of 50 patterns, an epoch would require training on all 50 patterns and then evaluating the loss of those 50 patterns. You can assume you won’t find the desired outcome with one epoch, so let’s perform 500 epochs. That means your model has seen 25,000 examples (500 epochs multiplied by 50 patterns) over the course of training.
The number of epochs you use is defined on the amount, and complexity of data in your machine learning model. When using an epoch, you want to use enough so the machine learning algorithm has learned all of the important features in the data. Now here is the difficult part, too little epochs can lead to underfitting, while having too many epochs can lead to overfitting. In general, you want to find the in-between area where your model is performing well but has not begun too overfit.