deploy-book

UBC CPSC 330: Applied Machine Learning (2025W1)#

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 2025).

The teaching team#

Instructors#

Section

Instructor

Contact

When

Where

101

Giulia Toti

gtoti@cs.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

Giulia Toti

gtoti@cs.ubc.ca

Tue & Thu, 17:00–18:20

DMP 310

Course co-ordinator#

  • Anca Barbu (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.

TAs#

License#

© 2025 Varada Kolhatkar, Mike Gelbart, Giulia Toti

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.

Deliverable due dates (tentative)#

Usually the homework assignments will be due on Mondays (except next week) and will be released on Tuesdays. We’ll also add the due dates in the Calendar. If you find inconsistencies in due dates, follow the due date in the Calendar. For this course, we’ll assume that the Calendar is always right!

Assessment

Due date

Where to find?

Where to submit?

hw1

Sept 09, 11:59 pm

GitHub repo

Gradescope

hw2

Sept 15, 11:59 pm

GitHub repo

Gradescope

Syllabus quiz

Sept 19, 11:59 pm

PrairieLearn

PrairieLearn

hw3

Sept 29, 11:59 pm

GitHub repo

Gradescope

hw4

Oct 06, 11:59 pm

GitHub repo

Gradescope

Midterm 1

Oct 15 and Oct 16

PrairieLearn (CBTF, in person)

PrairieLearn (CBTF, in person)

hw5

Oct 27, 11:59 pm

GitHub repo

Gradescope

hw6

Nov 03, 11:59 pm

GitHub repo

Gradescope

Midterm 2

Nov 13 and Nov 14

PrairieLearn (CBTF, in person)

PrairieLearn (CBTF, in person)

hw7

November 17, 11:59 pm

GitHub repo

Gradescope

hw8

November 24, 11:59 pm

GitHub repo

Gradescope

hw9

December 05, 11:59 pm

GitHub repo

Gradescope

Final exam

TBA

PrairieLearn (CBTF, in person)

PrairieLearn (CBTF, in person)

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. Try to watch the assigned videos before the corresponding lecture. During the lecture, we’ll summarize the important points from the videos and focus on demos, iClickers, and Q&A.

We’ll be developing lecture notes directly in this repository. So if you check them before the lecture, they might be in a draft form. Once they are finalized, they will be posted in the Course Jupyter book.

Date

Topic

Assigned videos

vs. CPSC 340

Sep 2

UBC Imagine Day - no class

Sep 4

Course intro

📹 Pre-watch: 1.0

n/a

Sep 9

Decision trees

📹 Pre-watch: 2.1, 2.2, 2.3, 2.4

less depth

Sep 11

ML fundamentals

📹 Pre-watch: 3.1, 3.2, 3.3, 3.4

similar

Sep 16

\(k\)-NNs and SVM with RBF kernel

📹 Pre-watch: 4.1, 4.2, 4.3, 4.4

less depth

Sep 18

Preprocessing, sklearn pipelines

📹 Pre-watch: 5.1, 5.2, 5.3, 5.4

more depth

Sep 23

More preprocessing, sklearn ColumnTransformer, text features

📹 Pre-watch: 6.1, 6.2

more depth

Sep 25

Linear models

📹 Pre-watch: 7.1, 7.2, 7.3

less depth

Oct 01

National Day for Truth and Reconciliation - no class

Oct 02

Hyperparameter optimization, overfitting the validation set

📹 Pre-watch: 8.1, 8.2

different

Oct 07

Evaluation metrics for classification

📹 Reference: 9.2, 9.3,9.4

more depth

Oct 09

Regression metrics

📹 Pre-watch: 10.1

more depth on metrics less depth on regression

Oct 14 and 15

Midterm 1 - no class

Oct 16

Ensembles

📹 Pre-watch: 11.1, 11.2

similar

Oct 21

Feature importances, model interpretation

📹 Pre-watch: 12.1,12.2

feature importances is new, feature engineering is new

Oct 23

Feature engineering and feature selection

None

less depth

Oct 28

Clustering

📹 Pre-watch: 14.1, 14.2, 14.3

less depth

Oct 30

More clustering

📹 Pre-watch: 15.1, 15.2, 15.3

less depth

Nov 04

Simple recommender systems

less depth

Nov 06

Text data, embeddings, topic modeling

📹 Pre-watch: 16.1, 16.2

new

Nov 11

UBC Midterm break - no class

Nov 13 and 14

Midterm 2 - no_class

Nov 18

Neural networks and computer vision

less depth

Nov 20

Time series data

(Optional) Humour: The Problem with Time & Timezones

new

Nov 25

Survival analysis

📹 (Optional but highly recommended)Calling Bullshit 4.1: Right Censoring

new

Nov 27

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

    Dec 02

    Ethics

    📹 (Optional but highly recommended)

  • Calling BS videos Chapter 5 (6 short videos, 50 min total)
  • The ethics of data science
  • new

    Dec 04

    Model deployment and conclusion

    new

    Reference Material#

    Click to expand!

    Books#

    Online courses#

    Misc#

    Syllabus#

    The syllabus is available here.

    Enjoy your learning journey in CPSC 330: Applied Machine Learning!