Robocikowo>ROBOCIKOWO
Architektura

VAE

2014AktywnyOpublikowano: 8 czerwca 2026Aktualizacja: 8 czerwca 2026Opublikowany
Probabilistyczny model generatywny z encoderem i decoderem łączonymi przez stochastyczną przestrzeń latentną, trenowany przez maksymalizację ELBO.
Kluczowa innowacja
Połączenie autoenkodera z probabilistyczną przestrzenią latentną i wnioskowaniem wariacyjnym, dzięki któremu jeden różniczkowalny model jednocześnie uczy się reprezentacji i generuje próbki przez maksymalizację dolnego ograniczenia wiarygodności (ELBO).
Kategoria
Architektura
Poziom abstrakcji
Building block
Poziom operacji
Element architekturyModelTrening
Zastosowania
Kompresja obrazu do latentu w Stable Diffusion / SDXL / SD3 (KL-VAE)Tokenizery wizualne i audio (VQ-VAE, RVQ — DALL·E 1, MUSE, Encodec)Latentny model dynamiki w RL (RSSM w PlaNet/Dreamer)Generacja obrazów (vanilla VAE, NVAE, VDVAE)Generacja mowy i muzyki (NaturalSpeech, Soundstream)Modele białek i sekwencji biologicznychAnomaly detection przez rekonstrukcjęLatent-space interpolacje i edycja obrazów

Jak działa

Trening: dla próbki x encoder zwraca parametry rozkładu q_φ(z|x) = 𝒩(μ_φ(x), σ²_φ(x)·I). Próbkujemy z = μ + σ·ε, gdzie ε ~ 𝒩(0,I) (reparametryzacja umożliwia gradient). Decoder daje p_θ(x|z) (Gauss albo Bernoulli). Funkcja kosztu: ℒ_ELBO = − ℒ_rekon (np. MSE lub BCE) − β·KL(q_φ(z|x) ∥ p(z)), gdzie β=1 to klasyczny VAE, β-VAE używa innych wag. Generacja: próbkujemy z ~ p(z) = 𝒩(0,I), przepuszczamy przez decoder. Warianty: β-VAE (kontrola disentanglement), VQ-VAE (dyskretne kody przez vector quantization), KL-VAE (kontynuacyjne, używane w SD), conditional VAE (warunkowanie), hierarchical VAE (NVAE, VDVAE). W pipeline'ach LDM trening VAE jest wzbogacony o LPIPS i adversarial loss dla lepszej rekonstrukcji percepcyjnej.

Rozwiązany problem

Klasyczne autoenkodery uczą się dowolnej (deterministycznej) przestrzeni latentnej, która nie nadaje się do generacji nowych próbek. VAE rozwiązuje ten problem, narzucając probabilistyczną strukturę i regularyzację KL — przestrzeń latentna staje się gładka i próbkowalna, co umożliwia generację nowych obrazów/sekwencji oraz interpretowalne interpolacje.

Komponenty

Encoder (recognition network)Aproksymuje posterior p(z|x)

Sieć neuronowa wyznaczająca parametry rozkładu posteriornego (zwykle μ i log σ² Gaussa). Dla obrazów: CNN. Dla sekwencji: RNN/Transformer.

INObserwacja x.
OUTParametry posterioru (μ i log σ²).
Decoder (generative network)Generuje x z latentu z

Sieć przekształcająca z w rekonstrukcję / próbkę x̂. Decoder definiuje rozkład warunkowy obserwacji.

Reparameterization trickRóżniczkowalne próbkowanie z posterioru

z = μ + σ·ε, ε ~ 𝒩(0,I). Pozwala propagować gradient przez stochastyczny węzeł, kluczowe dla SGD na ELBO.

Gaussian (klasyczne)Standardowa diagonalna parametryzacja Gaussa.
Gumbel-softmax / straight-through (VQ-VAE, kategoryczne)Dyskretne / kategoryczne latenty z aproksymacją gradientu.

Oficjalna

KL divergence regularizationWymusza posterior bliski priorowi

KL(q_φ(z|x) ∥ p(z)) — analitycznie liczone dla Gaussa. Reguliryzacja zapobiegająca degeneracji do zwykłego autoenkodera.

Prior p(z)Definicja przestrzeni latentnej do próbkowania

Klasycznie 𝒩(0,I). Hierarchical VAE używa wielopoziomowych priorów; VQ-VAE używa kategorycznego priora uczonego osobno (PixelCNN, Transformer).

Implementacja

Pułapki implementacyjne
Posterior collapseKrytyczna

Posterior q_φ(z|x) zapada się do priora p(z), decoder ignoruje z, model traci zdolność reprezentacji.

Rozwiązanie:KL annealing, free bits, β<1 na początku, mocniejszy encoder, autoregresyjny decoder z pełniejszą informacją.
Rozmyte rekonstrukcje (vanilla MSE)Wysoka

Loss MSE/BCE prowadzi do uśredniania → rozmyte obrazy.

Rozwiązanie:LPIPS + adversarial loss (jak w SD VAE), VQ-VAE z dyskretnymi kodami, hierarchiczne VAE.
Codebook collapse w VQ-VAEWysoka

Większość kodów w słowniku przestaje być używana — efektywny rozmiar słownika spada drastycznie.

Rozwiązanie:EMA codebook updates, restart martwych kodów, niskowymiarowy projection (jak w FSQ).
Niezgodność prior–aggregated posteriorŚrednia

Próbkowanie z p(z) generuje próbki z obszarów, których agregowany posterior unika → niska jakość.

Rozwiązanie:Uczyć prior osobno (PixelCNN nad kodami VQ), VampPrior, two-stage VAE.

Ewolucja

Oryginalny paper · 2014 · ICLR 2014 · Diederik P. Kingma
Auto-Encoding Variational Bayes
Diederik P. Kingma, Max Welling
2014
VAE — Auto-Encoding Variational Bayes
Punkt przełomowy

Kingma & Welling formalizują VAE z reparametryzacją; równolegle Rezende, Mohamed & Wierstra publikują „Stochastic Backpropagation".

2017
β-VAE — disentanglement

Higgins i in. wprowadzają β-VAE, kontrolując disentanglement reprezentacji przez wagę KL.

2017
VQ-VAE — dyskretne kody latentne
Punkt przełomowy

van den Oord i in. wprowadzają vector quantization w przestrzeni latentnej; fundament DALL·E 1, MUSE, Parti.

2019
VQ-VAE-2 — hierarchiczne kody

Razavi i in. uzyskują wysokorozdzielcze próbki przez hierarchię kodów.

2019
PlaNet / Dreamer — VAE-jak RSSM w RL

Hafner i in. używają wariacyjnej dynamiki latentnej do model-based RL z pikseli.

2021
NVAE / VDVAE — głęboki hierarchiczny VAE

Vahdat & Kautz oraz Child pokazują, że bardzo głębokie hierarchiczne VAE konkurują z dyfuzją w jakości.

2022
KL-VAE jako kompresor w Stable Diffusion
Punkt przełomowy

Rombach i in. używają KL-VAE z LPIPS + adversarial loss jako pierwszego stopnia LDM.

2024
SD3 — 16-kanałowy KL-VAE

Stability AI rozszerza VAE z 4 na 16 kanałów dla znacząco lepszej rekonstrukcji w SD3.

Hiperparametry (konfigurowalne osie)

Latent dimensionality d_zKrytyczna

Rozmiar przestrzeni latentnej. Za mała → utrata informacji; za duża → trudność próbkowania.

KL weight βWysoka

Współczynnik wagi KL w β-VAE. β>1 → silniejszy disentanglement, β<1 → lepsza rekonstrukcja.

KL annealing scheduleWysoka

Stopniowe podnoszenie wagi KL przeciw posterior collapse, szczególnie w sekwencyjnych VAE.

Free bitsŚrednia

Próg poniżej którego KL nie jest karany, zapobiega zapadaniu się posterioru.

Latent distributionKrytyczna

Gauss diagonalny / Gauss z pełną kowariancją / VQ (kategoryczny) / hierarchiczny.

Reconstruction lossWysoka

MSE / BCE / LPIPS + adversarial (jak w SD VAE) — silnie wpływa na jakość percepcyjną.

Paradygmat wykonania

Tryb główny
Gęsty

Cały encoder i decoder są aktywne w każdym kroku.

Wzorzec aktywacji
Wszystkie ścieżki aktywne

Równoległość

Poziom równoległości
W pełni równoległy

Encoder, decoder i obliczenia ELBO są w pełni równoległe w batchu. Brak rekurencji w czasie (poza wariantami sekwencyjnymi jak RSSM).

Zakres
TreningInferencja

Wymagania sprzętowe

Podstawowe

Encoder i decoder to w większości CNN/Transformer — idealnie pasują do tensor cores. KL i ELBO to tania arytmetyka tensorowa.

Dobry fit

Treningi VAE w JAX/TPU są dobrze wspierane (Diffusers, Flax).