Draw: Click and drag on the grid (Right-click to erase)
3D controls: • Left click + drag = rotate • Right click + drag = pan • Scroll wheel = zoom
Interactive neural network visualization
This app shows a compact Multi-Layer Perceptron (MLP) trained on MNIST. Draw a digit and watch activations propagate in real time through all fully connected layers.
python training/mlp_train.py to train the MLP (with Apple Metal acceleration if available).exports/mlp_weights.json, which the visualizer loads on startup.training/mlp_train.py.The network is kept compact for smooth real-time visualization. You can retrain with other layer sizes; keep the architecture lean so the 3D view stays responsive.
Controls how many of the strongest incoming weights per target neuron are shown; high values can slow the display.
Hides connections with low absolute weight; 0 shows all connections.
Adjusts the radius of connection cylinders; higher values make all lines visibly thicker.
Smaller values give finer lines; larger values fill the grid faster.
How much each brush stroke increases pixel brightness.