When it comes to bad performance of a deep learning neural network model, there are three categories of issues that are simple to diagnose. Learning issues present themselves in a model that is unable to successfully learn a training dataset, or that makes slow progress or performs poorly when training the dataset. Generalization issues reveal themselves in a model that overfits the dataset and performs poorly on the holdout dataset. Prediction issues reveal themselves in the stochastic training procedure, which has a significant impact on the final model, resulting in a high degree of variability in behavior and performance.