About the functionality of scale_model_input
in EulerDiscreteScheduler
#7273
Unanswered
luocfprime
asked this question in
Q&A
Replies: 1 comment
-
Cc: @yiyixuxu For the EDM variant of the Euler scheduler, refer to https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_edm_euler.py. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
May I ask what exactly does scale_model_input do in the EulerDiscreteScheduler (and other schedulers in general)?
I've checked the original EDM paper and k-diffusion implementation, the scaling coefficient
is 1 in the paper. In k-diffusion sample_euler implementation, the model input does not require extra scaling.
But in diffusers implementation, the input latent is scaled by
1 / ((sigma**2 + 1) ** 0.5)
, may I ask the rationale behind this? What exactly doesscale_model_input
do?Also in EDM paper, the add-noise can be generally parameterized as$x_t = s(t) x_0 + s(t) \sigma(t) \epsilon, \quad \epsilon \sim \mathcal{N}(0, I)$ . I wonder how are
scheduler.scale_model_input
andscheduler.add_noise
related to this parameterization?Thanks!
Beta Was this translation helpful? Give feedback.
All reactions