Eight-Week Curriculum
Each week pairs a mathematical theme with a coding assignment and a checkpoint quiz. Estimated at 65 focused hours total — roughly one week of part-time study each.
Algebra and Mathematical Language
Reading and unpacking the symbols ML papers assume you know.
Learning objectives
- Fluently manipulate expressions, fractions, powers, and signs
- Solve and rearrange equations and inequalities
- Read Σ, Π, set, and indexed notation without stalling
Implement summation and product notation as Python loops, then as vectorized NumPy, and confirm they agree.
Outcome: Read and unpack basic mathematical expressions used in ML.
Functions and NumPy Foundations
Models and losses are functions; NumPy is how we evaluate them.
Learning objectives
- Reason about domain, range, composition, and inverses
- Recognize the standard ML activation functions by shape
- Manipulate NumPy arrays with correct shapes, dtypes, and broadcasting
Implement sigmoid, tanh, ReLU, and softplus as vectorized NumPy functions and plot them over a grid.
Outcome: Understand how ML models and loss functions are represented as mathematical functions.
Vectors
The geometry and algebra of feature vectors and embeddings.
Learning objectives
- Compute linear combinations and dot products
- Measure size, distance, angle, and cosine similarity
- Connect vectors to features and embeddings
Implement dot product, Euclidean distance, and cosine similarity from scratch and verify against NumPy.
Outcome: Understand vectors geometrically, algebraically, and computationally.
Matrices and Linear Systems
Matrices as data, as operations, and as transformations of space.
Learning objectives
- Multiply matrices and track shapes through a pipeline
- Solve Ax = b and classify the solution set
- Read a matrix as a linear transformation
Implement matrix multiplication with triple loops and with @, then implement a small Gaussian elimination solver.
Outcome: Reason about matrix operations and dimensions in ML architectures.
Vector Spaces and PCA Intuition
Directions, dimensions, variance, and dimensionality reduction.
Learning objectives
- Reason about span, independence, basis, rank, and subspaces
- Interpret eigenvectors/eigenvalues geometrically
- Explain PCA as the eigen-structure of covariance
Implement PCA from scratch (center, covariance, eigen-decomposition, project) on a 2-D dataset.
Outcome: Understand how directions, dimensions, and transformations relate to data representations.
Limits and Derivatives
Rate of change as the foundation of all learning.
Learning objectives
- Evaluate limits and reason about continuity
- Differentiate with the standard rules
- Approximate derivatives numerically
Implement a central-difference numerical derivative and compare it to analytic derivatives across step sizes.
Outcome: Understand derivatives as sensitivity and rate of change.
Chain Rule and Gradients
How gradients are computed through composed functions.
Learning objectives
- Apply the chain rule and draw computational graphs
- Run forward and backward passes by hand
- Assemble partial derivatives into gradients
Implement a tiny reverse-mode autodiff for y = (w·x + b)² and check gradients with finite differences.
Outcome: Understand how gradients are calculated through composed functions.
Optimization and Linear Regression
Assembling calculus, linear algebra, and NumPy into a learner.
Learning objectives
- Run and diagnose gradient descent
- Derive the gradients of MSE
- Implement, verify, and analyze linear regression
Complete the final project: linear regression by gradient descent, gradient-checked, with a closed-form comparison.
Outcome: Derive and implement linear regression from scratch.
Capstone
The course ends with a complete final project: reproducing linear regression from the equations to a gradient-checked implementation and a research-style report.
Open the final project →