Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Syllabus

Course description

Application of machine learning tools, with an emphasis on solving practical problems. Data cleaning, feature extraction, supervised and unsupervised machine learning, reproducible workflows, and communicating results.

Class meetings

Classes (lectures):

SectionDayTimeZoom
CPSC 330 911MWF10:00 - 12:20DMP 310

Tutorials:

In the summer, students will attend two tutorials each week, the first on T/W, and the second on Th/F.

Tutorials for this course will be conducted by TAs, who will guide you through additional exercises and demos on the content covered each week. A bonus of up to 2% will be added to your final grade for attending tutorials.

First tutorial of the week

SectionDaysTimeLocationAssigned
D1BT10:00-11:00DMP 201Zoe
D1CT11:00-12:00DMP 201Xuechun
D1EW13:00-14:00DMP 301Minglong
D1FW13:00-14:00DMP 201TBD

Second tutorial of the week

SectionDaysTimeLocationAssigned
D1BTh10:00-11:00DMP 201Zoe
D1CTh11:00-12:00DMP 201Cedar
D1EF13:00-14:00DMP 301Charles
D1FF13:00-14:00DMP 201Sneha

Teaching Team

Instructors:

Course coordinator

TAs

Registration

Waitlists:

CPSC 330 is a very fast-paced course and students who register in the course late have a tendency to struggle greatly and are rarely able to catch-up. In 2026S1, we are expecting that all students who are registered on the waitlist by 3 PM on May 15th will have an opportunity to take the course. This also means that the registration into the course will be closed by the end of the day on May 15th, and no further registrations will be permitted. Of course, students will still be able to drop the course until UBC’s official Add/Drop date. We hope this will allow all students to have the best chance at success in this course!

The instructors have no control over the waitlist order and cannot help you bypass the waiting list.

Prerequisites: The official prerequisites can be found here. If you do not meet the prerequisites, see here and here. We were told that students should not visit the front desk in the CS main office about prerequisite issues, because the folks at the front desk do not have the authority to resolve prerequisite issues.

In practice, the prerequisite is familiarity with Python programming.

Auditing: If the course is full, we cannot accommodate official auditors. If there is space and you would like to audit the course, please contact the instructor. All UBC students are welcome to audit the course unofficially.

Grading scheme

The grading scheme for the course is tentatively (to be confirmed), as follows:

ComponentWeight
Learning Logs10%
Midterm 115%
Midterm 215%
Midterm 315%
Assignments20%
Final25%
Tutorial participationup to 2% bonus

All students must satisfy ALL the following conditions to pass the course:

If a student does not satisfy the appropriate requirements, the student will be assigned the lower of their earned course grade or, a maximum overall grade of 45 in the course. In exceptional cases (with approved concessions), passing requirements may be waived at the discretion of the course instructor; if waived, the student will earn a maximum grade of 50% in the course.

Assignments

The plan is that most of the assignments will contribute equally towards the overall Assignments grade.

We will drop your lowest homework grade. However, because Homework 5 is a significant, project-like assignment, and it is crucial for students’ preparation, Homework 5 is excluded from the drop grade policy.

See this document for more detailed instructions on submitting homework assignments.

For the full policy on grades, see this document. We understand that grades are important for you for several reasons. But try not to focus too much on them. You will have a better learning experience and in general, you’ll be happier in life if you focus more on learning the material well. For the grading scheme we wish we could use this.

Late policy

Assignments will be due at 11:59 PM on the due date. If you cannot make this due date, you may use a “late token”. Each student will have 4 late tokens for the entire semester, which we will track. No action is required on your part to use the tokes, just make sure that you have a sufficient number if you are planning on using them.

For example, if assignment is due on a Monday at 11:59 pm:

There is no penalty for using “late tokens”, but you will get a mark of 0 on an assignment if you:

We will post solutions 48-hours after the due date.

Lecture recordings

This is an in-person class, and we do not livestream or make recordings available by default. If you miss a class, you can catch up by reviewing the lecture notes and talking to your peers. Students who were absent for approved reasons (e.g., illness, jury duty) can be given access to existing lecture recordings (when available), but please note that these will be from previous course instances. It is the student’s responsibility to make sure they are keeping up with the most up-to-date material, which will be the one included in the notes.

Use of Generative AI in the course

You may use generative AI tools (e.g., ChatGPT, Claude, Gemini) in this course, but you must use them responsibly. Remember, you are here to learn. These tools can speed up tasks (e.g., brainstorming, debugging, clarifying concepts), but they can also short-circuit your learning if misused (e.g., copy-pasting solutions without understanding them).

Key policies

Failure to follow these rules will be treated as a violation of UBC’s academic integrity policy.

Finally, always ask yourself: Is this tool helping me learn, or harming my learning? Use it to support, not substitute, your effort.

Midterms

There will be midterms in CPSC 330 and they will be conducted in the CBTF via self-reservation over a multi-day period. The CBTF (computer based testing facility) is designed to enhance the student’s writing experience by providing them with a familiar, secure testing environment with quick access to technical support, as well as support from their instructor for common access issues.

Centre for Accessibility (CfA) Exam Accommodations

Students who are registered with the Centre for Accessibility (CfA) with exam accommodations listed below will need to write all of their assessments in the Computer-Based Testing Facility (CBTF). For a full list of CfA accommodations that can be met at the CfA, please see the CBTF page.

If you have an accommodation that is not listed above, you will write your assessments with the CfA and will need to book a time by their deadline. Please do not book any assessments with the CfA if you are expected to write in the CBTF, as the CfA will cancel the exam booking and ask you to book it yourself with the CBTF. If you have any concerns about your accommodations being met in the CBTF, please reach out to your Accessibility Advisor.

Final exam

The final exam is scheduled for the exam period and is comprehensive, covering the material taught over the course of the semester. A score of 40% or more in the final exam is required to pass the course (along with other requirements listed above).

Academic concessions

UBC has a policy on academic concession for cases in which a student may be unable to complete coursework. According to this policy, grounds for academic concession can be illness, conflicting responsibilities, or compassionate grounds. Examples of compassionate grounds, from the above policy, include “a traumatic event experienced by the student, a family member, or a close friend; an act of sexual assault or other sexual misconduct experienced by the student, a family member, or a close friend; a death in the family or of a close friend.” To request an academic concession, please write to the course coordinator (cpsc330-admin@cs.ubc.ca), with your section instructor copied in the email. Additional documentation might be requested. We will review your situation and determine whether to approve the concession, and if approved, the appropriate steps to follow. Please note that when possible (short term occurrences) tokens should be used as the default concession mechanism for assignments.

Code of conduct

Land acknowledgement

UBC’s Point Grey Campus is located on the traditional, ancestral, and unceded territory of the xwməθkwəy̓əm (Musqueam) people. The land it is situated on has always been a place of learning for the Musqueam people, who for millennia have passed on their culture, history, and traditions from one generation to the next on this site.

It’s important that this recognition of Musqueam territory and our relationship with the Musqueam people does not appear as just a formality. Take a moment to appreciate the meaning behind the words we use:

TRADITIONAL recognizes lands traditionally used and/or occupied by the Musqueam people or other First Nations in other parts of the country.

ANCESTRAL recognizes land that is handed down from generation to generation.

UNCEDED refers to land that was not turned over to the Crown (government) by a treaty or other agreement.

As you proceed through your journey at UBC, take some time to learn about the history of this land and to honour its original inhabitants.