## Schedule

For the current schedule and to see the current set of notes.

## Syllabus for CMPUT 466 / 551

### Time and Location

Tuesday and Thursday, 12:30 - 1:50 p.m. SAB 336

### Instructor

Martha White

Office: ATH 3-05

Email: whitem@ualberta.ca

Website: https://webdocs.cs.ualberta.ca/~whitem/

### TAs

(in alphabetical order)

- Kris De Asis: kldeasis@ualberta.ca
- Touqir Sajed: touqir@ualberta.ca
- Roberto Vega Romero: rvega@ualberta.ca
- Peng Xu: pxu4@ualberta.ca

Roberto and Kris are helping out, and so are not full-time TAs. Please respect all TAs time, but also know that Touqir and Peng will be available for more labs because they are full-time TAs. All four TAs are fantastic, and knowledgeable in machine learning; you should definitely ask them questions if you are stuck or to further your knowledge.

### Office hours

- Martha: Tuesday from 3:00 p.m. - 5:00 p.m., in ATH 3-05, or by appointment

### Lab times and locations

Labs are not mandatory, and will basically be run as office hours with the TAs. If some weeks there is no demand for labs, they will be cancelled. Each lab location has space for 22 students, that have been enrolled specifically for that lab; if the lab is full, you will need to give priority to the enrolled students (though it is unlikely the lab will be full).

- Wednesday, 5:00 p.m. - 7:50 p.m., CSC 219
- Friday, 2:00 p.m. - 4:50 p.m., CSC 219

### Course Objective

The course objective is to study the theory and practice of constructing algorithms that learn (functions) from data. Machine learning is a field with goals overlapping with other disciplines, in particular, statistics, algorithms, engineering, or optimization theory. It also has wide applications to a number of scientific areas such as finance, life sciences, social sciences, or medicine.

### Prerequisites

You are expected to be comfortable with programming, and to have background in probability and linear algebra. The programming assignments will be in Python.

### Textbooks

Main notes will be provided in class.

**Recommended supplements**

- More in-depth reference: Pattern Recognition and Machine Learning - by C. M. Bishop, Springer 2006.
- Less technical reference: An Introduction to Statistical Learning: with Applications in R - by James et al.
- In-depth reference, covering a broader range of topics and with good exercises (free online): Bayesian Reasoning and Machine Learning - by Barber
- Theory-oriented reference: The Elements of Statistical Learning - by T. Hastie, R. Tibshirani, and J. Friedman, 2009

### Grading

- Thought questions: 10%
- Final exam: 35%
- Homework assignments (3): 30%
- Final mini-project write-up: 10%

For 466:

- Initial draft for mini-project: 15%

For 551:

- Initial draft for mini-project: 5%
- Evaluating mini-projects: 10%

### Topics:

- mathematical foundations of machine learning
- random variables and probabilities
- optimization basics
- overview of machine learning
- supervised, semi-supervised, unsupervised learning

- basics of parameter estimation
- maximum likelihood and maximum a posteriori

- linear regression
- generalized linear models
- linear classification
- logistic regression
- naive Bayes
- support vector machines

- representations and representation learning
- neural networks
- sparse coding
- dictionary learning
- kernel methods

- bias-variance trade-off
- theoretical evaluation
- Rademacher complexity

- empirical evaluation
- cross validation and resampling
- statistical significance tests

- boosting
- Bayesian linear regression
- decision trees

### Late Policy and Academic Honesty

All assignments and exams are individual, except when collaboration is explicitly allowed. All the sources used for problem solution must be acknowledged, e.g. web sites, books, research papers, personal communication with people, etc. Academic honesty is taken seriously; for detailed information see https://www.deanofstudents.ualberta.ca/en/AcademicIntegrity.aspx.