intuition for your choice of each layer of the model architecture. Note that it may

Dogs Vs. Cats Classification Use the Kaggle Dogs vs. Cats dataset (https://www.kaggle.com/c/dogs-vs-cats/data) to train a Convolutional Neural Network model capable to distinguishing an image of a dog from that of a cat. You are free to architect your network in any way you like (e.g. 2D Conv; Max Pool; 2D Conv; Max Pool; Dense Network etc.). You should detail your intuition for your choice of each layer of the model architecture. Note that it may take several hundred epochs to train your model sufficiently, so make sure to save it and reload it as needed. Tune hyper parameters and use the ROC curve to select best performing hyper parameters (it’s up to you to chose the parameters to tune). Display the precision, recall, and F1 score for this model operating on the test data and produce a plot of your training data showing the predicted labels Display the certainty of classification for each testing sample (not shown). Extra Credit (+25): Compare the results (and training time) of your CNN model with a Stochastic Gradient Descent (SGD) classifier. Build a SGD classifier to predict the class of the dogs vs cats data set. Display the precision, recall and F1 score of the classifier.