Indholdsfortegnelse[Skjule][At vise]
I de senere år er generative modeller kaldet "diffusionsmodeller" blevet mere og mere populære og med god grund.
Verden har set, hvad diffusionsmodeller er i stand til, såsom at udkonkurrere GAN'er på billedsyntese, takket være nogle få udvalgte skelsættende publikationer udgivet netop i 2020'erne og 2021'erne.
Praktiserende læger har senest set brugen af diffusionsmodeller i DALL-E2, OpenAIs billedskabelsesmodel, der blev offentliggjort i sidste måned.
Mange maskinlæringsudøvere er utvivlsomt nysgerrige efter den indre funktion af diffusionsmodeller i betragtning af deres seneste bølge af succes.
I dette indlæg vil vi se på den teoretiske underbygning af diffusionsmodeller, deres design, deres fordele og meget mere. Lad os komme afsted.
Hvad er diffusionsmodellen?
Lad os starte med at finde ud af, hvorfor denne model omtales som en diffusionsmodel.
Et ord relateret til termodynamik i fysiktimerne kaldes diffusion. Et system er ikke i ligevægt, hvis der er en stor koncentration af et materiale, som en duft, på ét sted.
Diffusion skal ske for at systemet kan komme i ligevægt. Duftens molekyler diffunderer gennem systemet fra et område med en højere koncentration, hvilket gør systemet ensartet overalt.
Alt bliver til sidst homogent på grund af diffusion.
Diffusionsmodeller er motiveret af denne termodynamiske ikke-ligevægtstilstand. Diffusionsmodeller bruger en Markov-kæde, som er en række variabler, hvor hver variabels værdi afhænger af tilstanden af den forudgående begivenhed.
Når vi tager et billede, tilføjer vi successivt en bestemt mængde støj til det gennem hele den fremadrettede diffusionsfase.
Efter at have gemt det mere støjende billede, fortsætter vi med at oprette det efterfølgende billede i serien ved at introducere yderligere støj.
Flere gange udføres denne procedure. Et rent støjbillede opnås ved at gentage denne metode et par gange.
Hvordan kan vi så skabe et billede ud fra dette rodede billede?
Diffusionsprocessen vendes ved hjælp af en neurale netværk. De samme netværk og de samme vægte bruges i baglæns diffusionsprocessen for at skabe billedet fra t til t-1.
I stedet for at lade netværket forudse billedet, kan man forsøge at forudsige støjen ved hvert trin, som skal fjernes fra billedet, for yderligere at forenkle opgaven.
I ethvert scenarie neurale netværksdesign skal vælges på en måde, der bibeholder datadimensionalitet.
Dyb dyk ned i diffusionsmodellen
Komponenterne i en diffusionsmodel er en fremadgående proces (også kendt som en diffusionsproces), hvor et datum (ofte et billede) gradvist støjes, og en omvendt proces (også kendt som en omvendt diffusionsproces), hvor støj er konverteres tilbage til en stikprøve fra målfordelingen.
Når støjniveauet er lavt nok, kan betingede Gaussianer bruges til at etablere prøvetagningskædeovergangene i den fremadrettede proces. En nem parametrisering af den fremadrettede proces er resultatet af at koble denne viden med Markov-antagelsen:
q(x1:T |x0) := YT t=1 q(xt|xt−1), q(xt|xt−1) := N (xt; p 1 − βtxt−1, βtI)
Her 1 ....T er et variansskema (enten indlært eller fast), der sikrer, for tilstrækkelig høj T, at xT praktisk talt er en isotrop Gauss.
Den modsatte proces er, hvor diffusionsmodelmagi sker. Modellen lærer at vende denne diffusionsproces under træning for at producere friske data. Modellen lærer fællesfordelingen som (x0:T) resultatet af at starte med den rene Gaussiske støjligning
(xT):=N(xT,0,I).
pθ(x0:T ) := p(xT ) YT t=1 pθ(xt−1|xt), pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ( xt, t))
hvor de gaussiske overganges tidsafhængige parametre opdages. Læg især mærke til, hvordan Markov-formuleringen siger, at en given omvendt diffusionsovergangsfordeling udelukkende afhænger af det foregående tidstrin (eller efterfølgende tidstrin, afhængigt af hvordan du ser på det):
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Model træning
En omvendt Markov-model, der maksimerer sandsynligheden for træningsdataene, bruges til at træne en diffusionsmodel. Praktisk talt er træning analogt med at reducere den variationelle øvre grænse for den negative log-sandsynlighed.
E [− log pθ(x0)] ≤ Eq − log pθ(x0:T ) q(x1:T |x0) = Eq − log p(xT ) − X t≥1 log pθ(xt−1|xt) q (xt|xt−1) =: L
Modeller
Vi skal nu beslutte, hvordan vi skal udføre vores diffusionsmodel efter at have etableret den matematiske underbygning af vores målfunktion. Den eneste beslutning, der er nødvendig for den fremadrettede proces, er at bestemme variansplanen, hvis værdier typisk stiger under proceduren.
Vi overvejer kraftigt at bruge den Gaussiske distributionsparameterisering og modelarkitektur til den omvendte procedure.
Den eneste betingelse for vores design er, at både input og output har samme dimensioner. Dette understreger den enorme grad af frihed, som diffusionsmodeller giver.
Nedenfor vil vi gå mere i dybden med disse muligheder.
Fremsende proces
Vi skal levere afvigelsesplanen i forhold til den fremadrettede proces. Vi satte dem specifikt til at være tidsafhængige konstanter og ignorerede muligheden for, at de kan læres. Et kronologisk skema fra
β1 = 10−4 til βT = 0.02.
Lt bliver en konstant med hensyn til vores sæt af indlærelige parametre på grund af det faste variansskema, hvilket giver os mulighed for at se bort fra det under træning uanset de specifikke værdier, der er valgt.
Omvendt proces
Vi gennemgår nu de nødvendige beslutninger for at definere den omvendte proces. Husk, hvordan vi beskrev de omvendte Markov-overgange som gaussiske:
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Nu hvor vi har identificeret de funktionelle typer. På trods af at der er mere indviklede teknikker til at parametrere, sætter vi bare
Σθ(xt, t) = σ 2 t I
σ 2 t = βt
For at sige det på en anden måde, anser vi den multivariate Gauss for at være resultatet af separate Gaussianer med samme varians, en variansværdi, der kan svinge over tid. Disse afvigelser er indstillet til at matche tidsplanen for videresendelsesprocesafvigelser.
Som et resultat af denne nye formulering, vi har:
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t)) :=N (xt−1; µθ (xt, t), σ2 t I)
Dette resulterer i den alternative tabsfunktion vist nedenfor, som forfatterne fandt at producere mere konsekvent træning og overlegne resultater:
Lsimple(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
Forfatterne trækker også forbindelser mellem denne formulering af diffusionsmodeller og Langevin-baserede score-matchende generative modeller. Som med den uafhængige og parallelle udvikling af bølgebaseret kvantefysik og matrixbaseret kvantemekanik, som afslørede to sammenlignelige formuleringer af de samme fænomener, ser det ud til, at diffusionsmodeller og scorebaserede modeller kan være to sider af samme mønt.
Netværksarkitektur
På trods af at vores kondenserede tabsfunktion har til formål at træne en model Σθ, vi har stadig ikke besluttet os for denne models arkitektur. Husk, at modellen blot skal have samme input- og outputdimensioner.
I betragtning af denne begrænsning er det sandsynligvis ikke uventet, at U-Net-lignende arkitekturer ofte bruges til at skabe billeddiffusionsmodeller.
Der foretages adskillige ændringer langs ruten af den omvendte proces, mens der anvendes kontinuerlige betingede Gauss-fordelinger. Husk, at målet med den omvendte procedure er at skabe et billede, der består af hele pixelværdier. Det er derfor nødvendigt at bestemme diskrete (log) sandsynligheder for hver potentiel pixelværdi over alle pixels.
Dette opnås ved at tildele en separat diskret dekoder til den omvendte diffusionskædes sidste overgang. estimering af chancen for et bestemt billede x0 given x1.
pθ(x0|x1) = YD i=1 Z δ+(xi 0 ) δ−(xi 0 ) N (x; µi θ (x1, 1), σ2 1 ) dx
δ+(x) = ∞ hvis x = 1 x + 1 255 hvis x < 1 δ−(x) = −∞ hvis x = −1 x − 1 255 hvis x > −1
hvor den hævede skrift I angiver udtrækningen af en koordinat og D angiver antallet af dimensioner i dataene.
Målet på dette tidspunkt er at fastslå sandsynligheden for hver heltalsværdi for en specifik pixel givet fordelingen af potentielle værdier for den pixel i den tidsvarierende t=1.
Slutmål
De største resultater, ifølge videnskabsmænd, kom fra at forudsige støjkomponenten i et billede på et bestemt tidspunkt. I sidste ende anvender de følgende mål:
Lsimple(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
I det følgende billede er trænings- og prøveudtagningsprocedurerne for vores diffusionsmodel kortfattet afbildet:
Fordele ved diffusionsmodellen
Som allerede nævnt er mængden af forskning i diffusionsmodeller mangedoblet på det seneste. Diffusionsmodeller leverer nu state-of-the-art billedkvalitet og er inspireret af termodynamik uden ligevægt.
Diffusionsmodeller giver en række andre fordele ud over at have banebrydende billedkvalitet, såsom at de ikke kræver modstridende træning.
Ulemperne ved modstridende træning er almindeligt kendte, og derfor er det ofte at foretrække at vælge ikke-modstridende alternativer med tilsvarende ydeevne og træningseffektivitet.
Diffusionsmodeller giver også fordelene ved skalerbarhed og paralleliserbarhed med hensyn til træningseffektivitet.
Selvom diffusionsmodeller ser ud til at generere resultater tilsyneladende ud af den blå luft, er grundlaget for disse resultater lagt af en række gennemtænkte og interessante matematiske beslutninger og finesser, og industriens bedste praksis er stadig under udvikling.
Konklusion
Som konklusion demonstrerer forskere billedsynteseresultater af høj kvalitet ved at bruge diffusionssandsynlighedsmodeller, en klasse af latente variable modeller motiveret af ideer fra termodynamik uden ligevægt.
De har opnået enorme ting takket være deres state-of-the-art resultater og ikke-modstridende træning, og i betragtning af deres barndom kan der forventes flere fremskridt i de kommende år.
Det er især blevet opdaget, at diffusionsmodeller er afgørende for funktionaliteten af avancerede modeller som DALL-E 2.
Her du kan få adgang til hele forskningen.
Giv en kommentar