Applied Machine Learning

COMP 551 - Fall 2020

Administrative

  • Class: Tuesdays and Thursdays 10:05 am-11:25 am, Online
  • Instructor: Siamak Ravanbakhsh
  • Office hour: Thursdays 11:30 am-12:30 pm, Online
  • TA Contact (id@mail.mcgill.ca) and Office Hours

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.

Prerequisites

This course requires programming skills (Python/Numpy) and basic knowledge of probability theory, calculus and linear algebra provided by courses similar to MATH-323 or ECSE-305. For more information see the course prerequisites and restrictions at McGill’s webpage.

Course material

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

Textbooks

There are no required textbook but the topics are covered by the following books:

Tutorials

  • ML implementation tutorials:
    • Wednesdays and Fridays at 2 PM EST (starting 25/09/2020)
  • Probability and Linear Algebra
  • Python / NumPy
  • Scikit-Learn (TBA)
  • Pytorch (TBA)

Tentative outline

part 1. a short tour of ML
part 2. Linear models, their probabilistic interpretation and gradient optimization
  • Linear Regression
  • Gradient descent
  • Nonlinear bases
  • Logistic and softmax regression
  • Regularization
  • Bias-variance decomposition
  • Uncertainty estimation
part 3. Neural networks and deep learning
  • Perceptrons
  • Support Vector Machines
  • Multilayer Perceptrons
  • Gradient computation
  • Automated differentiation and Backpropagation
  • Convolutional neural networks
  • Frontiers

Evaluation

Evaluation will be based on the following components:

  • Weekly quizzes (20%) online in myCourses
  • Mini-projects (60%) group assignments
  • Late midterm exam (20%) online, date: November 11th

Late submission

All due dates are 11:59 pm in Montreal unless stated otherwise. No make-up quizzes will be given. For mini-projects, late work will be automatically subject to a 20% penalty and can be submitted up to 5 days after the deadline. If you experience barriers to learning in this course, submitting the projects, etc., 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 www.mcgill.ca/students/srr/honest/ for more information). (Approved by Senate on 29 January 2003)