Videos and books
The free courses, lecture series, books and short reads that pair best with this track, with a note on what each one is good for.
Every resource on this page is free to watch or read, from the author's or the publisher's own page or from arXiv. Each lesson of the track also ends with a Watch and read section that names the exact lecture, chapter or paper.
How to use it. Watch for the picture, read for the derivations, and write code to check both. A good default: one short video before a lesson, then the lesson and its notebook, then one section from the table at the end of this page.
Notation warning. Papers and courses do not agree on notation. In this track is data and (or ) is noise, for diffusion and for flow matching, and the noisy sample is . Lipman et al. (flow matching), Liu et al. (rectified flow) and the MIT 6.S184 notes use the opposite time direction; Kingma et al. write for our . Convert with before you compare formulas.
Video courses #
For the picture #
- Ari Seff, "What are Normalizing Flows?" (12 min) and "What are Diffusion Models?" (15 min). Short, careful animations of the change of variables (lesson 04) and of the forward and reverse processes (lesson 07).
- Julia Turc, "The physics behind Flow Matching models" (24 min) and "Diffusion Transformers (ViT, DiT, MMDiT)" (18 min). Velocity fields and the continuity equation (lesson 10); patches, adaLN and joint attention (lesson 13).
University courses #
- Stanford CS236, Deep Generative Models (Ermon, 2023; YouTube playlist, course notes). The closest course to the first two thirds of this track: autoregressive models, VAEs, flows, GANs, energy-based models, score matching and diffusion. Pairs with lessons 01–09.
- Berkeley CS294-158, Deep Unsupervised Learning (Abbeel and others; Spring 2024 playlist, Spring 2024 site, Spring 2020 site). Long lectures with many implementation details. The 2020 lectures on autoregressive models and flows pair with lessons 03 and 04; the 2024 GAN lecture pairs with lesson 05.
- Cornell CS 6785, Deep Generative Models (Kuleshov; course site). An open course with the same structure as CS236. Its lecture on evaluation pairs with lesson 14.
- MIT 6.S184, Flow Matching and Diffusion Models (Holderrieth and Erives; course site, lecture notes). A short modern course: flow and diffusion models, flow matching (lecture 02), score functions and guidance. The notes use the time direction noise data. Pairs with lessons 09–11.
Research talks #
- Yaron Lipman, "Flow Matching: Simplifying and Generalizing Diffusion Models" (60 min). Flow matching from its main author. Pairs with lesson 10.
- Nicholas Boffi, "How to build a consistency model" (76 min). Flow maps, consistency models and self-distillation. Pairs with lesson 12.
- Hyungjin Chung, "Adapting and Regularizing Diffusion Models for Inverse Problems" (51 min). DPS and its successors, from the author of DPS. Pairs with lesson 15.
Free books and long tutorials #
- Kevin Murphy, Probabilistic Machine Learning: Advanced Topics (MIT Press, 2023; free PDF). Part IV, "Generation", has one chapter per model family: VAEs, autoregressive models, normalizing flows, energy-based models, diffusion models and GANs. Section 20.4 covers evaluation. The best single reference for the whole track.
- Simon Prince, Understanding Deep Learning (MIT Press, 2023; free PDF). Chapters 14–18 cover generative models, GANs, normalizing flows, VAEs and diffusion models with clear figures and Python notebooks. A gentler start than Murphy.
- Christopher Bishop and Hugh Bishop, Deep Learning: Foundations and Concepts (Springer, 2024; free online version). Chapters on GANs, normalizing flows, autoencoders and diffusion models, with careful derivations.
- Chieh-Hsin Lai, Yang Song, Dongjun Kim, Yuki Mitsufuji and Stefano Ermon, The Principles of Diffusion Models (2025). A book-length treatment of diffusion from three views (variational, score-based and flow-based) and of fast samplers and few-step models. Pairs with lessons 07–12.
- Diederik Kingma and Max Welling, An Introduction to Variational Autoencoders (2019). The VAE monograph by its authors. Pairs with lessons 01–02.
- George Papamakarios et al., Normalizing Flows for Probabilistic Modeling and Inference (JMLR 2021). The standard review of flows. It calls the sampling map ; this track uses for the map from data to base. Pairs with lesson 04.
- Yaron Lipman et al., Flow Matching Guide and Code (2024). A long tutorial with proofs and a code library. Pairs with lesson 10.
- Stanley Chan, Tutorial on Diffusion Models for Imaging and Vision (2024) and Calvin Luo, Understanding Diffusion Models: A Unified Perspective (2022). Step-by-step derivations of the DDPM ELBO, the score view and the SDE view. Pairs with lessons 07–09.
- Giannis Daras et al., A Survey on Diffusion Models for Inverse Problems (2024). A map of DPS, ΠGDM and related methods. Pairs with lesson 15.
Short reads #
- Yang Song, "Generative Modeling by Estimating Gradients of the Data Distribution". Score matching, annealed Langevin and the SDE view in one blog post (lessons 06 and 09).
- Yang Song and Diederik Kingma, "How to Train Your Energy-Based Models" (2021). A short tutorial on MCMC training, score matching and noise-contrastive estimation (lesson 06).
- Sander Dieleman's blog (sander.ai). Precise essays on guidance (lesson 11), perspectives on diffusion (lessons 07–10), noise schedules (lesson 08) and generative modelling in latent space (lesson 13).
- Lilian Weng's blog: VAEs, flows, GANs and diffusion models. Compact overviews with the key equations, good for review.
- Ruiqi Gao et al., "Diffusion Meets Flow Matching: Two Sides of the Same Coin". Shows that Gaussian flow matching and diffusion are the same model with different parameterizations (lessons 08 and 10).
- Lucas Theis, Aäron van den Oord and Matthias Bethge, "A note on the evaluation of generative models" (ICLR 2016). Why likelihood and sample quality can disagree (lesson 14).
- Tilmann Gneiting and Adrian Raftery, "Strictly Proper Scoring Rules, Prediction, and Estimation" (JASA 2007). The reference for proper scores, the CRPS and the energy score (lesson 14).
Which lesson pairs with what #
| Lesson | Watch | Read |
|---|---|---|
| 01 Latent variables and the ELBO | CS236 lecture 1 | Kingma and Welling, chapter 2; Murphy, Advanced Topics, chapter 21 |
| 02 Variational autoencoders | Deepia, VAEs | Kingma and Welling; Lilian Weng, VAEs |
| 03 Autoregressive models | CS294-158 (2020), L2 | CS236 notes, autoregressive models |
| 04 Normalizing flows | Ari Seff, normalizing flows | Papamakarios et al.; Murphy, Advanced Topics, chapter 23 |
| 05 GANs and Wasserstein GANs | CS294-158 (2024), L5 | Goodfellow, NIPS 2016 tutorial; Lilian Weng, GANs |
| 06 EBMs, score matching, Langevin | Yang Song, CBMM talk | Song and Kingma, EBMs; Yang Song's blog |
| 07 DDPM | 3Blue1Brown and Welch Labs | Luo, the DDPM derivation; Ho et al. 2020 |
| 08 Diffusion parameterizations | Dieleman, EEML'24 | Dieleman, noise schedules; Karras et al. 2022 (EDM) |
| 09 Reverse SDEs, PF-ODE, samplers | MIT 6.S184, lecture 01 | Lai et al., Principles; Karras et al. 2022 |
| 10 Flow matching and rectified flow | MIT 6.S184, lecture 02; Lipman talk | Lipman et al., Guide and Code; Diffusion Meets Flow Matching |
| 11 Guidance | MIT 6.S184, lecture 03B | Dieleman, guidance |
| 12 Few-step generation | Boffi, consistency models | Song et al. 2023, consistency models |
| 13 Latent diffusion and DiT | Julia Turc, diffusion transformers | Dieleman, latent space |
| 14 Evaluating generative models | Cornell CS 6785, lecture 14 | Theis et al.; Gneiting and Raftery |
| 15 Inverse problems and assimilation | Hyungjin Chung talk | Daras et al., survey |