Golnoosh Farnadi


Assistant Professor at HEC Montréal, Adjunct Professor at University of Montréal, Core Academic Member at MILA, Canada CIFAR AI (CCAI) Chair holder

View My GitHub Profile

| MATH80629A | Lectures | Homework | Lab | Project | Office hour

Machine Learning for Large-Scale Data Analysis and Decision Making (MATH80629A): Fall 2021

Course Description

Welcome to MATH80629A Graduate level course on introduction to machine learning at HEC Montreal (English edition). This is the English edition of the course, for the French edition, please check here. In this course, we will study machine learning models, a type of statistical analysis that focuses on prediction, for analyzing very large datasets (“big data”). The plan is to survey different machine learning techniques (supervised, unsupervised, reinforcement learning) as well as some applications (e.g., recommender systems). We will also study large-scale machine learning and will discuss distributed computational frameworks (Hadoop and Spark).

Course Format

Due to the online nature of the semester, this course will be given as a flipped classroom. It is an instructional strategy where students learn the material before they come to class. The material will be a mix of readings and video capsules. Class time is reserved for more active activities such as problem solving, demonstrations, and questions-answering. In addition, class time will contain a short summary of the week’s material.

Time & room


Please use this form to provide feedback about the course.


Mathematical maturity and basic knowledge of statistics, and probability will be assumed. For the programming assignments and the project, Python programming will be assumed. If you do not know Python here are few ways to learn the basics below.

Further a machine-learning tutorial using python will be provided on week #5.


Your final score for the course will be computed using the following weights:


  1. The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Second Edition Hastie, Trevor, Tibshirani, Robert, Friedman, Jerome, 2009 [ESL]
  2. Deep Learning. Ian Goodfellow, Yoshua Bengio and, Aaron Courville. [DL]
  3. Reinforcement Learning : An Introduction Hardcover. Richard S. Sutton, Andrew G. Barto. A Bradford Book. 2nd edition [RL-Sutton-Barto]
  4. Machine Learning. Kevin Murphy. MIT Press. 2012. [ML-Murphy]
  5. Recommender Systems Handbook, Ricci, F., Rokach, L., Shapira, B., Kantor, P.B. 2011. [RSH]
  6. Data Algorithms : Recipes for Scaling Up with Hadoop and Spark 1st Edition. Mahmoud Parsian. O’Reilly. 2015 [DA]
  7. Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython. Wes McKinney. O’Reilly. 2012 [PDA]
  8. Pattern Recognition and Machine Learning. Christopher Bishop. 2006 [PRML]
  9. Advanced Analytics with Spark. O’Reilly. Second Edition. 2017


I thank prof. Laurent Charlin for sharing his slides and video capsules with me. The majority of the materials of this coursse are based on the previous editions that have been thaugh by him.