MNIST
TODO (not in order of importance): - live plotting of training and validation error - more robust settings system - convergence detection (stop training when converged) - routine for optimizing/bruteforcing network sizes/nonlinearities check for number of epochs at convergence, error rate, training time - output predicted label as well directly in theano, compute true or false if correct should be faster computationally (and teaches me more theano expressions) - convolutional neural network - live plotting of the probability distribution? makes for very fancy videos! - refactor network in superclass (neuralnetwork) and subclass (fullyconnected or CNN)