Handwritten digit recognizer

Draw a digit for a network trained on MNIST and watch its hidden layers and output probabilities respond as you draw.

IntermediateExplained in Reading handwriting

The network is 784 → 64 → 32 → 10 with ReLU activations, trained on the 60,000 MNIST training digits. It runs entirely in your browser from a 206 KB weight file.

Read handwriting with a trained network

A network trained on 60,000 handwritten digits. Draw one and watch every layer respond.

What the network sees: 28 × 28 = 784 inputs

Hidden layer 1: 64 neurons (tap one to see its weights)

Hidden layer 2: 32 neurons

Output: probability of each digit

  1. 0
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
Network's answerDraw something

Try this

  • Draw a digit small and off to one side; preprocessing rescales and centers it.
  • Draw something that is not a digit and see what the network says.
  • Tap first-layer neurons to see the pixel patterns they respond to.

Try "embedding", "softmax", "overfitting", or "backpropagation".