# Machine Learning Playground > Four interactive machine learning lessons that run entirely in the browser at https://ml-playground.skillsafe.ai/ . Free, no sign-in, no API key, nothing uploaded. ## Lessons - [Activation functions](https://ml-playground.skillsafe.ai/#activations): 13 functions (linear, binary step, sigmoid, tanh, softsign, ReLU, leaky ReLU, ELU, SELU, GELU, Swish/SiLU, Mish, softplus) plotted with their exact derivatives, adjustable parameters (leaky slope, ELU alpha, Swish beta, softplus sharpness), a second function to overlay, a draggable probe with the tangent line, and a vanishing-gradient calculator showing f'(z)^L through L layers. Notes give the formula, range, pros, cons and where each is used, plus a sortable cheat sheet. - [Optimisers](https://ml-playground.skillsafe.ai/#optimizers): gradient descent, momentum, Nesterov, AdaGrad, RMSProp and Adam race across six 2-D loss surfaces (round bowl, narrow ravine, Rosenbrock banana, Himmelblau's four minima, a saddle point, a bumpy bowl). Each optimiser has its own learning rate; momentum beta, Adam beta1/beta2, step count and gradient noise are adjustable. Click the map to move the start. Shows animated paths over a contour map, loss per step on a log scale, and which minimum each reached or when it diverged. CSV export of every path. - [Fitting a line](https://ml-playground.skillsafe.ai/#linefit): minibatch stochastic gradient descent fitting y = mx + b to 24 noisy points, starting from y = 4. Learning rate, batch size (1 to 24) and update count are adjustable; a scrubber replays every update with that step's batch highlighted, the path through (b, m) weight space over the error contours, and the error per update against the closed-form least-squares optimum. Reports the largest stable full-batch learning rate for the data. CSV export. - [Monte Carlo pi](https://ml-playground.skillsafe.ai/#montecarlo): throw 1 to 100,000 seeded random or Halton (low-discrepancy) darts at a square with an inscribed circle; live estimate 4 x inside / thrown, error, and a convergence chart with the 95% band 1.96 x 1.642 / sqrt(n). Repeat the experiment 100 to 2,000 times to see the histogram of estimates against the predicted normal curve. CSV export. ## Facts - Everything is computed client-side in plain JavaScript; there is no model and no server call. - Results are reproducible: random numbers come from a seeded generator.