Epoch is one of the Machine Learning terms, which indicates the number of iterations or passes an algorithm has completed around the training dataset. The input data can be broken down into batches if it is of a large size. It is loosely considered as iteration if the batch size is equal to that of the entire training dataset. There are many parameters that are considered when determining the number of epochs the model should run through. In many cases, increasing the number of epochs does not mean more accuracy as it often leads to overfitting and other problems that cause a massive dip in accuracy.
If you are looking for an online course to learn Machine Learning, I recommend this Machine Learning Online Course by Intellipaat.