340 - Machine Learning & Data Mining

The analysis of data (DNA microarrays, music, images, video, financial records, web logs, medical records, software, computer game logs, motion capture in graphics) is an important frontier in computer science. This frontier is expanding vastly thanks to new developments in storage devices and the world-wide web. This course will teach the basic principles and skills required for analysing data: finding patterns, dimensionality reduction, clustering, classification and prediction.

Time: Mon Wed Fri 16:00-17:00

Location: Dempster 110

Instructor: Nando de Freitas (nando at cs)

Nando's Office hours: W 2:00-3:30 (cicsr 183).

TAs: Jacek Kisynski (kisynski at cs) and Daniel Eaton (deaton at cs).

Jacek TA hour: Tuesday 2pm (Learning Centre - X150)

Daniel TA hour: Thursday 2pm (Learning Centre - X150)


There's no official textbook. I will provide handouts, but do recommend the following books:
  • The elements of Statistical Learning.
  • Pattern Classification.
  • Principles of Data Mining.
  • Modeling the Internet and the Web.


  • Assignments: 20%
  • Midterm 1: 20%. (Friday Oct 14)
  • Midterm 2: 20%. (Friday Nov 18)
  • Final: 40%
  • There will also be a special research project for advanced students.
  • The instructor has the right to change the marking scheme under reasonable circumstances.


  • Assignments will involve both written and matlab programming problems.
  • The handin box number is 8 (next to the lab 005 in CS basement).
  • All assignments are due on the specified time. 20% off for each day late. Assignments will not be accepted after 5 days late.

    Newsgroup: ubc.courses.cpsc.340