\chapter{Introduction} As mentioned before deep learning combines feature extraction through the use of convolution and pooling with traditional neural networks, replacing the intermediate step of humans extracting features from the dataset. Convolution is a fancy word for filtering, which is where we slide a trained filter over the input data, the purpose of which is to extract features and other useful information from the data. Pooling is then the process of taking local samples and selecting either the min, max, or average of the those samples. This can help identify locations of features and compact overall information from the convolution layer. The typical deep learning pipeline is several convolution and pooling layers followed by a few fully connected layers. We intend to show that by using a deep learning configuration you can reduce the required size of the feed forward section without sacrificing the results of your program, thus showing the effectiveness of deep learning. The MNIST database is one of the standard benchmark examples for image processing neural networks and as such we will be using a modified version of the DLIB deep learning example for the purposes of our comparison. This was done as it can be used to show the difference between standard feed forward neural networks and deep learning networks, without needing an expensive GPU or AI accelerator. The MNIST dataset is solvable uisng only feed forward neural networks, but we intend to show that using deep learning can improve performance on smaller networks.