Fundamentals of Machine Learning

Fall 2022 (COMP451)


Class: Mondays and Wednesdays 10:05 am-11:25 am
Instructor: Siamak Ravanbakhsh
Office hours: TBD
TA Office hours: TBD
Communication plan:
MyCourses: course material
Slack: discussions and all other communications (as a substitute for email)

Course Description

The course will introduce the core concepts of machine learning, with an emphasis on the computational, statistical and mathematical foundations of the field. We will study models for both supervised learning and unsupervised learning, introducing these models alongside foundational machine learning concepts, such as maximum likelihood estimation, regularization, information theory, and gradient-based optimization.


This course requires programming skills (Python and NumPy), calculus (e.g., MATH 222), linear algebra (e.g., MATH 223), probability (MATH 323) and algorithms (COMP 251).

Course Material:

Assignments, slides, and other course materials are posted on myCourses.


There are no required textbook but the topics are covered by the following book:
Probabilistic Machine Learning: An Introduction by Kevin Murphy (2022)

Other Related References
Pattern Recognition and Machine Learning by Christopher Bishop (2007)
Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville (2016)
Machine Learning: A Probabilistic Perspective by Kevin Murphy (2012)
The Elements of Statistical Learning: Data Mining, Inference, and Prediction by Trevor Hastie, Robert Tibshirani and Jerome Friedman (2009)
Information Theory, Inference, and Learning Algorithms, by David MacKay (2003)
Bayesian Reasoning and Machine Learning , by David Barber (2012).
Understanding Machine Learning: From Theory to Algorithms, by Shai Shalev-Shwartz and Shai Ben-David (2014)
Foundations of Machine Learning, by Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar (2018)
Dive into Deep Learning , by Aston Zhang, Zachary Lipton, Mu Li, and Alexander J. Smola (2019)
Mathematics for Machine Learning , by Marc Peter Deisenroth, A Aldo Faisal, and Cheng Soon Ong (2019)
A Course in Machine Learning, by Hal Daumé III (2017)
Hands-on Machine Learning with Scikit-Learn and TensorFlow, by Aurélien Géron (2017)

List of Topics Includes (subject to minor change)

Linear Classification and Regression
Maximum Likelihood
Gradient Descent Methods
Neural Networks and Deep Learning
Examplar Based Methods
Decision Trees, Bagging and Random Forests
Dimensionality Reduction


Evaluation will be based on the following components:
Theory and Programming Assignments (individual)
Final Exam

All due dates are 11:59 pm in Montreal unless stated otherwise. If you experience barriers to learning in this course, please do not hesitate to discuss them with me. As a point of reference, you can reach the Office for Students with Disabilities at 514-398-6009.

Academic Integrity

“McGill University values academic integrity. Therefore, all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Disciplinary Procedures” (see for more information). (Approved by Senate on 29 January 2003)

Language of Submission

“In accord with McGill University’s Charter of Student Rights, students in this course have the right to submit in English or in French any written work that is to be graded. This does not apply to courses in which acquiring proficiency in a language is one of the objectives.” (Approved by Senate on 21 January 2009)