Innholdsfortegnelse[Gjemme seg][Forestilling]
De siste årene har generative modeller kalt "diffusjonsmodeller" blitt stadig mer populære, og med god grunn.
Verden har sett hva diffusjonsmodeller er i stand til, for eksempel å utkonkurrere GAN-er på bildesyntese, takket være noen få utvalgte landemerkepublikasjoner publisert bare på 2020- og 2021-tallet.
Utøvere så nylig bruken av diffusjonsmodeller i DALL-E2, OpenAIs bildeopprettingsmodell som ble publisert forrige måned.
Mange maskinlæringsutøvere er utvilsomt nysgjerrige på den indre funksjonen til diffusjonsmodeller gitt deres nylige suksess.
I dette innlegget skal vi se på den teoretiske grunnen til diffusjonsmodeller, deres design, deres fordeler og mye mer. La oss komme igang.
Hva er diffusjonsmodellen?
La oss starte med å finne ut hvorfor denne modellen omtales som en diffusjonsmodell.
Et ord relatert til termodynamikk i fysikktimer kalles diffusjon. Et system er ikke i likevekt hvis det er en stor konsentrasjon av et materiale, som en duft, på ett sted.
Diffusjon må skje for at systemet skal komme i likevekt. Molekylene til duften diffunderer gjennom systemet fra et område med høyere konsentrasjon, noe som gjør systemet jevnt gjennom hele systemet.
Alt blir etter hvert homogent på grunn av diffusjon.
Diffusjonsmodeller er motivert av denne termodynamiske ikke-likevektstilstanden. Diffusjonsmodeller bruker en Markov-kjede, som er en serie variabler der hver variabels verdi er avhengig av tilstanden til den forrige hendelsen.
Når vi tar et bilde, legger vi suksessivt til en bestemt mengde støy gjennom hele spredningsfasen fremover.
Etter å ha lagret det mer støyende bildet, fortsetter vi med å lage det påfølgende bildet i serien ved å introdusere ekstra støy.
Flere ganger utføres denne prosedyren. Et rent støybilde blir resultatet av å gjenta denne metoden noen ganger.
Hvordan kan vi da lage et bilde fra dette rotete bildet?
Diffusjonsprosessen reverseres ved hjelp av en nevrale nettverket. De samme nettverkene og de samme vektene brukes i bakoverdiffusjonsprosessen for å lage bildet fra t til t-1.
I stedet for å la nettverket forutse bildet, kan man forsøke å forutsi støyen ved hvert trinn, som må fjernes fra bildet, for å forenkle oppgaven ytterligere.
I ethvert scenario vil nevrale nettverksdesign må velges på en måte som opprettholder datadimensjonalitet.
Dypdykk inn i diffusjonsmodellen
Komponentene i en diffusjonsmodell er en fremadgående prosess (også kjent som en diffusjonsprosess), der et datum (ofte et bilde) gradvis støyes, og en omvendt prosess (også kjent som en omvendt diffusjonsprosess), der støy er konvertert tilbake til et utvalg fra målfordelingen.
Når støynivået er lavt nok, kan betingede Gaussianer brukes til å etablere prøvetakingskjedeovergangene i fremdriftsprosessen. En enkel parameterisering av fremgangsprosessen er resultatet av å koble denne kunnskapen med Markov-antakelsen:
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 en variansplan (enten lært eller fast) som sikrer, for tilstrekkelig høy T, at xT er praktisk talt en isotropisk gaussisk.
Den motsatte prosessen er der diffusjonsmodellmagi skjer. Modellen lærer å reversere denne diffusjonsprosessen under trening for å produsere ferske data. Modellen lærer fellesfordelingen som (x0:T) resultatet av å starte med den rene gaussiske støyligningen
(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 overgangenes tidsavhengige parametere oppdages. Legg spesielt merke til hvordan Markov-formuleringen sier at en gitt omvendt diffusjonsovergangsfordeling utelukkende avhenger av det foregående tidstrinn (eller påfølgende tidstrinn, avhengig av hvordan du ser på det):
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Modelltrening
En omvendt Markov-modell som maksimerer sannsynligheten for treningsdataene brukes til å trene en diffusjonsmodell. Praktisk sett er trening analogt med å redusere variasjonens øvre grense for den negative log-sannsynligheten.
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 må nå bestemme hvordan vi skal utføre vår diffusjonsmodell etter å ha etablert den matematiske underbygningen av målfunksjonen vår. Den eneste avgjørelsen som trengs for fremdriftsprosessen er å bestemme variansplanen, hvis verdier vanligvis stiger under prosedyren.
Vi vurderer sterkt å bruke Gaussisk distribusjonsparameterisering og modellarkitektur for omvendt prosedyre.
Den eneste betingelsen for vårt design er at både inngangen og utgangen har samme dimensjoner. Dette understreker den enorme graden av frihet som diffusjonsmodeller gir.
Nedenfor skal vi gå mer i dybden om disse alternativene.
Videresend prosess
Vi må gi avviksplanen i forhold til fremdriftsprosessen. Vi satte dem spesifikt til å være tidsavhengige konstanter og så bort fra muligheten for at de kan læres. En kronologisk tidsplan fra
β1 = 10−4 til βT = 0.02.
Lt blir en konstant med hensyn til vårt sett med læringsbare parametere på grunn av den faste variasjonsplanen, slik at vi kan se bort fra den under trening uavhengig av de spesifikke verdiene som er valgt.
Omvendt prosess
Vi går nå gjennom beslutningene som trengs for å definere den omvendte prosessen. Husk hvordan vi beskrev de omvendte Markov-overgangene som gaussisk:
pθ(xt−1|xt) := N (xt−1; µθ (xt, t), Σθ(xt, t))
Nå som vi har identifisert funksjonstypene. Til tross for at det er mer intrikate teknikker for å parameterisere, setter vi bare
Σθ(xt, t) = σ 2 t I
σ 2 t = βt
For å si det på en annen måte, anser vi den multivariate Gaussian som et resultat av separate Gaussianere med samme varians, en variansverdi som kan svinge over tid. Disse avvikene er satt til å samsvare med tidsplanen for videresendingsprosessavvik.
Som et resultat av denne nye formuleringen, 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 tapsfunksjonen vist nedenfor, som forfatterne fant å gi mer konsistent trening og overlegne resultater:
Lsimple(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
Forfatterne trekker også sammenhenger mellom denne formuleringen av diffusjonsmodeller og Langevin-baserte score-matching generative modeller. Som med den uavhengige og parallelle utviklingen av bølgebasert kvantefysikk og matrisebasert kvantemekanikk, som avslørte to sammenlignbare formuleringer av de samme fenomenene, ser det ut til at diffusjonsmodeller og scorebaserte modeller kan være to sider av samme sak.
Nettverksarkitektur
Til tross for at vår kondenserte tapsfunksjon har som mål å trene opp en modell Σθ, vi har fortsatt ikke bestemt oss for denne modellens arkitektur. Husk at modellen rett og slett må ha samme inngangs- og utgangsdimensjoner.
Gitt denne begrensningen, er det sannsynligvis ikke uventet at U-Net-lignende arkitekturer ofte brukes til å lage bildediffusjonsmodeller.
Tallrike endringer gjøres langs ruten til den omvendte prosessen mens man bruker kontinuerlige betingede Gauss-fordelinger. Husk at målet med den omvendte prosedyren er å lage et bilde som består av heltalls pikselverdier. Det er derfor nødvendig å bestemme diskrete (logg) sannsynligheter for hver potensiell pikselverdi over alle piksler.
Dette oppnås ved å tilordne en separat diskret dekoder til den omvendte diffusjonskjedens siste overgang. estimere sjansen for et bestemt bilde x0 gitt 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
der hevet skrift I angir uttrekket av en koordinat og D angir antall dimensjoner i dataene.
Målet på dette punktet er å fastslå sannsynligheten for hver heltallsverdi for en spesifikk piksel gitt fordelingen av potensielle verdier for den pikselen i den tidsvarierende t=1.
Endelig mål
De største resultatene, ifølge forskere, kom fra å forutsi støykomponenten i et bilde på et bestemt tidspunkt. Til slutt bruker de følgende mål:
Lsimple(θ) := Et,x0, h − θ( √ α¯tx0 + √ 1 − α¯t, t) 2
I det følgende bildet er trenings- og prøvetakingsprosedyrene for diffusjonsmodellen vår kortfattet avbildet:
Fordeler med diffusjonsmodell
Som allerede antydet, har mengden forskning på diffusjonsmodeller mangedoblet seg den siste tiden. Diffusjonsmodeller leverer nå toppmoderne bildekvalitet og er inspirert av termodynamikk uten likevekt.
Diffusjonsmodeller gir en rekke andre fordeler i tillegg til å ha banebrytende bildekvalitet, for eksempel at de ikke krever motstridende opplæring.
Ulempene med motstridende trening er allment kjent, derfor er det ofte å foretrekke å velge ikke-motstridende alternativer med tilsvarende ytelse og treningseffektivitet.
Diffusjonsmodeller gir også fordelene med skalerbarhet og parallelliserbarhet når det gjelder treningseffektivitet.
Selv om diffusjonsmodeller ser ut til å generere utfall tilsynelatende ut av løse luften, er grunnlaget for disse resultatene lagt av en rekke gjennomtenkte og interessante matematiske beslutninger og finesser, og beste praksis i bransjen er fortsatt under utvikling.
konklusjonen
Som konklusjon demonstrerer forskere høykvalitets bildesyntesefunn ved bruk av diffusjonssannsynlighetsmodeller, en klasse med latente variable modeller motivert av ideer fra termodynamikk uten likevekt.
De har oppnådd enorme ting takket være sine toppmoderne resultater og ikke-motstridende opplæring, og gitt deres barndom kan det forventes flere fremskritt i årene som kommer.
Spesielt har det blitt oppdaget at diffusjonsmodeller er avgjørende for funksjonaliteten til avanserte modeller som DALL-E 2.
Her du kan få tilgang til hele forskningen.
Legg igjen en kommentar