CSC412 / CSC2506 Winter 2017:

Probabilistic Learning and Reasoning


The language of probability allows us to coherently and automatically account for uncertainty. This course will teach you how to build, fit, and do inference in probabilistic models. These models let us generate novel images and text, find meaningful latent representations of data, take advantage of large unlabeled datasets, and even let us do analogical reasoning automatically. This course will teach the basic building blocks of these models and the computational tools needed to use them. The class will have a major project component.

Where and When

Course information sheet

Tentative Schedule

January 10: Introduction

January 12: Tutorial: Basic supervised learning and probability

January 17: Basic Probabilistic Generative and Discriminative models

January 19: Tutorial: Stochastic optimization

January 24: Directed Graphical Models

January 26: Tutorial: Automatic differentiation Autodiff demo slides Implementation slides

January 31: Undirected Graphical Models

February 2: Tutorial: Markov Random Fields

February 7: Exact Inference

February 9: Tutorial: Junction-tree algorithm notes slides

February 10: Assignment 1 due, submitted through Markus.

February 14: Variational Inference

February 16: Midterm exam

February 18 to 26: Reading week, no classes

February 28: Sampling and Monte Carlo methods

March 1: Tutorial: Gradient-based MCMC

Assignment 2 due March 12, submitted through Markus

March 7: Sequential data and time-series models

March 9: Tutorial: REINFORCE and differentiating through discrete variables

March 13: Last day to drop course.

March 14: Stochastic Variational Inference

March 14: Tutorial: Practicalities of SVI

March 21: Variational Autoencoders

March 23: Tutorial: TBD

March 29: Advanced models (TBD)

March 31: Tutorial: Bayesian Optimization

April 4: Assignment 3 due April 4th, submitted through Markus

April 4: Gaussian processes

April 6: Tutorial: building kernels

April 10: Project due