Skip to content

UBC-CS/cpsc330-2024s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UBC CPSC 330: Applied Machine Learning (2024s)

Introduction

This is the course homepage for CPSC 330: Applied Machine Learning at the University of British Columbia. You are looking at the 2024S1 version, May-June 2024.

Instructor

Mehrdad Oveisi

Class Schedule

Section Location Day Lecture Office Hour OH Held By
911 DMP 310 Mon, Wed, Fri 10:00 - 13:00 13:00 - 14:00 TAs
912 MCLD 2018 Mon, Wed, Fri 14:00 - 17:00 17:00 - 18:00 TAs and Instructor

Course Coordinator

Liam Salt

Please email Liam Salt at the above email address for all administrative concerns such as CFA accommodations or exemptions due to sickness or extenuating circumstances.

Teaching Assistants

License

© 2023 Varada Kolhatkar and Mike Gelbart

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.

Important links

Compact course schedule (tentative)

IMPORTANT NOTE
As a general rule, summer terms are quite compact and thus time management is crucial to keep up with the course content and the deadlines. More precisely, based on the university calendar, the number of Teaching Days is 63 in winter terms and it is 28 in summer terms. That means there will be 2.25 (63÷28) times more content to learn per week, and 2.25 times faster pace for the homework due dates. In other words, you are expected to learn and deliver the same amount of work compared to winter terms, but do it 2.25 times faster! For this reason, time management is of utmost importance in order to succeed in the course.

The following chart is a very compact version of the course tentative schedule.

tentative schedule

 

The following sections provide for more detailed course schedule.

Deliverable due dates (tentative)

Assessment Due date Where to find? Where to submit?
Syllabus quiz May 17, 23:00 PrairieLearn PrairieLearn
hw1 May 18, 23:00 Github repo PrairieLearn
hw2 May 21, 23:00 Github repo PrairieLearn
hw3 May 25, 23:00 Github repo PrairieLearn
hw4 May 30, 23:00 Github repo PrairieLearn
Midterm June 4, 18:00
Details on Piazza
PrairieTest PrairieTest (in-person)
hw5 June 08, 23:00 Github repo PrairieLearn
hw6 June 11, 23:00 Github repo PrairieLearn
hw7 June 15, 23:00 Github repo PrairieLearn
hw8 June 20, 23:00 Github repo PrairieLearn
Final exam [TBA]
Final exam schedule
PrairieTest PrairieTest (in-person)
Final exam viewing [TBA] Perhaps before July 12 CBTF In-person only (online not possible)

Lecture schedule (tentative)

Lectures:

  • The lectures will be in-person (see Class Schedule above for more details).
  • All lecture files are subject to change without notice up until they are covered in class.
  • You are expected to watch the "Pre-watch" videos before each lecture.
  • You are expected to attend the lectures.
  • You will find the lecture notes under the lectures in this repository. Lectures will be posted/updated as they become available.
Lectures Date Topic Assigned videos vs. CPSC 340
01 May 13 Course intro 📹
  • Pre-watch: None
  • Recap video (after lecture): 1.0
  • n/a
    Part I: ML fundamentals and preprocessing
    02 May 13 & 15 Decision trees 📹
  • Pre-watch: 2.1, 2.2
  • After lecture: 2.3, 2.4
  • less depth
    03 May 15 ML fundamentals 📹
  • Pre-watch: 3.1, 3.2
  • After lecture: 3.3, 3.4
  • similar
    04 May 17 $k$-NNs and SVM with RBF kernel 📹
  • Pre-watch: 4.1, 4.2
  • After lecture: 4.3, 4.4
  • less depth
    05 May 17 & 22 Preprocessing, sklearn pipelines 📹
  • Pre-watch: 5.1, 5.2
  • After lecture: 5.3, 5.4
  • more depth
    06 May 22 More preprocessing, sklearn ColumnTransformer, text features 📹
  • Pre-watch: 6.1, 6.2
  • more depth
    07 May 24 Linear models 📹
  • Pre-watch: 7.1, 7.2, 7.3
  • less depth
    08 May 24 & 27 Hyperparameter optimization, overfitting the validation set 📹
  • Pre-watch: 8.1,8.2
  • different
    09 May 27 Evaluation metrics for classification 📹
  • Pre-watch: 9.2,9.3,9.4
  • more depth
    10 May 29 Regression metrics 📹
  • Pre-watch: 10.1
  • more depth on metrics less depth on regression
    11 May 31 Ensembles 📹
  • Pre-watch: 11.1,11.2
  • similar
    12 May 31 & Jun 3 Feature importances, model interpretation 📹
  • Pre-watch: 12.1,12.2
  • feature importances is new, feature engineering is new
    13 Jun 3 Feature engineering and feature selection None less depth
    [TBA] Midterm
    Part II: Unsupervised learning, transfer learning, different learning settings
    14 Jun 5 Clustering 📹
  • Pre-watch: 14.1,14.2,14.3
  • less depth
    15 Jun 5 & 7 More clustering
  • Post-lecture: 15.1, 15.2, 15.3
  • less depth
    16 Jun 7 Simple recommender systems None less depth
    17 Jun 10 Text data, embeddings, topic modeling 📹
  • Pre-watch: 16.1,16.2
  • new
    18 Jun 10 & 12 Neural networks and computer vision less depth
    19 Jun 12 Time series data (Optional) Humour: The Problem with Time & Timezones new
    20 Jun 14 Survival analysis 📹 (Optional but highly recommended) Calling Bullshit 4.1: Right Censoring new
    Part III: Communication, ethics, deployment
    21 Jun 17 Ethics 📹 (Optional but highly recommended)
  • Calling BS videos Chapter 5 (6 short videos, 50 min total)
  • The ethics of data science
  • new
    22 Jun 17 & 19 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
    23 Jun 19 Model deployment and Conclusions new
    24 (optional reading) Stochastic Gradient Descent
    25 (optional reading) Combining Multiple Tables

    About

    No description, website, or topics provided.

    Resources

    License

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published