4.5.12 · D5Generative Models

Question bank — Noise scheduling

2,139 words10 min readBack to topic

Before we start, the symbols this page leans on — all defined in the parent note, repeated and earned from scratch here so no symbol is used unexplained:

Picture the two schedules and their SNR side by side before diving into the traps:

Figure — Noise scheduling
Figure — Noise scheduling

True or false — justify

Is the total amount of noise present at step ?
False. is only the fresh noise added at that single step; the accumulated noise is measured by , which grows from products of all past steps.
If increases every step, then must decrease every step.
True. Each factor is below , so multiplying by it always shrinks the running product , regardless of whether itself rises or falls.
A larger at the end guarantees .
False. depends on the whole product, not the last term. A tiny final can still give if earlier steps already destroyed the signal.
The linear and cosine schedules can share the same and yet reach very different at .
True. Endpoints of pin the boundaries, but the path between them (the whole product) is what sets mid-schedule ; cosine keeps signal alive longer in the middle.
is always a decreasing function of for any valid schedule.
True. As falls monotonically, the numerator drops and denominator rises, so the ratio strictly decreases — signal only ever gets harder to hear.
Doubling every simply doubles the total noise at each step.
False. Noise accumulates multiplicatively through , not additively; doubling shifts the whole curve nonlinearly and can collapse the signal far earlier.
The cosine schedule was designed mainly to make sampling faster.
False. Its purpose is a smoother decay (no sharp early drop), giving more stable gradients and better SNR distribution; the speed benefit is a downstream consequence, not the design goal.
can equal exactly at in the mathematics.
True but dangerous. is the honest starting value (the empty product), yet it makes and undefined, so SNR-parametrized schedules clip it to .

Spot the error

"Set so we never damage the original image." — what breaks?
With we get ; the reverse-step factor is fine here, but forces , so — a mathematical singularity in the log-SNR loss weighting. A tiny is used instead so and is finite.
"SNR schedule: interpolate linearly from at down to ." — find the mistake.
is not a finite number, so you cannot interpolate from it. You must regularize: cap at , which makes finite.
"To recover from log-SNR , use ." — correct it.
Wrong: that ignores the denominator. Since , exponentiating gives ; solving for gives the sigmoid, , which correctly stays in .
"The variance of the summed noise across two steps is ." — what's wrong?
Variances of independent Gaussians add directly: . Taking square roots first is the error; only the final standard deviation is a square root of the summed variances.
"Cosine schedule keeps ." — fix the notation.
It uses the kernel (cosine squared), then normalizes: . Squaring keeps and produces the smooth S-curve; a bare cosine would go negative.
"Increasing from 1000 to 4000 with the same endpoints improves quality for free." — critique.
More steps stretch the same total destruction across finer increments, but if the schedule already wastes late steps on near-pure noise, extra steps just cost compute — the SNR distribution matters more than raw step count.
"Since noise variance is , the signal variance must be ." — is the claim complete?
Incomplete: signal variance is and noise variance is across dimensions. The clean vs split is the coefficient, not the full variance.

Why questions

Why do we track instead of just the list of (or )?
Because collapses the entire history into one number giving direct sampling — we jump to any step without simulating every intermediate one.
Why does a network learn best when decreases linearly?
It makes the denoising difficulty roughly constant per step, so no timestep is disproportionately easy or hard, which stabilizes gradients and balances the training signal across .
Why is the sum-of-Gaussians fact () the linchpin of the whole derivation?
It lets us merge the many independent per-step noises into a single Gaussian, collapsing the recurrence into the closed form .
Why does the linear schedule "waste" late steps?
Its signal collapses () well before , so many final steps operate on essentially pure noise where there is almost nothing left to learn — computation with little information gain.
Why must be near but not necessarily exactly ?
We need indistinguishable from the prior so sampling can start from pure noise; is close enough, and exact isn't required for the prior match.
Why does a learned variance schedule help over a fixed one?
Because the optimal noise level can be data-dependent — smooth regions and high-frequency regions want different destruction rates — so letting adapts per input rather than forcing one global recipe.
Why does cosine beat linear on FID even at the same step count ?
Its smoother SNR schedule makes each step equally informative, so the network isn't starved of signal early or wasted late — better use of the same steps means fewer artifacts.

Edge cases

What is with the honest value ?
and — an undefined boundary, which is exactly why SNR schedules clip to .
What happens to as at the very end?
It tends to , so — the picture is fully drowned in noise, matching the prior .
If every were equal to some constant , what is ?
— a pure exponential decay; even a constant schedule collapses the signal geometrically, which is why designers shape instead of leaving it flat.
Degenerate case: what if for some ?
Then , that factor zeroes the product, and for all — the signal is annihilated in one step, an over-aggressive extreme to avoid.
Boundary: with the sigmoid inversion, what is when ?
just below one, giving the tiny-noise-at-start behavior with a finite, well-defined .
Limiting behaviour: as in the cosine offset, what fails?
With the kernel is fine, but can hit near-zero at ; the offset exists precisely to keep the earliest from vanishing.
Recall One-line summary of the traps

= fresh noise per step; = per-step survival; = surviving signal (a product, empty at so ); and tie them together and blow up at unless regularized. Almost every trap here is "additive vs multiplicative" or "single step vs accumulated".

Connections

  • Noise scheduling — parent note this bank interrogates
  • 4.5.11-Forward-and-reverse-diffusion-process — where the recurrence lives
  • 4.5.13-Denoising-objective sets the loss weighting these traps reference
  • 4.5.15-Score-matching — SNR magnitude questions connect here
  • 4.5.18-Fast-sampling — the "wasted late steps" trap motivates step-skipping