Too few or too many epochs can be a problem and it is best to aim for stopping when there is no reduction in error rate or increase in accuracy if using accuracy metrics. We then save the model - this can already have a good enough accuracy for the nest stage of inference and deployment.
MODEL TUNING
If there is a need to create a more accurate model there are techniques such as unfreezing the model, searching for a suitable learning rate using the build in learning rate finder which is novel to fast.ai. Then using that learning rate you can fit other cycles until the model gets to a suitable accuracy in our case we are able to get to a 83% accuracy, or an error rate of 0.17%.
MODEL TUNING BY DATA EXPLORATION
Now that we have a model it would be good to look at the images that might be causing the model to be less accurate. Maybe in the process of inputting your data, there might have been some leakage of data that you do not necessarily want to be used in training your dataset. The first step is to draw a confusion matrix of the species to see the map of the true positives and true negatives and understand which species are making your model less accurate \cite{Ting2017}.