CMPUT 267 (Winter 2024)

Basics of Machine Learning

Syllabus

Getting Started

Please read through this document for the course. It is not that long, and it will save us all time if you know this information about the course.

New Students

For students who joined after the first lecture: if you have recently registered, it is your responsibility to catch up. Course information, the syllabus, the eClass site, and the Piazza discussion forum are all linked here. This course website contains all lecture information and the eClass site contains all coursework required. Read the lecture slides and all course information to catch up. Your questions about the course logistics are likely answered in the information provided, so please look there first. You can come to the TA or instructor office hours if you have specific questions about something in the lectures.

Class Times:
Tuesdays and Thursdays, 2:00 pm–3:20 pm
Location:
TEL 150
Instructor:
Nidhi Hegde (nidhih at ualberta.ca)
Office Hours:
Fridays 1:00 pm - 2:00 pm in ATH 3-04
TA Email
cmput267@ualberta.ca
eClass
https://eclass.srv.ualberta.ca/course/view.php?id=95783
Syllabus
A pdf including the same information as below.
Textbook
The Machine Learning Notes.

TAs and Office Hours

There will be TA office hours both in-person and online. You can sign up for 10-minute slots, using this excel sheet.

TA Day and Time Location
Shreya Pekhale Mondays 9:00 am - 10:00 am Google Meet
Aniket Sharma Mondays 3:00 pm - 4:00 pm CAB 313
Olya Mastikhina Tuesdays 11:00 am - 12:00 pm CAB 313
Kailash Seshadri Tuesdays 12:00 pm - 1:00 pm Google Meet
Vlad Tkachuk Wednesdays 2:00 pm - 3:00 pm CAB 313
Vedd Kuknur Wednesdays 4:00 pm - 5:00pm CAB 313
Duc Thang Chu Thursdays 10:00 am - 11:00 pm CAB 313
Guoqing Luo Thursdays 4:00 pm - 5:00 pm Google Meet
Yongchang Hao Fridays 2:00 pm - 3:00pm Google Meet

Contact Information: cmput267@ualberta.ca

Course Objective

The field of machine learning involves the development of statistical algorithms that can learn from data, and make predictions on data. These algorithms and concepts are used in a range of computing disciplines, including artificial intelligence, robotics, computer vision, natural language processing, data mining, information retrieval, bioinformatics, etc. This course introduces the fundamental statistical, mathematical, and computational concepts in analyzing data. The goal for this introductory course is to provide a solid foundation in the mathematics of machine learning, in preparation for more advanced machine learning concepts. The course focuses on univariate models, to simplify some of the mathematics and emphasize some of the underlying concepts in machine learning, including how should one think about data; how can data be summarized; how models can be estimated from data; what sound estimation principles look like; how generalization is achieved; and how to evaluate the performance of learned models.

Overview

Learning Outcomes

By the end of the course, you should understand…

By the end of the course, you will have improved your skills in…

Topics

Knowledge Prerequisites

In this course, we will cover some basics in probability and optimization that you will need for the course. However, you will be applying these concepts for machine learning, and so it is important that (a) you have been exposed to some of the concepts before, and (b) are at least enforcing some of the mathematical knowledge in parallel. You must have taken calculus before this course, and have some programming experience. Background in probability and a first course in programming is recommended to be taken before this course, but can be taken as a co-requisite. An excitement to understand the mathematics underlying machine learning is a must.

The course CMPUT 272 is included as a co-requisite, as that course helps you become more comfortable with mathematical formalization. This co-requisite is particularly pertinent to those in CS, where CMPUT 272 is a requirement. For other departments, other math classes might provide that background, and can be used in place of CMPUT 272. In this case, you can email the instructor for permission to take the course without 272.

Pre-requisites

Co-requisites

Office hours/Labs

The instructor and TAs will hold frequent office hours. Occasionally, there may be lab sessions similar to office hours where students can ask TAs questions and work in the same room on the assignments. We may host review seminars, particularly early in the course, to cover background on Julia and background mathematical concepts.

Readings / Notes

Students are expected to read the corresponding sections about a class’s topic from notes before class as each class will discuss each topic in more detail and address questions about the material.

All readings are from the machine learning notes. These are designed to be short, so that you can read every chapter. I recommend avoiding printing these notes, since later parts of the notes are likely to be modified (even if only a little bit).

Other resources you can consult

Resources for Julia

Grading

There will be 8 assginments during the term and only the best 7 out of 8 will count towards your final grade. We will have weekly Participation and Reading Questions - mini quizzes, to be completed online. There will be 2 midterm exams. Marks will be converted to Letter Grades at the end of the course.

Late Policy

Participation and reading questions are given a 36 hour window and must be completed in that time. No late submissions will be accepted.

We will not accept late assignments; there is no late penalty policy. The assignments must be submitted electronically via eClass on time, by 11:59 pm Mountain time on the due date. There is a grace period of 48 hours when assignments will be accepted. No submissions will be accepted after 48 hours after the deadline, and the assignment will be considered as incomplete if not submitted. Refer to the FAQ document linked above for more information. If you have a personal issue (e.g., serious illness) that impacts your ability to submit on time, then please email the instructor asap before the deadline, so that an appropriate plan can be made.

Academic Honesty

All assignments and exams are individual, except when collaboration is explicitly allowed. All the sources used for problem solution must be acknowledged, e.g. web sites, books, research papers, personal communication with people, etc. Academic honesty is taken seriously; for detailed information see https://www.deanofstudents.ualberta.ca/en/AcademicIntegrity.aspx