generative
0 memberslucid.models.generativeImage-generative model families — Phase 5 of the model zoo.
Concrete families (VAE / DDPM / NCSN) will populate this package in follow-up
commits. The infrastructure exported here — base configs, output dataclasses,
noise schedulers — is in place so each family only needs to add its own
_config.py, _model.py, and _pretrained.py.
Positional / timestep encoding primitives (SinusoidalEmbedding,
TimestepEmbedding) live in lucid.nn; family code imports them
from there rather than redefining locally.
Model Families
DDPM
10 memberslucid.models.generative.ddpmHo, Jonathan, et al. "Denoising Diffusion Probabilistic Models." Advances in Neural Information Processing Systems, 2020, pp. 6840–6851.
DDPM — Denoising Diffusion Probabilistic Models — defines a latent variable generative model through a pair of Markov chains. The forward (noising) chain progressively corrupts data over steps with a fixed Gaussian schedule :
NCSN
7 memberslucid.models.generative.ncsnSong, Yang, and Stefano Ermon. "Generative Modeling by Estimating Gradients of the Data Distribution." NeurIPS, 2019.
NCSN — Noise-Conditional Score Network — is the score-based counterpart of DDPM. Rather than predicting noise inside a discrete Markov chain, it directly learns the (Stein) score function , where is the data distribution convolved with Gaussian noise of standard deviation .
VAE
7 memberslucid.models.generative.vaeKingma, Diederik P., and Max Welling. "Auto-Encoding Variational Bayes." International Conference on Learning Representations, 2014.
The Variational Auto-Encoder defines a latent-variable generative model with a standard-normal prior and a neural decoder . Because the marginal likelihood is intractable, training maximises the evidence lower bound (ELBO) instead: