Frequently Asked Questions#

What are the prerequisites for this class?#

The course has minimal prerequisites. If you are comfortable with Python programming, you should be able to follow along. If your programming is rusty, we recommend brushing up on key concepts before the term begins. Check out the resources here.

Can I audit the class?#

If the course is full, we do not allow official auditors. You’re welcome to sit in informally, but please reach out to the instructor first. Also, please avoid taking a seat if the classroom is crowded. We want to prioritize enrolled students.

Can I attend lectures from a different section?#

You are expected to attend your assigned section. If you have a one-time conflict, you may attend another section, but note that you will not receive participation points for that session.

Can I use generative AI in this course?#

Please read our full Generative AI usage policy.

TL;DR: use AI to support, not substitute, your work. If you use a tool:

  • Cite it (tool name/version).

  • Annotate your use (what you asked it to do and how you incorporated/edited the output).

  • Be able to explain and reproduce your work without the tool.

  • Do not share sensitive content (e.g., assessments, private data).

  • Follow group-work rules and be extra careful when collaborating.

  • You are responsible for any errors (“hallucinations”) the tool produces.

How do I submit homework assignments?#

All assignments are submitted on Gradescope. Detailed instructions are provided on the course website. Make sure to follow them carefully.

I’m on the waitlist. How likely am I to get into this course?#

We don’t control the waitlist, but here are some things to keep in mind:

  • There is currently space in Section 103.

  • UBC CPSC waitlist policy applies.

  • In past years, seats often open up in the first couple of weeks as students adjust their schedules.

  • If you don’t get in this term, the course runs every semester, so you’ll have another chance.

  • This is a rich and fast paced course and participation is expected from week 1. This applies also to students on the waitlist who are waiting to get into the course.

Who takes this course?#

The audience is diverse: Data Science Minor students, BCS students, Computer Science undergraduate students, and graduate students from different departments who want to apply machine learning in their research. You’ll likely learn not only from your instructors and TAs but also from your peers.

How does this course overlap with CPSC 340?#

There is some overlap in fundamentals, but the focus is different. CPSC 330 emphasizes applying machine learning tools to real problems in a responsible and reproducible way. Many students find taking both courses valuable.

What does a typical week look like? What’s the workload?#

  • Before class: Watch pre-lecture videos or preview notes.

  • In class: Two 80-minute lectures per week with iClicker questions, activities, and live demos.

  • Support: Weekly tutorials and office hours.

  • Practice: Weekly assignments (except during exam weeks).

Tips for success:

  • Attend lectures regularly.

  • Start homework early. Hands-on practice is essential.

  • Use Generative AI tools responsibly.

  • Always question your data, methods, and results. Justifying your choices is a key skill you’ll develop.

What coding language and environment will we use?#

We use Python with scikit-learn and other common ML libraries. Assignments are completed in .ipynb notebooks using JupyterLab or VS Code.

What will the exams be like?#

  • Two midterms and a final exam.

  • Exams are on PrairieLearn.

  • Midterm 1: Conceptual. Multiple choice, multi-select, and reasoning questions.

  • Midterm 2: Includes some coding.

  • Final exam: A mix of question types covering the full course.