Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Variationsautoenkodere (VAE'er) | Teoretiske Grundlag
Dybe Generative Modeller med Python

Variationsautoenkodere (VAE'er)

Stryg for at vise menuen

Autoencodere og Variational Autoencoders

Autoencodere er neurale netværk designet til at lære effektive repræsentationer af data gennem kodnings- og afkodningsprocesser. En standard autoencoder består af to komponenter:

  1. Encoder: komprimerer inputdata til en lavere-dimensionel repræsentation.
  2. Decoder: rekonstruerer de oprindelige data ud fra den komprimerede repræsentation.

Traditionelle autoencodere lærer deterministiske afbildninger, hvilket betyder, at de komprimerer data til et fast latent rum. De har dog svært ved at generere varierede output, da deres latente rum mangler struktur og glathed.

Forskelle mellem standard autoencodere og VAEs

Variationsautoencodere (VAE'er) forbedrer standard autoencodere ved at introducere et sandsynlighedsbaseret latent rum, hvilket muliggør struktureret og meningsfuld generering af nye data.

AE_vs_VAE

Encoder-decoder-struktur og latent rum-repræsentation

VAE'er består af to hovedkomponenter:

  1. Encoder: Kortlægger inputdata til en sandsynlighedsfordeling over et lavdimensionelt latent rum zz.
  2. Decoder: Udtrækker samples fra det latente rum og rekonstruerer inputdataene.

Matematisk formulering:

Encoderen producerer et gennemsnit og en varians for det latente rum:

μ=fμ(x;θ)\mu = f_\mu (x; \theta) σ2=fσ(x;θ)\sigma^2 = f_\sigma (x; \theta)

hvor:

  • μ\mu repræsenterer gennemsnittet af fordelingen i det latente rum;
  • σ2\sigma^2 repræsenterer variansen;
  • fμf_\mu og fσf_\sigma er funktioner parameteriseret af θ\theta, typisk implementeret som neurale netværk.

I stedet for at sende disse parametre direkte til dekoderen, samples der fra en Gaussisk fordeling ved hjælp af reparameteriseringstricket:

z=μ+σϵ,z = \mu + \sigma \odot \epsilon, ϵN(0,I)\epsilon \sim \mathcal{N}(0, I)

hvor:

  • \odot repræsenterer elementvis multiplikation;
  • ϵ\epsilon er en stokastisk variabel trukket fra en standard normalfordeling.

Dette trick muliggør, at gradienter kan propagere gennem samplingprocessen, hvilket gør backpropagation mulig. Uden dette trick ville den stokastiske samplingoperation gøre gradientbaseret læring umulig.

Dekoderen rekonstruerer input fra zz ved at lære en funktion g(z;ϕ)g(z; \phi), som returnerer parametrene for datadistributionen. Dekodernetværket trænes til at minimere forskellen mellem den rekonstruerede og den oprindelige data, hvilket sikrer rekonstruktioner af høj kvalitet.

Sandsynlighedsmodellering i VAE'er

VAE'er er baseret på Bayesiansk inferens, hvilket gør det muligt at modellere forholdet mellem observerede data xx og latente variable zz ved hjælp af sandsynlighedsfordelinger. Det grundlæggende princip bygger på Bayes’ sætning:

P(zx)=P(xz)P(z)P(x)P(z|x)= \frac{P(x|z)P(z)}{P(x)}

Da beregning af p(x)p(x) kræver integration over alle mulige latente variable, hvilket er uoverskueligt, approksimerer VAE'er den posterior p(zx)p(z∣x) med en simplere funktion q(zx)q(z∣x), hvilket muliggør effektiv inferens.

Evidence Lower Bound (ELBO)

I stedet for at maksimere den uoverskuelige marginale sandsynlighed p(x)p(x), maksimerer VAE'er dens nedre grænse, kaldet Evidence Lower Bound (ELBO):

logp(x)Eq(zx)[logp(xz)]DKL(q(zx)p(z))\log{p(x)} \ge \mathbb{E}_{q(z|x)} \left[ \log{p(x|z)} \right] - D_{KL} (q (z | x) || p(z))

hvor:

  • Det første led, Eq(zx)[logp(xz)]\mathbb{E}_{q(z|x)}[\log{p(x|z)}], er rekonstruktions-tabet, som sikrer at output ligner input;
  • Det andet led, DKL(q(zx)  p(z))D_{KL}(q(z|x)\ ||\ p(z)), er KL-divergensen, som regulariserer det latente rum ved at sikre at q(zx)q(z∣x) forbliver tæt på prioren p(z)p(z).

Ved at balancere disse to led opnår VAE'er en afvejning mellem nøjagtige rekonstruktioner og glatte latente rum-repræsentationer.

Anvendelser af VAE'er

1. Anomali-detektion

VAE'er kan lære den normale struktur af data. Når modellen møder afvigende input, har den svært ved at rekonstruere dem, hvilket fører til højere rekonstruktionsfejl, som kan bruges til at identificere outliers.

2. Billedsyntese

VAE'er kan generere nye billeder ved at sample fra det lærte latente rum. De anvendes bredt i applikationer som:

  • Ansigtsgenerering (f.eks. generering af nye menneskeansigter);
  • Stiloverførsel (f.eks. blanding af kunstneriske stilarter).

3. Tekstgenerering

VAE'er kan tilpasses til opgaver inden for naturlig sprogbehandling (NLP), hvor de bruges til at generere varierede og sammenhængende tekstsekvenser.

4. Lægemiddelopdagelse

VAE'er er blevet anvendt inden for bioinformatik og lægemiddelopdagelse, hvor de genererer molekylære strukturer med ønskede egenskaber.

Konklusion

Variational Autoencoders er en kraftfuld klasse af generative modeller, der introducerer probabilistisk modellering til autoencodere. Deres evne til at generere varierede og realistiske data har gjort dem til en grundlæggende komponent i moderne generativ AI.

Sammenlignet med traditionelle autoencodere giver VAE'er et struktureret latent rum, hvilket forbedrer de generative egenskaber. Efterhånden som forskningen skrider frem, fortsætter VAE'er med at spille en central rolle i AI-applikationer inden for computer vision, NLP og mere.

1. Hvad er den primære forskel mellem en standard autoencoder og en variational autoencoder (VAE)?

2. Hvad er rollen for KL-divergensleddet i VAE-tabfunktionen?

3. Hvorfor er reparametriseringstricket nødvendigt i VAE'er?

4. Hvilket af følgende beskriver bedst ELBO (Evidence Lower Bound) i VAE'er?

5. Hvilken af følgende er IKKE en almindelig anvendelse af VAE'er?

question mark

Hvad er den primære forskel mellem en standard autoencoder og en variational autoencoder (VAE)?

Vælg det korrekte svar

question mark

Hvad er rollen for KL-divergensleddet i VAE-tabfunktionen?

Vælg det korrekte svar

question mark

Hvorfor er reparametriseringstricket nødvendigt i VAE'er?

Vælg det korrekte svar

question mark

Hvilket af følgende beskriver bedst ELBO (Evidence Lower Bound) i VAE'er?

Vælg det korrekte svar

question mark

Hvilken af følgende er IKKE en almindelig anvendelse af VAE'er?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 6

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

Sektion 2. Kapitel 6
some-alt