Skip to content
Free course · 27 lessons

Machine Learning

From your first model to real-world ML.

A beginner-friendly route through classic machine learning with Python and Scikit-learn. Each part builds a working project using real data, covering regression, classification, clustering, language, time series and reinforcement learning.

Learning path

4 stages, one step at a time

Each stage builds on the one before it. Go in order the first time, then jump around when you need a refresher.

  1. 01

    Foundations

    What machine learning is, then your first models and how to serve them.

    9 lessons · 1.5 hrsJump to stage →
  2. 02

    Core techniques

    Sorting data into known categories, and finding groups you did not know about.

    6 lessons · 49 minJump to stage →
  3. 03

    Specialized topics

    Working with language, data over time, and agents that learn from rewards.

    10 lessons · 1.9 hrsJump to stage →
  4. 04

    In practice

    How machine learning is used and debugged outside the classroom.

    2 lessons · 20 minJump to stage →
Curriculum

9 parts · 27 lessons

Open a part to see its lessons. Completed lessons are ticked off as you go.

Stage 1 Foundations

01IntroductionCore concepts, the history of the field, responsible AI and the ML workflow.4 lessons31 min4
  1. 01Introduction to machine learningWhat machine learning is, how it relates to AI, and how to set up your tools to study it.6m✓
  2. 02History of machine learningThe milestones behind modern machine learning, from early statistics to today.7m✓
  3. 03Building Machine Learning solutions with responsible AIThe principles of responsible AI, and how bias and unfairness get into models.10m✓
  4. 04Techniques of Machine LearningThe ML workflow: asking a question, preparing data, training, evaluating and tuning.8m✓
02RegressionPrepare data, then build linear, polynomial and logistic regression models.4 lessons49 min22
  1. 01Get started with Python and Scikit-learn for regression modelsSet up Python, notebooks and Scikit-learn, then fit your first regression model.9m✓
  2. 02Build a regression model using Scikit-learn: prepare and visualize dataClean a pumpkin pricing dataset and explore it with charts before modelling.11m✓
  3. 03Build a regression model using Scikit-learn: regression four waysBuild linear and polynomial regression models and compare how well they predict.16m✓
  4. 04Logistic regression to predict categoriesUse logistic regression to predict categories, and read a confusion matrix and ROC curve.13m✓
03Web AppSave a trained model and serve its predictions from a small web app.1 lessons9 min1
  1. 01Build a Web App to use a ML ModelTrain a model, save it with Pickle and serve its predictions from a Flask app.9m✓

Stage 3 Specialized topics

06Natural Language ProcessingLanguage tasks, translation and sentiment analysis, ending with hotel reviews.5 lessons1.1 hrs5
  1. 01Introduction to natural language processingWhat natural language processing is, why language is hard, and how to build a simple bot.8m✓
  2. 02Common natural language processing tasks and techniquesCommon NLP tasks such as tokenization, parsing, n-grams and part-of-speech tagging.9m✓
  3. 03Translation and sentiment analysis with MLHow translation and sentiment analysis work, using classic literature as the data.11m✓
  4. 04Sentiment analysis with hotel reviews - processing the dataExplore and clean a large hotel reviews dataset with Pandas.21m✓
  5. 05Sentiment analysis with hotel reviewsFilter review tags, remove stop words and run sentiment analysis on the hotel data.14m✓
07Time SeriesForecast electricity usage with ARIMA and support vector regression.3 lessons26 min3
  1. 01Introduction to time series forecastingThe concepts behind time series forecasting, with electricity usage as the example.7m✓
  2. 02Time series forecasting with ARIMAForecast future electricity usage with an ARIMA model.11m✓
  3. 03Time Series Forecasting with Support Vector RegressorForecast the same data with a Support Vector Regressor and compare the results.8m✓
08Reinforcement LearningTeach agents with Q-learning, then balance a pole in Gym.2 lessons25 min2
  1. 01Introduction to Reinforcement Learning and Q-LearningTeach an agent to navigate an environment using rewards and a Q-table.13m✓
  2. 02CartPole SkatingApply Q-learning to a continuous problem by balancing a pole in OpenAI Gym.12m✓

BeginnerIntermediateAdvanced

How to get the most out of it

Read, explain, revisit

01

Read in order first

Lessons list their prerequisites at the top. The stages are ordered so you rarely meet a term before it's explained.

02

Write it in your own words

Summarizing the idea and its trade-offs is the quickest way to find what you haven't understood yet.

03

Come back to the diagrams

When revising, skim the diagrams and tables before re-reading. If you can explain each one, you know the lesson.

The lessons in this course are adapted from ML For Beginners by Microsoft and contributors, licensed under the MIT License. The course structure, stage groupings and summaries on this page were written for Engineering Path. Credits & license.