Robocikowo>ROBOCIKOWO
Architektura

GAN

2014AktywnyOpublikowano: 8 czerwca 2026Aktualizacja: 8 czerwca 2026Opublikowany
Model generatywny złożony z generatora i dyskryminatora trenowanych przeciwstawnie w grze minimax; generator uczy się tworzyć próbki nieodróżnialne od rzeczywistych.
Kluczowa innowacja
Trenowanie modelu generatywnego przez grę minimax dwóch sieci — generatora i dyskryminatora — zamiast jawnej maksymalizacji wiarygodności, co umożliwia ostre, realistyczne próbki bez modelowania jawnej gęstości.
Kategoria
Architektura
Poziom abstrakcji
Wzorzec
Poziom operacji
Element architekturyModelTrening
Zastosowania
Fotorealistyczna generacja twarzy i obrazów (StyleGAN, BigGAN)Super-resolution (SRGAN, ESRGAN, Real-ESRGAN)Image-to-image translation (Pix2Pix, CycleGAN)Vocodery audio i synteza mowy (HiFi-GAN, MelGAN)Augmentacja danych i generacja syntetycznych zbiorówKomponent strat percepcyjnych (adversarial loss w VAE/autoenkoderach SD)Generacja w czasie rzeczywistym i low-latencyInpainting i edycja obrazów

Jak działa

Generator G(z;θ_G) przekształca wektor szumu z (zwykle 𝒩(0,I) lub U(−1,1)) w próbkę. Dyskryminator D(x;θ_D) zwraca prawdopodobieństwo, że x jest prawdziwe. Trening naprzemienny: (1) krok D — maksymalizacja log D(x) + log(1 − D(G(z))) na minibatchu prawdziwych i fałszywych próbek (klasyfikacja binarna); (2) krok G — minimalizacja log(1 − D(G(z))) lub, w praktyce, maksymalizacja log D(G(z)) (non-saturating loss, lepsze gradienty). Gradient płynie przez D do G. Warianty zmieniają funkcję straty i regularyzację: WGAN (Wasserstein distance + weight clipping), WGAN-GP (gradient penalty), LSGAN (least squares), hinge loss, spectral normalization. Warianty architektoniczne: DCGAN (konwolucje), conditional GAN (warunek c na wejściu obu sieci), Pix2Pix/CycleGAN (image-to-image), StyleGAN (style-based generator z mappingiem latentu w), BigGAN (duża skala + self-attention). Trening jest delikatny — wymaga balansu mocy G i D.

Rozwiązany problem

Wcześniejsze modele generatywne (VAE) produkowały rozmyte próbki przez uśredniający charakter strat rekonstrukcji, a modele jawnej gęstości były obliczeniowo kosztowne. GAN omija modelowanie jawnej gęstości — uczy się rozkładu pośrednio przez sygnał z dyskryminatora — co prowadzi do ostrych, realistycznych próbek i szybkiego, jednoprzejściowego próbkowania.

Komponenty

GeneratorMapuje szum na próbki danych

Sieć przekształcająca wektor latentny z w próbkę G(z). Trenowana, by oszukać dyskryminator. W StyleGAN poprzedzona siecią mapującą z → w.

DiscriminatorOdróżnia próbki prawdziwe od wygenerowanych

Klasyfikator binarny (lub krytyk w WGAN zwracający skalar) dostarczający sygnał uczący generatorowi. Po treningu zwykle odrzucany.

Binary classifier (vanilla/DCGAN)Sigmoid + binary cross-entropy.
Critic (WGAN)Zwraca skalar aproksymujący odległość Wassersteina.
PatchGAN (Pix2Pix)Klasyfikuje lokalne patche zamiast całego obrazu.
Adversarial lossFunkcja gry minimax sterująca treningiem

Funkcja straty definiująca grę: vanilla (BCE), non-saturating, Wasserstein, least squares, hinge. Wybór silnie wpływa na stabilność.

Oficjalna

Latent space zŹródło stochastyczności generacji

Rozkład wejściowy (zwykle 𝒩(0,I)). W StyleGAN przekształcany w przestrzeń stylu W o lepszych właściwościach disentanglement.

Implementacja

Pułapki implementacyjne
Mode collapseKrytyczna

Generator produkuje ograniczoną różnorodność próbek (lub jedną), ignorując część rozkładu danych.

Rozwiązanie:WGAN-GP, minibatch discrimination, unrolled GAN, spectral norm, większy dyskryminator.
Niestabilność i oscylacje treninguWysoka

Gra minimax może nie zbiegać — straty oscylują, jakość się waha; balans mocy G/D jest delikatny.

Rozwiązanie:TTUR (różne learning rate), gradient penalty, spectral norm, EMA wag generatora, ostrożny tuning.
Zanikające gradienty (vanilla loss)Wysoka

Gdy dyskryminator jest zbyt dobry, gradient dla generatora zanika (log(1−D(G(z)))→0).

Rozwiązanie:Non-saturating loss (max log D(G(z))), Wasserstein loss.
Trudna ewaluacjaŚrednia

Brak jawnej wiarygodności utrudnia ocenę; metryki (FID, IS) są niedoskonałe i wrażliwe.

Rozwiązanie:FID + Precision/Recall, human eval, wiele seedów, raportowanie wariancji.

Ewolucja

Oryginalny paper · 2014 · NeurIPS 2014 · Ian J. Goodfellow
Generative Adversarial Nets
Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio
2014
GAN — wprowadzenie
Punkt przełomowy

Goodfellow i in. wprowadzają grę minimax dwóch sieci jako nowy paradygmat generatywny.

2015
DCGAN — stabilne konwolucyjne GAN

Radford i in. ustalają wzorce architektoniczne dające stabilny trening obrazowych GAN.

2017
WGAN / WGAN-GP — stabilizacja przez Wasserstein
Punkt przełomowy

Arjovsky i in. + Gulrajani i in. wprowadzają odległość Wassersteina i gradient penalty, łagodząc mode collapse.

2017
Pix2Pix / CycleGAN — image-to-image

Isola i in. + Zhu i in. umożliwiają translację obrazów (sparowaną i niesparowaną).

2018
Progressive GAN i BigGAN

Karras i in. (progresywny wzrost) i Brock i in. (duża skala + self-attention) osiągają wysokorozdzielcze, fotorealistyczne próbki.

2019
StyleGAN / StyleGAN2 — style-based generator
Punkt przełomowy

Karras i in. wprowadzają przestrzeń stylu W i kontrolę cech, ustanawiając SoTA w generacji twarzy.

2021
Diffusion Models Beat GANs — zmiana prymatu
Punkt przełomowy

Dhariwal & Nichol pokazują, że modele dyfuzyjne przewyższają GAN-y jakością i różnorodnością, kończąc erę dominacji GAN.

2023
GAN-y w roli wspomagającej i low-latency

Adversarial loss pozostaje komponentem VAE w dyfuzji; GAN-y dominują w vocoderach audio i jednoprzejściowej super-resolution oraz w distillacji dyfuzji (np. adversarial distillation).

Hiperparametry (konfigurowalne osie)

Adversarial loss typeKrytyczna

Vanilla/non-saturating / Wasserstein / LSGAN / hinge — krytyczne dla stabilności.

Latent dimensionWysoka

Wymiar wektora szumu z (typowo 100-512).

D:G update ratioWysoka

Liczba kroków dyskryminatora na krok generatora (WGAN-GP używa 5:1).

RegularizationWysoka

Spectral norm, gradient penalty, R1, weight clipping — stabilizują trening.

Architecture familyKrytyczna

DCGAN / StyleGAN / BigGAN / Pix2Pix / CycleGAN — determinuje zdolności i koszt.

Paradygmat wykonania

Tryb główny
Gęsty

Generator i dyskryminator są w pełni aktywne; po treningu inferencja używa tylko generatora (jeden forward pass).

Wzorzec aktywacji
Wszystkie ścieżki aktywne

Równoległość

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

Inferencja to pojedynczy forward pass generatora — w pełni równoległy i szybki (bez iteracyjnego odszumiania jak w dyfuzji). Trening równoległy w batchu, ale naprzemienne kroki G/D wprowadzają zależność sekwencyjną między aktualizacjami.

Zakres
TreningInferencja

Wymagania sprzętowe

Podstawowe

Konwolucyjne G i D są idealne dla tensor cores. StyleGAN/BigGAN trenowane na klastrach GPU; inferencja generatora to szybki pojedynczy forward pass.

Dobry fit

BigGAN trenowany na TPU; konwolucje i attention dobrze się mapują.