UBC CPSC 330: Applied Machine Learning (2026W1)¶
This is the course homepage for CPSC 330: Applied Machine Learning at the University of British Columbia. You are looking at the current version (Sep-Dec 2026).
Important links¶
Syllabus¶
The syllabus is available here. Please read it carefully to understand all rules and expectations of this course. The content of the syllabus is tested in a quiz, to be completed by Sep 19, 11:59 pm.
The teaching team¶
Instructors¶
| Section | Instructor | Contact | When | Where |
|---|---|---|---|---|
| 101 | Firas Moosvi | firas.moosvi@ubc.ca | Tue & Thu, 15:30–16:50 | DMP 310 |
| 102 | Varada Kolhatkar | kvarada@cs.ubc.ca | Tue & Thu, 11:00–12:20 | DMP 310 |
| 103 | Mehrdad Oveisi | moveisi@cs.ubc.ca | Tue & Thu, 9:30–10:50 | DMP 310 |
Course co-ordinator¶
Carol Feng (cpsc330
-admin@cs .ubc .ca), please reach out to the course co-ordinator for: admin questions, extensions, academic concessions etc. Include a descriptive subject, your name and student number, this will help us keep track of emails.
Office hours¶
| Day | Time | Host | Link/Location |
|---|---|---|---|
| Monday | 13:00–14:00 | Sarthak | Zoom |
| Monday | 15:00–16:00 | James | Zoom |
| Tuesday | 11:00 | Mehrdad & Joseph | Zoom & ICCS X153 |
| Tuesday | 12:30 to 1:00 | Varada | ICCS 237 |
| Tuesday | 17:00–17:30 | Firas | DMP 310 |
| Wednesday | 14:00–15:00 | James | Zoom & ICCS X153 |
| Thursday | 11:00 | Mehrdad & Narmada | Zoom & ICCS X153 |
| Thursday | 12:30 to 1:00 | Varada | ICCS 237 |
| Thursday | 17:00–17:30 | Firas | DMP 310 |
TAs¶
Jun He Cui
Neo Ghassemi
James Ho
Himanshu Mishra
Narmada Naik
Sneha Sambandam
Sarthak Sharma
Joseph Soo
Mahsa Zarei
Perry Zhu
Deliverable due dates (tentative)¶
| Assessment | Due date |
|---|---|
| hw1 | Sept 14, 11:59 pm |
| Syllabus quiz | Sept 19, 11:59 pm |
| hw2 | Sept 21, 11:59 pm |
| hw3 | Oct 5, 11:59 pm |
| hw4 | Oct 12, 11:59 pm |
| Midterm 1 | Oct 19-21 (ORCA) |
| hw5 | Oct 26, 11:59 pm |
| hw6 | Nov 02, 11:59 pm |
| hw7 | Nov 09, 11:59 pm |
| Midterm 2 | Nov 12-14 (ORCA) |
| hw8 | November 23, 11:59 pm |
| hw9 | December 04, 11:59 pm |
| Final exam | TBA |
Lecture schedule (tentative)¶
Live lectures: The lectures will be in-person. The location can be found in the Calendar.
This course will be run in a semi flipped classroom format. There will be pre-watch videos for many lectures, at least in the first half of the course. All the videos are available on YouTube and are posted in the schedule below. Watching the supporting videos before the corresponding lecture is highly recommended to help you understand the material. It is not required, and there are no pre-lecture quizzes. During the lecture, we’ll summarize the important points from the videos and focus on demos, iClickers, and Q&A.
You’ll find the lecture notes in textbook form here: CPSC 330 textbook.
Each instructor will use their own slides and/or Jupyter notebooks based on these lecture notes.
| Chp# | Date | Topic | Recommended videos | vs. CPSC 340 |
|---|---|---|---|---|
| Sep 8 | UBC Imagine Day - no class | |||
| 1 | Sep 10 | Course intro | 📹 Pre-watch: 1.0 | n/a |
| 2 | Sep 15 | From data to a first model | 📹 Pre-watch: 2.1, 2.2, 2.3, 2.4 | less depth |
| 3 | Sep 17 | ML fundamentals | 📹 Pre-watch: 3.1, 3.2, 3.3, 3.4 | similar |
| 4 | Sep 22 | Similarity-based models | 📹 Pre-watch: 4.1, 4.2, 4.3, 4.4 | less depth |
| 5 | Sep 24 | Preprocessing, sklearn pipelines | 📹 Pre-watch: 5.1, 5.2, 5.3, 5.4 | more depth |
| 6 | Sep 29 | More preprocessing, sklearn ColumnTransformer, text features | 📹 Pre-watch: 6.1, 6.2 | more depth |
| 7 | Oct 01 | Linear models | 📹 Pre-watch: 7.1, 7.2, 7.3 | less depth |
| 8 | Oct 06 | Hyperparameter optimization, overfitting the validation set | 📹 Pre-watch: 8.1, 8.2 | different |
| 9 | Oct 08 | Evaluation metrics for classification | 📹 Reference: 9.2, 9.3, 9.4 | more depth |
| 10 | Oct 13 | Regression metrics | 📹 Pre-watch: 10.1 | more depth on metrics less depth on regression |
| 11 | Oct 15 | Ensembles | 📹 Pre-watch: 11.1, 11.2 | similar |
| Oct 19-21 | Midterm 1 | |||
| 12 | Oct 20 | Feature importances, model interpretation | 📹 Pre-watch: 12.1, 12.2 | feature importances is new, feature engineering is new |
| 13 | Oct 22 | Feature engineering and feature selection | None | less depth |
| 14 | Oct 27 | Clustering | 📹 Pre-watch: 14.1, 14.2, 14.3 | less depth |
| 15 | Oct 29 | More clustering | 📹 Pre-watch: 15.1, 15.2, 15.3 | less depth |
| 16 | Nov 03 | Simple recommender systems | less depth | |
| 17 | Nov 05 | Neural networks and computer vision | less depth | |
| Nov 9-11 | UBC Midterm break - no class | |||
| Nov 12-14 | Midterm 2 - no class | |||
| 18 | Nov 17 | Text data, intro to LLMs | 📹 Pre-watch: 16.1, 16.2 | new |
| 19 | Nov 19 | Time series data | (Optional) Humour: The Problem with Time & Timezones | new |
| 20 | Nov 24 | Survival analysis | 📹 (Optional but highly recommended) Calling Bullshit 4.1: Right Censoring | new |
| 21 | Nov 26 | Communication | 📹 (Optional but highly recommended) Calling BS videos Chapter 6 (6 short videos, 47 min total); Can you read graphs? Because I can’t. by Sabrina (7 min) | new |
| 22 | Dec 01 | Ethics | 📹 (Optional but highly recommended) Calling BS videos Chapter 5 (6 short videos, 50 min total); The ethics of data science | new |
| 23 | Dec 03 | Model deployment and conclusion | new |
Tutorial Schedule¶
| Week | Dates | Tutorial Content | Special Notes |
|---|---|---|---|
| 1 | Sep 09-11 | Tu0: Introductions & Environment Setup | Optional, not for credit |
| 2 | Sep 16-18 | Tu1: Decision Boundaries | |
| 3 | Sep 23-25 | Tu2: ML Fundamentals | |
| 4 | Sep 30-Oct 2 | Tu3: Preprocessing Extra Practice | |
| 5 | Oct 07-09 | Tu4: Linear Models | |
| 6 | Oct 14-16 | Midterm 1 Prep | |
| 7 | Oct 21-23 | Tu5: Ensembles | |
| 8 | Oct 28-30 | Tu6: Clustering | |
| 9 | Nov 04-06 | Midterm 2 Prep | |
| 10 | Nov 12-13 | Tutorials used as TA Office Hours | All students are welcome to any tutorial on Thursday and Friday |
| 11 | Nov 18-20 | Tu7: LLMs | |
| 12 | Nov 25-27 | Tu8: Time Series | |
| 13 | Dec 02-04 | Tu9: Fairness |
Reference Material¶
Click to expand!
Books¶
Introduction to Machine Learning with Python by Andreas C. Mueller and Sarah Guido.
A Course in Machine Learning (CIML) by Hal Daumé III
Data Mining: Practical Machine Learning Tools and Techniques (PMLTT)
Artificial intelligence: A Modern Approach by Russell, Stuart and Peter Norvig.
Artificial Intelligence 2E: Foundations of Computational Agents (2023) by David Poole and Alan Mackworth (of UBC!).
Online courses¶
Machine Learning (Andrew Ng’s famous Coursera course)
Foundations of Machine Learning online course from Bloomberg.
Machine Learning Exercises In Python, Part 1 (translation of Andrew Ng’s course to Python, also relevant for DSCI 561, 572, 563)
Misc¶
A Few Useful Things to Know About Machine Learning (an article by Pedro Domingos)
Metacademy (sort of like a concept map for machine learning, with suggested resources)
Machine Learning 101 (slides by Jason Mayes, engineer at Google)
License¶
© 2026 Varada Kolhatkar, Mike Gelbart, Giulia Toti, Firas Moosvi, Mehrdad Oveisi
Software licensed under the MIT License, non-software content licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) License. See the license file for more information.