I made an interactive visualization of how a pre-trained Convolutional Neural Network processes handwritten digits in real time. The model was trained in Python on MNIST dataset, and I rewrote the inference functions in JavaScript to enable the interactive 3D visualization.

Users can draw digits on a 28×28 grid and watch as their input flows through the network layers in real time. The network was intentionally kept small to ensure smooth visualization, but its limited depth can cause misclassifications, especially with unusual or ambiguous digit shapes.

Take a look here: bulovic.at/cnn (UI works on mobile too!)





Posted by BeginningDept

4 comments
  1. This is probably the coolest data I’ve seen so far

  2. Layer 1 is input?

    Layer 2 is convolution?

    Layer 3 is output?

    Also can you share the source for this? Looks neat.

  3. This is wild. I’ve been playing with it for the last 15 minutes and I keep finding new things to look at while I draw numbers in all kinds of different ways. Thank you for sharing this!

Comments are closed.