This interactive demo lets you train a neural network to recognize handwritten digits.
Press C to see that the initial network is no better than random chance at predicting what digit it is seeing.
Press P and wait until at least a few thousand images have been processed, then press C again to check how good the network is at predicting now.
If the network fails to train properly (sometimes it gets stuck on a particular digit and won't predict anything else), press R to start over. I'll have to investigate why this happens.
The green and red squares in the top left corner represent the neurons. A fully red square has not been activated, while a green one has been more or less activated based on how green it is.
Each group of squares represents a layer of the fully-connected network, with the last one being 10 neurons, one for each digit. The input layer (784 neurons, one for each pixel of the 28x28 MNIST images)