I en Deep Convolutional Generative Adversarial Network (DCGAN) spiller både generatoren og diskriminatoren sentrale roller. Generatoren består av transponerte konvolusjonslag (ConvTranspose2d), som utfører en slags omvendt konvolusjon for å oppskalere et lavoppløst latent vektorinnspill til høyoppløselige bilder. Hver transponerte konvolusjon, bortsett fra det siste laget, etterfølges av batchnormalisering og ReLU-aktivering, noe som bidrar til stabilitet og læringskapasitet i nettverket. I siste steg produseres en utgang med dimensjonene nc × 64 × 64, der nc typisk er 3 for fargebilder.

Diskriminatoren er konstruert med ordinære konvolusjonslag, batchnormalisering og leaky ReLU som aktiveringsfunksjon. Antall kanaler i hvert lag øker progressivt, fra grunnleggende ndf til høyere multipler, for å fange mer komplekse trekk i dataene. Diskriminatorens utgang er ett-dimensjonal per prøve, representert ved sannsynligheten for at et bilde er ekte.

Tapfunksjonen som benyttes er binær kryssentropi (BCELoss), som fungerer som en målestokk på hvor godt diskriminatoren klarer å skille mellom ekte og genererte data, og hvor godt generatoren klarer å lure diskriminatoren. I treningsløkken oppdateres først diskriminatoren basert på ekte data, deretter på genererte data, før generatoren oppdateres for å maksimere sannsynligheten for at de genererte bildene blir klassifisert som ekte. Optimeringsalgoritmen som brukes, er Adam, som effektivt håndterer store nettverk med mange parametere.

Ved treningen tas én gradientoppdatering for diskriminatoren per oppdatering av generatoren, men denne balansen kan justeres for å forhindre ustabilitet. Det er mulig å modifisere koden slik at diskriminatoren oppdateres flere ganger per generatoroppdatering, noe som kan forbedre konvergensen.

Videre utvikles generative modeller ved å endre tapfunksjonen til å bruke andre mål på forskjellen mellom sannsynlighetsfordelinger. F-divergensen generaliserer KL-divergensen og tillater alternative måter å måle avstanden mellom datafordelingen og den genererte fordelingen på. Ved å velge forskjellige konvekse funksjoner f kan man konstruere varianter som for eksempel reverse KL-divergens, Pearson’s chi-kvadrat eller Hellinger-divergens. Disse variasjonene gir fleksibilitet til å skreddersy modellen etter spesifikke dataegenskaper og ønskede generative kvaliteter.

Likevel møter GANer betydelige utfordringer i praksis. En av de mest kjente er mode collapse, der generatoren produserer svært begrensede og repetitive eksempler, og dermed ikke klarer å fange hele mangfoldet i datafordelingen. Dette skyldes ofte ustabil trening, der nettverket setter seg fast i suboptimale løsninger tidlig i treningsforløpet. En annen kritisk problemstilling er gradientvanishing: når diskriminatoren perfekt skiller ekte og falske data, gir den nær null gradient til generatoren, noe som hindrer effektiv læring. Dette kan skje dersom støttene til de ekte og genererte dataene ikke overlapper. Selv når diskriminatoren ikke er perfekt, kan gradientene være for svake til å støtte stabil trening. Slike problemer krever nøye justering av arkitektur, hyperparametere og treningsregimer for å sikre at nettverket utvikler seg på en meningsfull måte.

Det er avgjørende å forstå at GAN-trening innebærer et komplekst spill mellom generator og diskriminator, hvor balansen mellom dem må opprettholdes for å unngå vanlige feller. Effektiv batchnormalisering, passende aktiveringsfunksjoner, optimal valg av tapfunksjon og justering av treningshastigheter for de to nettverkene er alle nødvendige for å oppnå gode resultater.

I tillegg til disse tekniske detaljene er det viktig å erkjenne at valg av arkitektur og treningsstrategier har stor betydning for kvaliteten på genererte data. For eksempel kan større og dypere nettverk bedre fange kompleksiteten i høyoppløste bilder, men samtidig øke risikoen for overtilpasning eller ustabilitet. Videre kan f-divergense-rammeverket gi et teoretisk grunnlag for å utforske alternative treningsmål, noe som kan være særlig nyttig for spesialiserte applikasjoner der tradisjonelle GAN-tap ikke er tilstrekkelige.

Å forstå de matematiske grunnprinsippene bak GANs, inkludert rollen til konvekse funksjoner og deres konjugater i f-divergense, gir også mulighet til å utvikle mer robuste og fleksible generative modeller. Dette krever imidlertid en grundig innsikt i både sannsynlighetsteori og optimalisering.

Hvordan fungerer og styres diffusjonsmodeller i generativ maskinlæring?

Diffusjonsmodeller representerer en kraftfull tilnærming i generativ maskinlæring, der målet er å lære komplekse sannsynlighetsfordelinger over data ved å gradvis denoise støyende observasjoner. Modellen optimaliserer en surrogatfunksjon, ofte betegnet som Lγ(εθ)L_\gamma(\varepsilon_\theta), som i praksis svarer til et denoising score matching-objektiv under visse valg av vektkoeffisientene γt\gamma_t. Denne funksjonen evaluerer forskjellen mellom modellens estimerte støy og den faktiske støyen lagt til data, over en sekvens av tidsskritt i diffusionsprosessen.

Genereringsprosessen i diffusjonsmodeller kan betraktes som en omvendt prosess av den fremoverrettede diffusjonen, hvor man gradvis fjerner støy fra en utgangsvariabel xTx_T som er trukket fra en forhåndsdefinert priorfordeling. En betydelig utfordring i denne sammenhengen er at selve samplingprosessen krever simulering av en lang Markov-kjede, noe som gjør generering av enkeltprøver svært ressurskrevende.

For å adressere dette er det utviklet modifikasjoner som Denoising Diffusion Implicit Models (DDIM), som deler treningsmål med de tradisjonelle Denoising Diffusion Probabilistic Models (DDPM), men introduserer en deterministisk generativ prosess. DDIM benytter en ikke-Markovisk fremoverprosess og en deterministisk omvendt prosess, hvor støyens rolle styres av en parameter σt\sigma_t. Når denne settes til null, blir prosessen helt deterministisk. Fordelene med DDIM inkluderer høyere sampleeffektivitet, konsistent generering av prøver med stabile egenskaper uavhengig av samplingbane, muligheten for meningsfull interpolasjon i latentrommet, samt evnen til å rekonstruere data med lav feilmargin.

Diffusjonsmodellene kan også relateres til Langevin-dynamikk, der støy og score-funksjonen anvendes for sampling. DDIM kan ses som en deterministisk variant av Langevin-dynamikken, og metoder som annealed Langevin dynamics kan potensielt forbedre samplingprosessen.

I tillegg til generering uten styring, er det avgjørende å kunne kondisjonere diffusjonsmodellen på eksterne variable for målrettet generering. Ved bruk av score-baserte formuleringer modelleres kondisjoneringen som et problem der man estimerer gradienten til log-sannsynligheten xtlogp(xty)\nabla_{x_t} \log p(x_t|y), hvor yy er en kondisjoneringsvariabel. En direkte metode innebærer å trene en robust klassifikator som kan håndtere ulike støynivåer, men dette er praktisk utfordrende. Derfor er «Classifier-Free Guidance» en populær teknikk hvor modellen trenes både som kondisjonert og ukondisjonert, og kondisjoneringen styres ved en vekt γ\gamma som bestemmer balansen mellom de to. Dette muliggjør fleksibel styring av genereringen uten eksplisitt klassifikator.

Kondisjoneringsoperasjonen kan implementeres gjennom flere mekanismer, som for eksempel konkatenasjon, multiplikasjon, Feature-wise Linear Modulation (FiLM), og oppmerksomhetsmekanismer (attention). Valget av kondisjoneringsvariabelens type og representasjon er avgjørende for modellens kontrollmuligheter, som kan omfatte tekst, bilder eller andre medietyper.

I eksempler som Stable Diffusion benyttes CLIP (Contrastive Language-Image Pretraining), en modell som lærer en felles latent representasjon av tekst og bilder, for å transformere tekstbaserte prompt til semantiske token-sekvenser. Disse tokenene integreres i genereringsprosessen via cross-attention, slik at modellen kan fokusere på relevante deler av prompten under bildeproduksjon. På lignende vis benytter AudioLDM og MusicLDM CLAP (Contrastive Language-Audio Pretraining) for tekststyrt generering av lyd og musikk, hvor FiLM anvendes for å modulere kondisjoneringen.

Cross-attention fungerer ved at modellen lærer å vekte betydningen av ulike deler av den kondisjonerte informasjonen under generering, ved hjelp av spørrings-, nøkkel- og verdi-transformasjoner (Q, K, V). Dette tillater presis og dynamisk innflytelse av tekst- eller lydprompt i det pågående diffusjonsløpet.

Det er viktig å forstå at disse metodene for kondisjonering og styring ikke bare forbedrer genereringens presisjon, men også åpner for kreativ manipulasjon av output gjennom manipulasjon av latentrommets representasjoner. Muligheten til å interpolere, rekonstruere og styre genereringsprosessen gir en fleksibilitet som er grunnleggende for moderne anvendelser innen kunstig intelligens og kreativ teknologi.

Endelig bør leseren være oppmerksom på at selv om det matematiske rammeverket og de praktiske implementasjonene kan virke komplekse, hviler diffusjonsmodellene på et intuitivt prinsipp om gradvis å fjerne støy og gjenopprette strukturert data. Dette synliggjør en dyp kobling mellom stokastiske prosesser, energibaserte modeller og moderne nevrale nettverk, som sammen driver frem nye muligheter for generativ modellering.