Gradient descent, taught with cats, dogs and rabbits

Draw a creature, guess before the model does, then watch the exact maths that updates its weights.

Step 1 — draw a creature

Click squares to draw. Then tell the model what it is, so it gets added to the training set.

Step 2 — guess before the model does

This image was picked at random. Click your guess, then see if you or the model got it right.

Step 3 — show the model this answer, and watch it learn

This runs one real training step: for each pixel, gradient = error × pixel value, then weight -= learning rate × gradient. Below is that exact maths for a few sample pixels.

PixelValueErrorGradientOld weightNew weight

The result — one weight grid per class

Teal means that pixel votes for this class, coral means it votes against. Repeat steps 2–3 many times and watch a shape emerge.

You correct: 0
Model correct: 0
Rounds: 0
Learning rate: 0.5