There is a specific frustration that comes from using generative models professionally without understanding them. You can fine-tune a diffusion model, you can get good results, and you still could not explain to a colleague why the noise schedule matters or what the model is actually estimating. This course fixes that, and it is the only free resource I know that fixes it properly rather than producing another intuition-only explainer with a picture of a cat being progressively blurred. The structure is the strongest thing about it.
Rather than presenting generative models as a list of techniques, the course organises them around a single question: how do you represent and learn a probability distribution over high-dimensional data. Autoregressive models factorise it and pay with slow sampling. Flow models keep exact likelihoods and pay with architectural constraints, because invertibility is expensive. Latent variable models introduce structure you cannot observe and pay with intractable inference, which is what the variational machinery exists to work around.
GANs abandon likelihood entirely for a game and pay with unstable training. Diffusion models break generation into many small denoising steps and pay with sampling cost. Once you see the material laid out that way, the field stops being a pile of acronyms and becomes a set of positions on a small number of genuine trade-offs, and you can reason about a new method by asking which trade it is making. Pieter Abbeel has an unusual gift for this kind of framing, and the teaching team around him keeps the level consistent.
The derivations are done on the board properly. When the ELBO appears, it is derived rather than asserted, and the course spends real time on why the bound is a bound and what the gap consists of. The same is true of the score-based view of diffusion, which is where most short explanations give up. Long lectures are the right format for this and I would rather have two and a half unhurried hours than six polished fifteen-minute segments that skip the hard steps.
The obvious weakness is currency. The most recent complete offering is Spring 2024, and given how fast this particular area moves, that is a real gap. Most of the fundamentals have not changed, a VAE is still a VAE and the diffusion mathematics is stable, but the practical landscape has shifted and the course will not tell you about it. Treat it as the foundation and read papers for the last two years, which is a reasonable division of labour and considerably easier once you have the foundation.
The prerequisites deserve emphasis because people ignore them and then have a bad time. You need comfortable probability, including the ability to manipulate expectations and understand KL divergence without looking it up. You need linear algebra that does not slow you down. You need to have trained neural networks and to know what a training curve looks like when something is wrong.
Without those, this course will feel like watching someone do mathematics at speed in a language you half-recognise, which is not a useful experience. The self-study caveat also applies. There are no graded assignments for outside learners and the homework, which is genuinely good, does not come with feedback. You will need to be honest with yourself about whether you could implement what you just watched, and the answer is almost always no until you actually try it.
Implement a small autoregressive model and a basic diffusion model yourself. The gap between following the derivation and getting the thing to produce recognisable samples is where the learning lives. Four point six, and one of the highest ratings I have given to anything free. Marked down only for the Spring 2024 cutoff and the recording inconsistency.