azula.plugins.edm¶
Elucidated diffusion model (EDM) plugin.
This plugin depends on the torch_utils and training modules in the NVlabs/edm repository. To use it, clone the repository to your
machine
git clone https://github.com/NVlabs/edm
and add it to your Python path before importing the plugin.
import sys; sys.path.append("path/to/edm")
...
from azula.plugins import edm
References
Elucidating the Design Space of Diffusion-Based Generative Models (Karras et al., 2022)
Classes¶
Creates an elucidated noise schedule. |
|
Creates an elucidated denoiser. |
Functions¶
Returns the list of available pre-trained models. |
|
Loads a pre-trained EDM denoiser. |
Descriptions¶
- class azula.plugins.edm.ElucidatedSchedule(sigma_min=0.002, sigma_max=80.0, gamma=7.0)¶
Creates an elucidated noise schedule.
\[\begin{split}\alpha_t & = 1 \\ \sigma_t & = \left( (1 - t) \, {\sigma_\min}^\frac{1}{\gamma} + t \, {\sigma_\max}^\frac{1}{\gamma} \right)^\gamma\end{split}\]
- class azula.plugins.edm.ElucidatedDenoiser(backbone, schedule=None)¶
Creates an elucidated denoiser.
- Parameters:
backbone (Module) – A noise conditional network.
schedule (Schedule) – A variance exploding (VE) schedule. If
None, useElucidatedScheduleinstead.
- azula.plugins.edm.list_models()¶
Returns the list of available pre-trained models.