向量量化生成对抗网络 (VQ-GAN)

向量量化生成对抗网络(VQ-GAN)结合了 VQ-VAE 和 GAN 的优点,使用离散的潜在表示和对抗训练来提升生成质量。VQ-GAN 通过向量量化将连续特征映射到离散的码本,并利用判别器来优化重建质量。

架构

VQ-GAN 的主要组件包括:

  1. 编码器网络:将输入数据映射到连续特征空间
  2. 向量量化层:将连续特征映射到离散码本
  3. 解码器网络:从量化特征重建数据
  4. 判别器网络:评估重建质量
  5. 码本:包含可学习的离散表示

数学框架

向量量化过程

给定编码器输出 ( z_e(x) ),VQ-GAN 通过以下步骤进行量化:

[ z_q(x) = \text{VQ}(z_e(x)) = e_k, \quad k = \arg\min_j |z_e(x) - e_j|_2 ]

训练目标

VQ-GAN 的训练目标包括:

  1. 重建损失:确保解码器能够准确重建输入
  2. 对抗损失:通过判别器提升生成质量
  3. 感知损失:使用预训练网络提取特征进行监督

总损失函数为:

[ \mathcal{L}{\text{VQ-GAN}} = \mathcal{L}{\text{recon}} + \lambda_{\text{adv}}\mathcal{L}{\text{adv}} + \lambda{\text{perceptual}}\mathcal{L}_{\text{perceptual}} ]

变体

VQ-GAN-2

VQ-GAN-2 通过引入分层结构和多尺度判别器来增强生成能力。

VQ-GAN-3

VQ-GAN-3 进一步改进了码本设计和训练策略。

优势

  1. 高质量生成:结合了 VQ-VAE 的精确重建和 GAN 的逼真性
  2. 离散表示:更适合处理离散数据
  3. 多尺度处理:可以处理不同尺度的特征
  4. 可控生成:支持基于离散 token 的生成控制

局限性

  1. 计算开销:需要维护和更新码本
  2. 训练复杂度:需要平衡多个损失项
  3. 码本大小限制:需要预先设定合适的码本大小

应用

  1. 图像生成:高质量图像生成和编辑
  2. 视频生成:多帧视频生成
  3. 音频处理:高质量音频生成
  4. 文本生成:基于离散 token 的文本生成

参考文献

  1. Esser, P., et al. (2021). Taming transformers for high-resolution image synthesis.
  2. Yu, J., et al. (2022). Vector-quantized image modeling with improved VQGAN.
  3. Yu, J., et al. (2023). Scaling autoregressive models for content-rich text-to-image generation.