Denoising Diffusion Probabilistic Model
forkortelse for DDPM
En generativ model, der lærer at generere data ved at vende en gradvis støjtilførselsproces om.
Kort fortalt
Kort fortalt: en model, der først gradvist tilføjer støj til data, og derefter lærer at fjerne støjen for at skabe nye data.
- Kategori
- model
- Niveau
- øvet
Betydninger
1- 1
En klasse af generative modeller, der modellerer datadistribution ved at lære at denoise en Markov-kæde af støjniveauer.
- DDPM'er har opnået state-of-the-art resultater inden for billedgenerering. — Ho et al., 2020
- Træningen af en DDPM involverer at minimere en simpel MSE mellem forudsagt og faktisk støj.
Hvornår bruges det
Bruges til billedgenerering, lydgenerering og andre generative opgaver, hvor høj kvalitet og variation er vigtig. DDPM'er danner grundlag for populære systemer som DALL·E og Stable Diffusion.
Formel
L = E_{t, x_0, ε} [ ||ε - ε_θ(x_t, t)||^2 ]Kodeeksempel
import torch
def forward_diffusion(x_0, t, alpha_bar):
# x_0: original data, t: timestep, alpha_bar: cumulative product of 1 - beta
noise = torch.randn_like(x_0)
x_t = torch.sqrt(alpha_bar[t]) * x_0 + torch.sqrt(1 - alpha_bar[t]) * noise
return x_t, noise
# Training loop (simplified):
# for x_0 in dataloader:
# t = torch.randint(0, T, (batch_size,))
# x_t, noise = forward_diffusion(x_0, t, alpha_bar)
# predicted_noise = model(x_t, t)
# loss = F.mse_loss(predicted_noise, noise)
# loss.backward()Fremadrettet diffusionsproces og træningsloop for en DDPM. Modellen forudsiger støjen, der blev tilføjet, og minimerer MSE.
Oprindelse
Termen blev introduceret af Sohl-Dickstein et al. i 2015 og senere populariseret af Ho et al. i 2020 med DDPM-papiret.
Afledte ord
2Kilder
2- Denoising Diffusion Probabilistic Models (Ho et al., 2020)
- Deep Unsupervised Learning using Nonequilibrium Thermodynamics (Sohl-Dickstein et al., 2015)