Pipeline LDM ma dwa odrębne etapy treningu i jeden etap inferencji. Trening etap 1: autoenkoder (encoder E + decoder D) jest trenowany na danych obrazowych z funkcją kosztu łączącą rekonstrukcję perceptualną (LPIPS), regularyzację (KL lub VQ) i kontradyktoryjny dyskryminator. Po tym etapie waga jest zamrożona. Trening etap 2: dla obrazu x liczone są latenty z = E(x). Proces forward dyfuzji dodaje gaussowski szum: z_t = √(α̅_t)·z + √(1-α̅_t)·ε. U-Net ε_θ(z_t, t, c) uczy się przewidywać szum ε warunkując na embeddingu c (tekst przez cross-attention). Inferencja: startujemy z czystego szumu z_T ~ 𝒩(0,I) i iteracyjnie odszumiamy schedulerem (DDIM, DPM-Solver, Euler) w 20-50 krokach, otrzymując ẑ_0. Końcowy obraz x̂ = D(ẑ_0). Klasyfikatorless guidance (CFG) wzmacnia warunkowanie: ε̃ = ε(z,∅) + w·(ε(z,c) − ε(z,∅)).
Klasyczne modele dyfuzyjne w przestrzeni pikseli (DDPM, ADM) wymagają ogromnych zasobów obliczeniowych i pamięci, ponieważ U-Net musi operować na tensorach o rozdzielczości obrazu w setkach kroków odszumiania. Trenowanie SoTA pixel-space diffusion na 256×256 wymaga setek dni GPU. LDM redukuje to o rząd wielkości, prowadząc dyfuzję w 4×-16× zmniejszonej przestrzeni latentnej, co umożliwia generację 512-1024 px na pojedynczym GPU klasy konsumenckiej.
Encoder E: x → z i decoder D: z → x. Trenowane z LPIPS + KL/VQ + adversarial discriminator. W SD 1.x faktor downsamplingu 8× (latent 64×64×4 dla obrazu 512×512).
Oficjalna
U-Net z residualnymi blokami i warstwami self-attention oraz cross-attention. Wejście: zaszumiony latent z_t i krok t (sinusoidalna embedda). Wyjście: estymowany szum ε.
Oficjalna
Encoder zewnętrzny (CLIP text encoder, T5, OpenCLIP) zwracający wektory tokenowe podawane do U-Net przez cross-attention.
Q z aktywacji U-Net, K/V z embeddingu warunku c. Realizuje warunkowanie tekstowe i multimodalne.
Klasyczne: linear, cosine, scaled-linear. Sampler inferencyjny: DDIM, DDPM, DPM-Solver, Euler, Heun, UniPC.
Autoenkoder tworzy bottleneck — wszystko, czego nie da się zrekonstruować z latentu, jest tracone niezależnie od jakości U-Net.
Standardowe schedule (linear) nie osiągają pełnego szumu w T, co powoduje że model generuje obrazy o stłumionym kontraście.
Zbyt silne classifier-free guidance powoduje przesycenie, posteryzację i dziwne tekstury.
Model trenowany na np. 512×512 generuje powtarzające się obiekty przy 1024×1024 (issue „double heads").
Ho i in. wprowadzają Denoising Diffusion Probabilistic Models w przestrzeni pikseli.
Ho & Salimans wprowadzają CFG, kluczowy mechanizm warunkowania w późniejszym LDM.
Pierwszy preprint Rombacha i in. wprowadza koncepcję dyfuzji w przestrzeni latentnej autoenkodera.
Stability AI / RunwayML wydają SD 1.4/1.5 oparte na LDM, demokratyzując generację obrazów z tekstu.
Większy U-Net (2.6B), dwa text encodery, dwustopniowy refinement; 1024 px natywnie.
Rozszerzenie LDM na sekwencje wideo z czasowymi blokami uwagi.
SD3 zastępuje U-Net architekturą MMDiT i przechodzi z DDPM na rectified flow matching.
Chi i in. pokazują, że LDM-jak architektura skutecznie modeluje rozkład akcji w manipulacji robotycznej.
Stosunek rozdzielczości obrazu do latentu (typowo 4, 8, 16). f=8 to standard SD 1.x.
Liczba kanałów latentu (4 w SD 1.x/2.x, 16 w SD3 dla lepszej rekonstrukcji).
Długość forward chain (zwykle 1000 w treningu, 20-50 w inferencji z DDIM/DPM-Solver).
Linear, cosine, scaled-linear, zero-SNR — silnie wpływa na jakość i kontrast.
Siła classifier-free guidance (typowo 5-12 dla obrazu, 1-3 dla wideo).
Co przewiduje sieć: szum ε, oryginał x₀, lub v-prediction (lepsza dla wideo i SD2).
Cała sieć U-Net (lub DiT) jest aktywna w każdym kroku odszumiania.
Trening jest w pełni równoległy w batchu. Inferencja wymaga sekwencyjnych kroków odszumiania (20-1000), ale każdy krok jest gęstym forward passem U-Net wykorzystującym pełną paralelizację GPU.
Dyfuzja w przestrzeni latentnej i operacje konwolucyjne/attention U-Net są idealnie dopasowane do tensor cores. SD 1.5 zmieści się w 4 GB VRAM, SDXL w 8-12 GB.
Treningi i inferencja w JAX/TPU są dobrze wspierane (np. Diffusers ma backend Flax).
Możliwa ekstremalnie wolna inferencja (kilka minut na obraz) z optymalizacjami AVX/MKL.