Learn Machine Learning from First Principles using JavaScript
About Course
This course teaches machine learning by building it from scratch in JavaScript. No TensorFlow, no scikit-learn, no libraries at all. If you can write a for loop, you can follow it.
How it works
Each section starts with a question. You try to answer it first, then the formal idea is introduced, so you know why it exists before you learn its name.
Every concept is explained in full. No step is skipped and no symbol is left undefined. We work out the maths before we use it.
Everything is drawn on screen. You build small canvas demos: drag a line and watch the error change, watch gradient descent step downhill, watch a decision boundary move, watch a network train.
What you build
Linear regression, gradient descent, logistic regression, a small matrix library, a neural network with backpropagation, k-nearest neighbors, k-means clustering, decision trees, and a handwritten digit recognizer you can draw into.
What you need
Basic JavaScript and school-level maths. No prior machine learning.
Course Content
How does a machine learn?
-
Can a program get better at a task?
-
A guessing game you already know how to play
-
Rules versus examples
-
A learning program in twenty lines
-
Naming the parts: model, parameters, loss
-
Why we use JavaScript for this
-
Setting up a playground with no dependencies