University of British Columbia  ·  Department of Statistics

STAT 547E — Scalable Sampling

Graduate Course  ·  Winter 2025

Instructor
Saifuddin Syed
Email
saif.syed@stat.ubc.ca
Lectures
MW 4:00–5:30pm
Office Hours
By appointment
Location
ESB 4192
Credits
1.5

This course studies modern methods for sampling from complex, multi-modal distributions at scale. Emphasis is placed on both theoretical foundations and practical implementations.

↓ Syllabus (PDF)

Topics and schedule are subject to change.

Date Topic Slides
Feb 23 Lecture 1: Introduction Slides   PDF
Feb 25 Lecture 2: MCMC foundations
Geyer (1998) — See Chapter 2 for further reading on Markov Kernels in an MCMC context.
Roberts & Rosenthal (2004) — Rigorous treatment of ergodicity and CLTs for Markov chains relevant for MCMC.
Slides   PDF
Mar 2 Lecture 3: Metropolis-Hastings
MCMC interactive gallery — Play around with some of the methods discussed .
Slides   PDF
Mar 4 Lecture 4: Local inference algorithms
MCMC using Hamiltonian dynamics — Review of HMC methods .
Slides   PDF
Mar 9 Lecture 5: Multi-modal distributions Slides   PDF
Mar 11 Lecture 6: Annealing Slides   PDF
Mar 16 Lecture 7: Statistical mechanics for statisticians Slides   PDF
Mar 18 Lecture 8: Introduction to parallel annealing Slides   PDF
Mar 23 Lecture 9: Non-reversible parallel tempering Slides   PDF

Assignment notebooks are written in Julia. To get started, install Julia and open the template notebook in VS Code:

  1. Install Julia — download the current stable release from julialang.org/downloads and follow instructions on that page.
  2. Install VS Code — download from code.visualstudio.com, then install the Julia extension and the Jupyter extension from the Extensions panel.
  3. Open the notebook — download the template .ipynb file, open it in VS Code, and select your Julia kernel when prompted.

New to Julia? The official Getting Started guide is the best first stop. For a gentler introduction aimed at scientists, Introduction to Julia (Julia Academy, free) and the community MIT Julia tutorials are both excellent. The full documentation is also very readable.

Assignment 1
Due Mar 11
PDF Julia Notebook
Assignment 2
Due Apr 8
PDF Julia Notebook

The project involves an in-depth review of a method related to the course, and is expected to take approximately one week of effort. Deliverables are a 5-page write-up (excluding code) and a 30-minute presentation during the week of April 13 (date TBD).

Project Proposal
Brief description of chosen topic and plan
Due Mar 18

You are encouraged to find topics of interest to you and relevant to your research. Here are some examples of topics if you want inspirations.

Molecular dynamics
Optimal transport
Denoising diffusion samplers
Schrödinger bridge samplers
Flow annealed importance sampling bootstrap
Adaptive biasing force
Metadynamics
Slice samplers
Controlled Monte Carlo diffusions
Nested sampling
Annealed Langevin dynamics