Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Diffusionsmodeller og Probabilistiske Generative Tilgange | Teoretiske Grundlag
Generativ AI

bookDiffusionsmodeller og Probabilistiske Generative Tilgange

Forståelse af diffusionsbaseret generering

Diffusionsmodeller er en kraftfuld type AI-model, der genererer data – især billeder – ved at lære at vende en proces, hvor der tilføjes tilfældig støj. Forestil dig at se et klart billede gradvist blive sløret, som statisk støj på et fjernsyn. En diffusionsmodel lærer at gøre det modsatte: den tager støjfyldte billeder og rekonstruerer det oprindelige billede ved trinvis at fjerne støjen.

Processen involverer to hovedfaser:

  • Fremadrettet proces (diffusion): tilfældig støj tilføjes gradvist til et billede over mange trin, hvilket korrumperer det til ren støj;
  • Omvendt proces (denoising): et neuralt netværk lærer at fjerne støjen trin for trin og rekonstruerer det oprindelige billede fra den støjfyldte version.

Diffusionsmodeller er kendt for deres evne til at producere billeder af høj kvalitet og realisme. Deres træning er typisk mere stabil sammenlignet med modeller som GANs, hvilket gør dem meget attraktive i moderne generativ AI.

Denoising Diffusion Probabilistic Models (DDPMs)

Denoising diffusion probabilistiske modeller (DDPMs) er en populær type diffusionsmodel, der anvender probabilistiske principper og dyb læring til trinvis at fjerne støj fra billeder.

Fremadrettet proces

I den fremadrettede proces starter vi med et rigtigt billede x0x_0 og tilføjer gradvist Gaussisk støj over TT tidsskridt:

q(xtxt1)=N(xt;1βtxt1,βtI)q(x_t|x_{t-1})= \mathcal{N}(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_tI)

Hvor:

  • xtx_t: støjfyldt version af input ved tidsskridt;
  • βt\beta_t: lille variansplan, der styrer, hvor meget støj der tilføjes;
  • N\mathcal{N}: Gaussisk fordeling.

Vi kan også udtrykke den samlede støj tilføjet op til trin som:

q(xtx0)=N(xt;αˉtx0,(1αˉt)I)q(x_t|x_0)= \mathcal{N}(x_t;\sqrt{\={\alpha}_t}x_0,(1-\={\alpha}_t)I)

Hvor:

  • αˉt=s=1t(1βs)\=\alpha_t=\prod_{s=1}^t(1-\beta_s)

Omvendt proces

Målet med modellen er at lære den omvendte proces. Et neuralt netværk parameteriseret af θ\theta forudsiger middelværdi og varians for den afstøjede fordeling:

pθ(xt1xt)=N(xt1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1};\mu_\theta(x_t,t), \Sigma_\theta(x_t,t))

hvor:

  • xtx_t: støjfyldt billede ved tidssteg tt;
  • xt1x_{t-1}: forudsagt mindre støjfyldt billede ved steg t1t-1;
  • μθ\mu_\theta: forudsagt middelværdi fra det neurale netværk;
  • Σθ\Sigma_\theta: forudsagt varians fra det neurale netværk.

Tabsfunktion

Træning indebærer at minimere forskellen mellem den faktiske støj og modellens forudsagte støj ved hjælp af følgende objektiv:

Lsimple=Ex0,ϵ,t[ϵϵ0(αˉtx0+1αˉtϵ,t)2]L_{simple} = \mathbb{E}_{x_0, \epsilon, t} \left[ ||\epsilon - \epsilon_0 \left( \sqrt{\=\alpha_t}x_0 + \sqrt{1-\=\alpha_t}\epsilon, t \right)||^2 \right]

hvor:

  • xtx_t: oprindeligt inputbillede;
  • ϵ\epsilon: tilfældig Gaussisk støj;
  • tt: tidssteg under diffusion;
  • ϵθ\epsilon_\theta: neuralt netværks forudsigelse af støj;
  • αˉt\={\alpha}_t: Produkt af støjskemaets parametre op til steg tt.

Dette hjælper modellen med at blive bedre til at fjerne støj, hvilket forbedrer dens evne til at generere realistiske data.

Score-baseret generativ modellering

Score-baserede modeller er en anden klasse af diffusionsmodeller. I stedet for at lære den omvendte støjproces direkte, lærer de scorefunktionen:

xlogp(x)\nabla_x\log{p(x)}

hvor:

  • xlogp(x)\nabla_x\log{p(x)}: gradienten af log-sandsynlighedstætheden med hensyn til input xx. Denne peger i retning af stigende sandsynlighed under datadistributionen;
  • p(x)p(x): sandsynlighedsfordelingen for dataene.

Denne funktion angiver for modellen, i hvilken retning billedet skal bevæge sig for at blive mere som rigtige data. Disse modeller anvender derefter en samplingmetode som Langevin-dynamik til gradvist at flytte støjfyldte data mod områder med høj sandsynlighed.

Score-baserede modeller arbejder ofte i kontinuerlig tid ved brug af stokastiske differentialligninger (SDE'er). Denne kontinuerlige tilgang giver fleksibilitet og kan producere høj kvalitet af genererede data på tværs af forskellige datatyper.

Anvendelser inden for højopløselig billedgenerering

Diffusionsmodeller har revolutioneret generative opgaver, især inden for højopløselig visuel generering. Bemærkelsesværdige anvendelser omfatter:

  • Stable Diffusion: en latent diffusionsmodel, der genererer billeder ud fra tekstprompter. Den kombinerer en U-Net-baseret denoising-model med en variational autoencoder (VAE) for at operere i latent rum;
  • DALL·E 2: kombinerer CLIP-embeddings og diffusionsbaseret dekodning for at generere meget realistiske og semantiske billeder ud fra tekst;
  • MidJourney: En diffusionsbaseret billedgenereringsplatform kendt for at producere visuelt høj kvalitet og kunstnerisk stilede billeder ud fra abstrakte eller kreative prompts.

Disse modeller anvendes til kunstgenerering, fotorealistisk syntese, inpainting, superopløsning og mere.

Sammenfatning

Diffusionsmodeller definerer en ny æra inden for generativ modellering ved at behandle datagenerering som en omvendt stokastisk proces over tid. Gennem DDPM'er og score-baserede modeller opnår de robust træning, høj prøve-kvalitet og overbevisende resultater på tværs af forskellige modaliteter. Deres forankring i sandsynligheds- og termodynamiske principper gør dem både matematisk elegante og praktisk kraftfulde.

1. Hvad er hovedideen bag diffusionsbaserede generative modeller?

2. Hvad bruger DDPM's fremadrettede proces til at tilføje støj ved hvert trin?

3. Hvilken af følgende beskriver bedst scorefunktionens xlogp(x)\nabla_x\log{p(x)} rolle i score-baseret generativ modellering?

question mark

Hvad er hovedideen bag diffusionsbaserede generative modeller?

Select the correct answer

question mark

Hvad bruger DDPM's fremadrettede proces til at tilføje støj ved hvert trin?

Select the correct answer

question mark

Hvilken af følgende beskriver bedst scorefunktionens xlogp(x)\nabla_x\log{p(x)} rolle i score-baseret generativ modellering?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 9

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain the difference between DDPMs and score-based models?

How does the reverse process actually reconstruct the original image?

What are some challenges or limitations of diffusion models?

Awesome!

Completion rate improved to 4.76

bookDiffusionsmodeller og Probabilistiske Generative Tilgange

Stryg for at vise menuen

Forståelse af diffusionsbaseret generering

Diffusionsmodeller er en kraftfuld type AI-model, der genererer data – især billeder – ved at lære at vende en proces, hvor der tilføjes tilfældig støj. Forestil dig at se et klart billede gradvist blive sløret, som statisk støj på et fjernsyn. En diffusionsmodel lærer at gøre det modsatte: den tager støjfyldte billeder og rekonstruerer det oprindelige billede ved trinvis at fjerne støjen.

Processen involverer to hovedfaser:

  • Fremadrettet proces (diffusion): tilfældig støj tilføjes gradvist til et billede over mange trin, hvilket korrumperer det til ren støj;
  • Omvendt proces (denoising): et neuralt netværk lærer at fjerne støjen trin for trin og rekonstruerer det oprindelige billede fra den støjfyldte version.

Diffusionsmodeller er kendt for deres evne til at producere billeder af høj kvalitet og realisme. Deres træning er typisk mere stabil sammenlignet med modeller som GANs, hvilket gør dem meget attraktive i moderne generativ AI.

Denoising Diffusion Probabilistic Models (DDPMs)

Denoising diffusion probabilistiske modeller (DDPMs) er en populær type diffusionsmodel, der anvender probabilistiske principper og dyb læring til trinvis at fjerne støj fra billeder.

Fremadrettet proces

I den fremadrettede proces starter vi med et rigtigt billede x0x_0 og tilføjer gradvist Gaussisk støj over TT tidsskridt:

q(xtxt1)=N(xt;1βtxt1,βtI)q(x_t|x_{t-1})= \mathcal{N}(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_tI)

Hvor:

  • xtx_t: støjfyldt version af input ved tidsskridt;
  • βt\beta_t: lille variansplan, der styrer, hvor meget støj der tilføjes;
  • N\mathcal{N}: Gaussisk fordeling.

Vi kan også udtrykke den samlede støj tilføjet op til trin som:

q(xtx0)=N(xt;αˉtx0,(1αˉt)I)q(x_t|x_0)= \mathcal{N}(x_t;\sqrt{\={\alpha}_t}x_0,(1-\={\alpha}_t)I)

Hvor:

  • αˉt=s=1t(1βs)\=\alpha_t=\prod_{s=1}^t(1-\beta_s)

Omvendt proces

Målet med modellen er at lære den omvendte proces. Et neuralt netværk parameteriseret af θ\theta forudsiger middelværdi og varians for den afstøjede fordeling:

pθ(xt1xt)=N(xt1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1};\mu_\theta(x_t,t), \Sigma_\theta(x_t,t))

hvor:

  • xtx_t: støjfyldt billede ved tidssteg tt;
  • xt1x_{t-1}: forudsagt mindre støjfyldt billede ved steg t1t-1;
  • μθ\mu_\theta: forudsagt middelværdi fra det neurale netværk;
  • Σθ\Sigma_\theta: forudsagt varians fra det neurale netværk.

Tabsfunktion

Træning indebærer at minimere forskellen mellem den faktiske støj og modellens forudsagte støj ved hjælp af følgende objektiv:

Lsimple=Ex0,ϵ,t[ϵϵ0(αˉtx0+1αˉtϵ,t)2]L_{simple} = \mathbb{E}_{x_0, \epsilon, t} \left[ ||\epsilon - \epsilon_0 \left( \sqrt{\=\alpha_t}x_0 + \sqrt{1-\=\alpha_t}\epsilon, t \right)||^2 \right]

hvor:

  • xtx_t: oprindeligt inputbillede;
  • ϵ\epsilon: tilfældig Gaussisk støj;
  • tt: tidssteg under diffusion;
  • ϵθ\epsilon_\theta: neuralt netværks forudsigelse af støj;
  • αˉt\={\alpha}_t: Produkt af støjskemaets parametre op til steg tt.

Dette hjælper modellen med at blive bedre til at fjerne støj, hvilket forbedrer dens evne til at generere realistiske data.

Score-baseret generativ modellering

Score-baserede modeller er en anden klasse af diffusionsmodeller. I stedet for at lære den omvendte støjproces direkte, lærer de scorefunktionen:

xlogp(x)\nabla_x\log{p(x)}

hvor:

  • xlogp(x)\nabla_x\log{p(x)}: gradienten af log-sandsynlighedstætheden med hensyn til input xx. Denne peger i retning af stigende sandsynlighed under datadistributionen;
  • p(x)p(x): sandsynlighedsfordelingen for dataene.

Denne funktion angiver for modellen, i hvilken retning billedet skal bevæge sig for at blive mere som rigtige data. Disse modeller anvender derefter en samplingmetode som Langevin-dynamik til gradvist at flytte støjfyldte data mod områder med høj sandsynlighed.

Score-baserede modeller arbejder ofte i kontinuerlig tid ved brug af stokastiske differentialligninger (SDE'er). Denne kontinuerlige tilgang giver fleksibilitet og kan producere høj kvalitet af genererede data på tværs af forskellige datatyper.

Anvendelser inden for højopløselig billedgenerering

Diffusionsmodeller har revolutioneret generative opgaver, især inden for højopløselig visuel generering. Bemærkelsesværdige anvendelser omfatter:

  • Stable Diffusion: en latent diffusionsmodel, der genererer billeder ud fra tekstprompter. Den kombinerer en U-Net-baseret denoising-model med en variational autoencoder (VAE) for at operere i latent rum;
  • DALL·E 2: kombinerer CLIP-embeddings og diffusionsbaseret dekodning for at generere meget realistiske og semantiske billeder ud fra tekst;
  • MidJourney: En diffusionsbaseret billedgenereringsplatform kendt for at producere visuelt høj kvalitet og kunstnerisk stilede billeder ud fra abstrakte eller kreative prompts.

Disse modeller anvendes til kunstgenerering, fotorealistisk syntese, inpainting, superopløsning og mere.

Sammenfatning

Diffusionsmodeller definerer en ny æra inden for generativ modellering ved at behandle datagenerering som en omvendt stokastisk proces over tid. Gennem DDPM'er og score-baserede modeller opnår de robust træning, høj prøve-kvalitet og overbevisende resultater på tværs af forskellige modaliteter. Deres forankring i sandsynligheds- og termodynamiske principper gør dem både matematisk elegante og praktisk kraftfulde.

1. Hvad er hovedideen bag diffusionsbaserede generative modeller?

2. Hvad bruger DDPM's fremadrettede proces til at tilføje støj ved hvert trin?

3. Hvilken af følgende beskriver bedst scorefunktionens xlogp(x)\nabla_x\log{p(x)} rolle i score-baseret generativ modellering?

question mark

Hvad er hovedideen bag diffusionsbaserede generative modeller?

Select the correct answer

question mark

Hvad bruger DDPM's fremadrettede proces til at tilføje støj ved hvert trin?

Select the correct answer

question mark

Hvilken af følgende beskriver bedst scorefunktionens xlogp(x)\nabla_x\log{p(x)} rolle i score-baseret generativ modellering?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 9
some-alt