Welcome#

This machine learning course is created with Jupyter notebooks that allow you to interact with all the machine learning concepts and algorithms to understand them better. At the same time, you’ll learn how to control these algorithms and use them in practice.

Lectures#

Lectures can be viewed online as notebooks, as slides (online or PDF), or as videos (hosted on YouTube). They all have the same content. Upon opening the notebooks, you can launch them in Google Colab (or Binder), or run them locally.

1 These lectures (slides and video recordings) will be slightly updated by the end of the spring break.
2 The order of the slides in the video is slightly different.

Get your hands dirty

Retrieve all materials by cloning the GitHub repo. To run the notebooks locally, see the prerequisites.

Have some feedback?

If you notice any issue, or have suggestions or requests, please go the issue tracker or directly click on the icon on top of the page and then ‘open issue`. We also welcome pull requests :).

Labs#

Download the lab notebooks and solve the questions locally, or launch them in Google Colab or Binder. Please review the relevant tutorials before starting the labs. Solutions will appear towards the end of each lab session.

Notebooks

Tutorial

Solutions

1

Linear Models for regression
Linear Models for classification

Tutorial

Lab 1a
Lab 1b (Release date: 12 Feb, 12:00)

2

Model Evaluation

Tutorial

Lab 2 (Release date: 19 Feb, 12:00)

3

Ensembles
Data engineering

Tutorial

Lab 3a
Lab 3b (Release date: 26 Feb, 12:00)

Labs 4-6 are being redesigned and will be released by the end of the spring break.

Background materials#

Tutorials#

General introductions into using Python for scientific programming and machine learning.

  1. Python basics

  2. Python for data analysis

  3. Machine learning in Python

Extra lectures#

Lectures on both basic machine learning techniques (useful for novices to cover any knowledge gaps), as well as additional useful techniques that we couldn’t fit into the schedule.

  1. Decision trees

  2. Nearest Neighbors

  3. Data Preprocessing Basics

  4. Kernelization

  5. Bayesian Learning