Skip to main content
Back to courses

Machine Learning Foundations

Learn how machines learn from data: implement regression, trees, metrics, k-means, PCA and anomaly detection from scratch in NumPy, and practise honest evaluation.

Level: Intermediate4 modules · 12 lessons · 6h 49m
machine-learningpythonnumpyregressionclassificationclustering

Leads to: Data Scientist, Machine Learning Engineer

Before you start

This course builds on Intro to Data Analysis with Python, Calculus & Linear Algebra for STEM and Probability & Statistical Inference. Take them first if you are new to the topic.

About this course

An intermediate course for data scientists and machine learning engineers. You will frame problems as supervised or unsupervised learning, split data without leakage, and train models with gradient descent. You will build linear and logistic regression, decision trees and a small random forest, and choose metrics that stay honest when classes are imbalanced. In the unsupervised module you will cluster customers with k-means, compress features with PCA and flag outliers with an isolation forest. The last module covers responsible practice: feature engineering, checking a model for unfair group disparities, and tuning hyperparameters with cross-validation. Every algorithm is written from scratch in NumPy in the browser, and each lesson shows the scikit-learn equivalent you will use at work. Prerequisites: Intro to Data Analysis with Python, Calculus & Linear Algebra for STEM, and Probability & Statistical Inference.

Course content

  1. Module 1

    How Machines Learn

  2. Module 2

    Supervised Learning

  3. Module 3

    Unsupervised Learning

  4. Module 4

    Responsible Practice

Where this course leads

Next course on the path