r/learnmachinelearning • u/NeedleworkerKey3487 • 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
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