Machine Learning CS-433

This course is offered jointly by the TML and MLO groups. Previous year’s website: ML 2021.
See here for the ML4Science projects.

Contact us: Use the discussion forum, or some of the contact details below:

Instructor Nicolas Flammarion Instructor Martin Jaggi
Office INJ 336 Office INJ 341
Email [email protected] Email [email protected]
Office Hours By appointment Office Hours By appointment
Teaching Assistants
  • Youssef Allouah
  • Maksym Andriushchenko
  • El Mahdi Chayti 
  • Jean-Baptiste Cordonnier
  • Lie He
  • Atli Kosson
  • Lara Orlandic
  • Scott Pesme
  • Maria-Luiza Vladarean 
Student Assistants
  • Bastien Aymon
  • Jérémy Baffou
  • Léandre Castagna
  • Pascal Epple
  • Rui Huang
  • Iris Kremer
  • Fabio Matti
  • Klavdiia Naumova
  • Auguste Poiroux
  • Perrine Vantalon
  • Ke Wang
Lectures Tuesday 16:15 – 18:00 in Rolex Learning Center
  Wednesday 10:15 – 12:00 in Rolex Learning Center
Exercises Thursday 14:15 – 16:00

Rooms: INF119INF2INJ218INM202INR219 

(assignment see course info sheet)

Language:   English
Credits :   8 ECTS

For a summary of the logistics of this course, see the course info sheet here (PDF).
(and also here is a link to official coursebook information).

Special Announcements

  • The links for the exercises signup and the discussion forum password are on moodle. All other materials are here on this page and github.
  • Projects: There will be two group projects during the course.
    • Project 1 counts 10% and is due Oct 31st.
    • Project 2 counts 30% and is due Dec 22th.
  • The videos of the lectures for each week, new exercise sheet, as well as the solutions for the previous week will be made available each Tuesday. Labs and projects will be in Python. See Lab 1 to get started.
  • Code Repository for Labs, Projects, Lecture notes:
  • the exam is closed book but you are allowed one crib sheet (A4 size paper, both sides can be used); bring a pen and white eraser; you find the exams from the past years with solutions here:

Detailed Schedule

Lecture notes from each class are made available on github here, and videos here on youtube.

Date Topics Covered Lectures Slides Exercises Projects
20/9 Introduction, Linear Regression 01a,01b
21/9 Cost functions     Lab 1  
27/9 Optimization 02a      
28/9 Optimization     Lab 2 Project 1 start
04/10 Least Squares, Overfitting        
05/10 Max Likelihood, Ridge Regression, Lasso     Lab 3  
11/10 Generalization, Model Selection, and Validation        
12/10 Bias-Variance decomposition     Lab 4  
18/10 Classification        
19/10 Logistic Regression     Lab 5  
25/10 Generalized Linear Models        
26/10 K-Nearest Neighbor     Lab 6  
01/11 Support Vector Machines       Proj. 1 due 31.10.
02/11 Kernel Regression     Lab 7  
08/11 Neural Networks – Basics, Representation Power       Project 2 start
09/11 Neural Networks – Backpropagation, Activation Functions     Lab 8  
15/11 Neural Networks – CNN, Regularization, Data Augmentation, Dropout        
16/11 Adversarial ML     Lab 9  
22/11 Ethics and Fairness in ML        
23/11 Unsupervised Learning, K-Means     Lab 10  
29/11 Gaussian Mixture Models        
30/12 EM algorithm     Lab 11  
06/12 Generative models        
07/12 SVD and PCA     Lab 12 & Project Q&A  
13/12 Matrix Factorizations        
15/12 Text Representation Learning     Lab 13  
20/12 Guest Lecture        
21/12 Projects       Proj. 2 due 22.12.


(not mandatory)

Gilbert Strang, Linear Algebra and Learning from Data
Christopher Bishop, Pattern Recognition and Machine Learning
Shai Shalev-Shwartz, Shai Ben-David, Understanding Machine Learning
Michael Nielsen, Neural Networks and Deep Learning

Projects & ML4Science

Projects are done either in ML4Science in collaboration with any lab of EPFL, UniL or other academic institution, or the Reproducibility Challenge for ML papers, or one of the predefined ML challenges.

All info about the interdisciplinary ML4Science projects is available on the separate page here.