Machine Learning

CSCI 5770G

Winter 2023

Faisal Qureshi

faisal.qureshi@ontariotechu.net

Jan 1, 2023

Website is now online.

- Wednesday, 11:10-2:00 in UA 3230

https://piazza.com/class/lbhxjy4q6c83do

- Monday, 11:15-12:15
- in-person in UA4032
- online at https://meet.google.com/ssi-osuu-pwg
- Or by appointment

Student work will be submitted via the course canvas site.

This is an introductory graduate course in machine learning. This course will focus on both supervised and un-supervised learning methods, covering both theory and practice. The course is geared towards students who wish to develop a working knowledge of the recent advances in machine learning, and how these are applied in various domains.

Machine learning deals with how to design computer programs that
learn from “experience.” Residing at the intersection of computer
science and statistics, machine learning aims to extract useful
information from data (often referred to as the *training data*)
and leverages this information to create computer models capable of
carrying out useful, non-trivial tasks, such as designing cars that can
drive on their own, filters for blocking junk email, diagnostics tools
for disease discovery, etc. By many accounts machine learning is the
“greatest export” of computer science (and statistics) to other
disciplines.

The course will cover the following topics:

- regression;
- classification;
- dimensionality reduction; and
- neural networks and deep learning.

The course assumes that students are comfortable with statistics, basic linear algebra, and programming.

I recommend reading Part 1 of “Deep Learning” by I. Goodfellow, Y. Bengio and A. Courville to brush up on linear algebra and statistics. The book is available at here

We will be using Python for the programming part of this course. For Python, I recommend the Anaconda distribution, which comes pre-loaded for nearly all the packages that we will be using in this course. Of course you are welcome to use any variant/distribution of Python that suits you.

Here you’ll find a number of tutorials showcasing Python use in machine learning. I strongly recommend that you become comfortable with the following four Python packages/environment:

- numpy;
- scipy;
- matplotlib; and
- jupyter notebook.

- Exam, 40%, in class on March 22
- Participation, 10%
- Project, 50%

**A student needs to get 60% marks in the project to
successfully complete the course.**

- Exam, March 22
- Project proposals due, Feb 16
- Project reports due, Apr 11

Ontario Tech University’s academic calendar that lists important dates (and deadlines) is available at here.

- Linear regression
- Linear regression in 2D
- Fitting polynomials
- Linear regression with Gaussian basis functions

- Midterm exam

The course project is an independent exploration of a specific problem within the context of this course. It is worth 50% of the marks. A project can be implementation oriented—where a student implements a machine learning algorithm—or application oriented—where a student attempts to solve a problem (of suitable difficulty) by applying machine learning techniques. Project topic will be decided in consultation with the instructor. Project grade will depend on the ideas, how well you present them in the report, how well you position your work in the related literature, how thorough are your experiments and how thoughtful are your conclusions.

One page project proposals are due by Feb. 16. The project report, in the form of a paper, is due by Apr. 11. Time permitting there will be an opportunity to give a short presentation about your project.

For your final project write-up you must use ACM SIG Proceedings Template (available at the ACM website). Project report is at most 12 pages long, plus extra pages for references.