Gradient
Gradient

Learn machine learning by seeing it move.

Stop staring at static equations. Drag the data, tune the learning rate, and watch gradient descent, decision boundaries, and backprop respond in real time.

app.gradient.dev/random-forest

Random Forest

Many decision trees vote — the majority wins.

Train
trees3
max depth4

Learned by students at

MITStanfordUC BerkeleyCMUGeorgia TechETH Zürich
The problem

Your textbook tells you the math.
It never lets you feel it.

Reading the gradient descent chapter for the fourth time won’t make it click. Watching the optimizer overshoot when you crank the learning rate will. Every concept here is a live system you control.

One growing library

Linear regressionGradient descentLogistic regressionDecision treesK-meansNeural networksBackpropagationCNNsRegularizationAttentionTransformersEmbeddings
Why it clicks

Built to be poked, not read.

Interactive playgrounds

Drag the data. Watch the model chase it.

Move a point and the best-fit line refits instantly. Tune the learning rate and watch gradient descent converge, crawl, or blow up. Nothing is pre-rendered, it responds to you.

Real math, made legible

The rigor stays. The fog lifts.

Every equation is rendered cleanly with each symbol explained on hover. You came for the math, so we keep it front and center, just no longer abstract.

θweights:=θαlearning rate∇J(θ)gradient

hover a symbol to see what it means

Guided paths & progress

A clear route from regression to transformers.

Follow a structured path, always knowing the next step. Progress saves per concept, with quick checks that prove you understand rather than just recognize.

Regression
Gradient descent
3Neural netsin progress
4CNNs
5Attention
Scroll to explore · learning rate
α = 0.01

Too small, and you crawl.

A timid learning rate barely moves the weights. You converge eventually, but it takes forever. Watch the optimizer inch down the slope.

Slow convergence

weightloss

loss surface · gradient descent

The app

This is where it all comes together.

A focused workspace for every concept: visualization on one side, the controls in your hands, the math always within reach.

app.gradient.dev/gradient-descent

Gradient Descent

Watch the optimizer roll toward the minimum.

learning rate0.08
iterations240
Concept → code

See it here. Write it there.

The intuition you build dragging sliders maps straight onto the frameworks you’ll actually ship with. Same gradient descent, five ways — each shown the way that framework thinks about it.

what you’re seeing

Autograd — forward, then backward

forward →X× wlossw.grad = ∂L/∂w
PyTorch · autograd

loss.backward() fills w.grad with ∂L/∂w. Then w -= lr * grad is the exact step the ball takes downhill.

linear_regression.py
import torch
w = torch.zeros(1, requires_grad=True)
lr = 0.1
for _ in range(100):
y_pred = X @ w
loss = ((y_pred - y) ** 2).mean()
loss.backward() # autograd
with torch.no_grad():
w -= lr * w.grad # one GD step
w.grad.zero_()
Loved by learners
4.9 · 2,300+ reviews
I'd read the gradient descent chapter four times and still didn't get it. Ten minutes dragging the learning rate slider here and it finally clicked. I actually watched it diverge into NaN.
MCMaya ChenCS junior · UC Berkeley
Ready when you are

Start seeing the math move today.

Free to start, no credit card. Pick a concept and watch it come alive in your browser.