Noise schedules and step placement
Distinguish a trained noising family from the inference grid and preserve prediction conversions, coordinates, and endpoint conventions.
On this page
The question for today
What you’ll understand
- Distinguish noise schedule, inference spacing, and solver update.
- Convert between full and half log-SNR without mixing conventions.
- Compare positive noise-level grids while keeping endpoint handling explicit.
A step count is incomplete without the coordinates of those steps. Equal spacing in training indices, physical diffusion time, noise scale, or log signal-to-noise ratio generally produces different inference grids. The learned model also expects a particular noising family and prediction convention. Changing a grid is therefore a numerical decision within a compatibility contract, rather than permission to reinterpret arbitrary timesteps as equivalent noise levels.
Separate the noising family from its numerical traversal
A common normalized perturbation representation is x_t=α_t x₀+σ_t ε. The training schedule defines how signal and noise coefficients relate to time, and a model learns predictions under that convention. An inference solver selects a finite sequence of compatible states and updates between them. Using fewer indices from an existing schedule is different from changing the underlying α and σ functions without adapting the model. Input preconditioning and output conversion must match the selected coefficients at every actual evaluation point.
Parameterizations such as noise prediction, clean-sample prediction, or velocity prediction are not interchangeable tensor labels. Converting among them can divide by small schedule coefficients and magnify numerical issues near endpoints. Diffusers v0.35.1 exposes scheduler prediction_type and multiple spacing or sigma options, but supported combinations remain scheduler- and model-specific. Inspect the pinned implementation rather than assuming a configuration name carries the same meaning in another library. Record the realized timestep and sigma arrays in an experiment so the grid is reproducible.
Coordinate changes alter where resolution is spent
Uniform spacing in one coordinate need not be uniform in another because the mapping is nonlinear. A geometric positive-sigma grid allocates equal ratios rather than equal absolute sigma gaps. More points near a regime can reduce a relevant integration defect while spending fewer evaluations elsewhere, but effectiveness depends on the field, solver, conditioning, and model. The DPM-Solver formulation uses a half-log-SNR change of variables to simplify its integral; this structural argument does not declare every geometric grid optimal for every sampler.
Keep initial noise scaling and the final transition explicit. A list of N positive levels has N−1 intervals between those entries, while an implementation may add a zero-noise endpoint, evaluate an extra denoising step, or use higher-order internal calls. Therefore N list entries are not universally N neural evaluations. Never duplicate an endpoint or append a zero that leads to an undefined logarithm merely to match a desired loop length. Verify supported custom-grid APIs and final-step behavior in the exact scheduler version.
Validate the realized grid with controlled fixtures
Check monotonicity, endpoints, duplicate mapped indices, finite coefficient conversions, and the schedule’s expected input scaling. Compare a candidate with the baseline using paired initial latents, fixed guidance and model revision, and measured evaluations and wall time. A grid that works for an unguided test may behave differently under strong guidance. Preserve the entire configuration rather than reporting only steps=20; otherwise a later implementation can execute a numerically different process under the same shorthand.
The bisection instrument illustrates why step count alone does not determine numerical resolution. Reset, set both c=2 and U=2, predict bracket half-width 0.0625 after four refinements, then Step four times. Separately Reset, set both c=2 and U=4, predict half-width 0.125 after four refinements, then Step four times. Neither run hits the irrational root exactly. This fixed x²−c bisection has no noise schedule, score model, or diffusion update. Its limited comparison is that the same count of refinement operations can cover different coordinate spans and leave different resolution.
Work it through
Compare geometric and absolute noise spacing
Choose five positive noise levels from σ_max=8 to σ_min=0.5 with the illustrative geometric rule. Compare their absolute gaps, without assuming a particular final zero-noise transition or network-evaluation count.
The endpoint ratio is 0.5/8=1/16. Across four intervals, the common ratio is (1/16)^(1/4)=1/2.
The levels are 8, 4, 2, 1, and 0.5. Their descending absolute gaps are 4, 2, 1, and 0.5, so they are not uniformly spaced in sigma.
For a separate normalized coefficient pair α=0.8 and σ=0.6, SNR is 0.64/0.36=16/9 and half log-SNR is log(4/3)≈0.28768. Confusing that coordinate with full log-SNR doubles the value.
Record coordinates, coefficients, intervals, and endpoint rules. A bare step count cannot identify the numerical trajectory.
The living notebook
Explore the model
Interactive lab · root-finding
Equal operation counts need not imply equal resolution
Reset, set both c=2 and U=2, predict half-width 0.0625 after four refinements, then Step four times. Separately Reset, set both c=2 and U=4, predict half-width 0.125, then Step four times. This capped fixed-quadratic bisection illustrates coordinate span only; it does not choose diffusion timesteps or solve a sampling ODE.
- Midpoint after 0 refinements
- 1.5
- Bracket error bound
- 1.5
- Computed residual · x² − c
- 0.25
Bisection of x² − c on [0,U], capped at 50 iterations for floating-point resolution. The error bound is the maximum distance from the displayed midpoint to either bracket endpoint (half the width in exact arithmetic). Compensated square evaluation preserves the bracket when ordinary multiplication rounds a residual to zero. A truly exact endpoint or midpoint collapses the bracket. This is one monotone quadratic, not a general root solver. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.
Look forA reproducible sampling budget includes the actual grid and its coordinate convention.
Pause & reason
Check your understanding
Your turn
Try it yourself
For normalized α=0.6 and σ=0.8, compute SNR and half log-SNR under this lesson’s convention.
Take a moment to make a prediction or work it out on paper. Open a hint when you need one.
Give me a hint
Square the ratio for SNR, but take log of the unsquared ratio for lambda.
Compare with the solution
SNR=(0.6/0.8)²=0.5625, while lambda=log(0.75)≈−0.28768. Full log-SNR is approximately −0.57536. These values describe the declared coefficient pair and do not by themselves choose an optimal inference grid or guarantee finite-step generation quality.
Keep the idea
Take it with you
- Distinguish trained noising coefficients, inference grid, and update algorithm.
- Keep full versus half log-SNR and endpoint rules explicit.
- Measure the actual realized evaluations and quality for each compatible grid.
Read further
Original sources and deeper explanations to follow at your own pace.
Optional progress, saved in this browser when available. Revisit any lesson at any time.
Lesson not marked complete.