Machine Learning for Large-Scale
Data Analysis and
This is the official website of the course. I will keep it up to date. In case of disagreement with Zone
Cours this website will preval.
Instructor: Laurent Charlin
Class Schedule Fall 2018: I am teaching the course twice this term.
Office hours: Wednesday 11:30am--12:30pm. CSC 4.817.
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"). In addition to standard models, we will
study models for analyzing user behaviour and for decision making.
Massive datasets are now common and require scalable analysis tools.
Machine learning provides such tools and is widely used for modelling
problems across many fields including artificial intelligence,
bioinformatics, finance, marketing, education, transportation, and
Mathematical maturity will be assumed. Programming will also be
required but python tutorial(s) will be provided in the first few
weeks of the class. 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 focus
on large-scale machine learning and will discuss distributed
computational frameworks (Hadoop and Spark).
Class introduction and math
Programming with Python I [**In Lab -- Decelles, Laboratoire LACED**]
Machine learning fundamentals. [slides]
Required readings: Chapter 5 of
Deep Learning (the book).
Python for scientific computations and machine learning [**In Lab -- Decelles, Laboratoire Lachute (Wednesday)/LACED (Thursday)**]
Supervised learning algorithms [slides]
Neural networks and deep learning [slides]
Unsupervised learning [slides]
Sections 4.1-4.3, 4.5 of The Elements of
Statistical Learning (available online),
Sections 3.5 and 4.2 of Machine Learning (K.
Required reading: Section 14.3 (skip 14.3.5 and 14.3.12) of the Elements of Statistical Learning (available online).
Project team meetings
Parallel computational paradigms for large-scale data processing [slides]
Recommendation systems I [slides]
Sequential decision making I [slides]
Sequential decision making II [slides]
Class project presentations [** Groupe Cholette (CSC -- Yellow Section)**]
Due date: study plan TBD (Around October 23), final report TBD (Around December 19)
Project presentation (10%).
Final Exam (30%).
07/12 (December 7) 9am-12pm, room: TBD.
Documentation allowed: cheat sheet (standard size 8.5 x 11, double sided), calculator.
Class participation (10%).
The Elements of Statistical Learning: Data Mining,
Inference, and Prediction, Second Edition
Hastie, Trevor, Tibshirani, Robert, Friedman, Jerome, 2009
Deep Learning. Ian Goodfellow, Yoshua Bengio and, Aaron Courville. [DL]
Reinforcement Learning : An Introduction Hardcover. Richard S. Sutton, Andrew G. Barto. A Bradford Book. 2nd edition [RL-Sutton-Barto]
Machine Learning. Kevin Murphy. MIT Press. 2012. [ML-Murphy]
Recommender Systems Handbook, Ricci, F., Rokach, L., Shapira, B., Kantor, P.B. 2011. [RSH]
Mining of Massive Datasets. Jure Leskovec, Anand Rajaraman,
Jeff Ullman. Cambridge University Press. 2014. [MMDS]
Decision Theory. Halsted. 1986. [DT]
Data Algorithms : Recipes for Scaling Up with Hadoop and Spark 1st
Edition. Mahmoud Parsian. O'Reilly. 2015 [DA]
Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython. Wes McKinney. O'Reilly. 2012 [PDA]
Data Science from Scratch : First Principles with Python. Joel Grus. 2015 [DSS]
Pattern Recognition and Machine Learning. Christopher Bishop. 2006 [PRML]
Advanced Analytics with Spark. O'Reilly. Second Edition. 2017