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. 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

2

Kilder

2
  • Denoising Diffusion Probabilistic Models (Ho et al., 2020)
  • Deep Unsupervised Learning using Nonequilibrium Thermodynamics (Sohl-Dickstein et al., 2015)