$30
Problem Statement Consider the mnist dataset consisting of 50,000 training
009
images, and 10,000 test images. Each instance is a 28 28 pixel handwritten digit
010 ×
011 zero through nine. Train a (optionally convolutional) neural network for
012 classification using the training set that achieves at least 95.5% accuracy on the test
013
set. Do not explicitly tune hyperparameters based on the test set performance, use
014
015 a validation set taken from the training set as discussed in class. Use dropout and
016 an L2 penalty for regularization. Note: if you write a sufficiently general program
017 the next assignment will be very easy.
018
019 Do not use the built in mnist data class from tensorflow.
020
021
022
Extra challenge (optional) In addition to the above, the student with the fewest
023
024 number of parameters for a network that gets at least 80% accuracy on the test set
025 will receive a prize. There will be an extra prize if any one can achieve 80% on the
026
test set with a single digit number of parameters. For this extra challenge you can
027
028 make your network have any crazy kind of topology you’d like, it just needs to be 029 optimized by a gradient based algorithm.