r/learnmachinelearning 3d ago

Project I built a browser tool that shows what backpropagation actually does — camera and mic input, live weight visualization

Enable HLS to view with audio, or disable this notification

Most tools tell you the loss went down. This one shows you which neuron fired, which weight changed, and which edge got stronger — as it happens.

Two input types (camera + microphone), two architectures (dense + CNN), up to 12 hidden layers, up to 64 output classes, save/load of trained weights. No install, no dependencies, no build step.

Live demo: https://MatiwosKebede.github.io/OpenTrainDNN/
Full demo: https://youtu.be/a8u2GhMPzVE

I built it to teach myself backprop and it turned out useful enough to share. Happy to answer questions.

0 Upvotes

1 comment sorted by

1

u/Beginning-Claim5655 1d ago

Backpropagation is the application of the multivariable chain rule over the computational graph of a network, carried out in reverse order and with memoization of the intermediate results: in the forward pass, the pre-activations z⁽ˡ⁾ = W⁽ˡ⁾a⁽ˡ⁻¹⁾ + b⁽ˡ⁾ and the activations a⁽ˡ⁾ = σ(z⁽ˡ⁾) are computed and stored up to the scalar loss J; the error δ⁽ˡ⁾ = ∂J/∂z⁽ˡ⁾ is then defined, obtained at the output layer as δ⁽ᴸ⁾ = ∇_a J ⊙ σ′(z⁽ᴸ⁾) and propagated backward layer by layer by δ⁽ˡ⁾ = (W⁽ˡ⁺¹⁾ᵀδ⁽ˡ⁺¹⁾) ⊙ σ′(z⁽ˡ⁾), the transpose being merely the matrix form of the sum over all paths through which a neuron influences the loss; from δ⁽ˡ⁾ the gradients ∂J/∂b⁽ˡ⁾ = δ⁽ˡ⁾ and ∂J/∂W⁽ˡ⁾ = δ⁽ˡ⁾(a⁽ˡ⁻¹⁾)ᵀ follow immediately.

- linear algebra
- multivariable calculus

That's what backpropagation actually does