Los Programas de Ruido Comunes en Difusión y los Pasos de Muestreo Presentan Defectos
Common Diffusion Noise Schedules and Sample Steps are Flawed
May 15, 2023
Autores: Shanchuan Lin, Bingchen Liu, Jiashi Li, Xiao Yang
cs.AI
Resumen
Descubrimos que los esquemas de ruido comunes en difusión no garantizan que el último paso temporal tenga una relación señal-ruido (SNR) cero, y algunas implementaciones de muestreadores de difusión no comienzan desde el último paso temporal. Estos diseños son defectuosos y no reflejan el hecho de que el modelo recibe ruido gaussiano puro durante la inferencia, creando una discrepancia entre el entrenamiento y la inferencia. Demostramos que este diseño defectuoso causa problemas reales en implementaciones existentes. En Stable Diffusion, limita severamente al modelo a generar solo imágenes con brillo medio y le impide generar muestras muy brillantes u oscuras. Proponemos algunas correcciones simples: (1) reescalar el esquema de ruido para garantizar un SNR terminal cero; (2) entrenar el modelo con predicción de v; (3) modificar el muestreador para que siempre comience desde el último paso temporal; (4) reescalar la guía sin clasificador para evitar sobreexposición. Estos cambios simples aseguran que el proceso de difusión sea congruente entre el entrenamiento y la inferencia y permiten que el modelo genere muestras más fieles a la distribución original de datos.
English
We discover that common diffusion noise schedules do not enforce the last
timestep to have zero signal-to-noise ratio (SNR), and some implementations of
diffusion samplers do not start from the last timestep. Such designs are flawed
and do not reflect the fact that the model is given pure Gaussian noise at
inference, creating a discrepancy between training and inference. We show that
the flawed design causes real problems in existing implementations. In Stable
Diffusion, it severely limits the model to only generate images with medium
brightness and prevents it from generating very bright and dark samples. We
propose a few simple fixes: (1) rescale the noise schedule to enforce zero
terminal SNR; (2) train the model with v prediction; (3) change the sampler to
always start from the last timestep; (4) rescale classifier-free guidance to
prevent over-exposure. These simple changes ensure the diffusion process is
congruent between training and inference and allow the model to generate
samples more faithful to the original data distribution.