VQ-VAE (Vector Quantized VAE)

Wprowadzenie

VQ-VAE (Vector Quantized Variational Autoencoder) to architektura zaproponowana w 2017 roku przez zespół DeepMind. Jest to jeden z najważniejszych kroków w rozwoju generatywnych modeli z dyskretną przestrzenią latentną. Łączy zalety wariacyjnych autoenkoderów (VAE) z mechanizmem kwantyzacji wektorowej.

Jak działa VQ-VAE?

Podstawową innowacją jest wprowadzenie Codebooku – skończonego słownika wektorów dyskretnych. Encoder produkuje ciągłe embeddingi, które są następnie zastępowane najbliższym wektorem z codebooku (operacja nearest neighbor). Decoder rekonstruuje dane na podstawie tych zdyskretyzowanych kodów.

Kluczowe elementy architektury

  • Encoder – mapuje dane wejściowe na ciągłą reprezentację
  • Vector Quantization (VQ) – zastępuje wektor ciągły najbliższym wektorem z codebooku
  • Codebook – zbiór wektorów prototypowych (zwykle 512–4096 wektorów)
  • Decoder – rekonstruuje dane z dyskretnych kodów
  • Commitment Loss + Codebook Loss – specjalne funkcje straty stabilizujące trening

Zalety VQ-VAE

  • Uczy dyskretnych, strukturalnych reprezentacji latentnych
  • Lepsza jakość rekonstrukcji niż klasyczne VAE
  • Łatwo łączy się z modelami autoregresywnymi (PixelCNN, Transformer)
  • Podstawa dla wielu przełomowych modeli (VQGAN, DALL·E 1, SoundStream, VQ-VAE-2)

Ewolucja architektury

  • VQGAN – dodanie adversarial loss (znacznie lepsza ostrość obrazów)
  • VQ-VAE-2 – hierarchiczna wersja do generowania wysokiej rozdzielczości
  • SoundStream / EnCodec – aplikacja w kompresji audio
  • Video VQ-VAE – modele generowania wideo

Powiązane pojęcia

Vector Quantization • Variational Autoencoder (VAE) • VQGAN • Discrete Latent Representations • Codebook Learning • Generative Models • DALL·E • World Models