Applied Machine Learning

Fall 2021 (COMP551-001)


Please note that 120 out of 300 seats are currently reserved for graduate students. If any of these seats remain open after graduate students get the chance to register in the fall, they will be made availab to everyone. Since COMP 451 is not offered this year, COMP 551 will also put an additional emphasis on the theory component. Please consider the mathematical requirements (mentioned below) when registering for this course.


Class: Tuesdays and Thursdays 10:05 am-11:25 pm, Online
Instructor: Siamak Ravanbakhsh
Office hours: Thursdays 11:30 pm-12:30 pm, Online
TA team TBD

Course Description

This course covers a selected set of topics in machine learning and data mining, with an emphasis on good methods and practices for deployment of real systems. The majority of sections are related to commonly used supervised learning techniques, and to a lesser degree unsupervised methods. This includes fundamentals of algorithms on linear and logistic regression, decision trees, support vector machines, clustering, neural networks, as well as key techniques for feature selection and dimensionality reduction, error estimation and empirical validation.


This course requires programming skills (Python and NumPy) and knowledge of probability (e.g., MATH 323 or ECSE 305), calculus (e.g., MATH 222), linear algebra (e.g., MATH 223), and algorithms (e.g., COMP 251). For more information on official requirements see the course prerequisites and restrictions here.

Course Material:

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


There are no required textbook but the topics are covered by the following books:
[Bishop] Pattern Recognition and Machine Learning by Christopher Bishop (2007)
[Goodfellow]    Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville (2016)
[Murphy] Machine Learning: A Probabilistic Perspective by Kevin Murphy (2012)

Other Related References
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)


See the course outline from Fall 2020. The new detailed outline will be posted closer to the start of the semester.