CVPR 22 | High-Resolution Image Synthesis with Latent Diffusion Models
论文链接:https://doi.org/10.1109/CVPR52688.2022.01042
代码链接:https://github.com/CompVis/latent-diffusion
作者单位:慕尼黑大学
背景
先前的 Diffusion 模型在像素空间训练,计算成本高
基于似然的模型训练通常包含感知压缩(去除高频细节)和语义压缩(模型学习语义和概念)两个阶段
于是设计两阶段训练:自编码器提供感知等价的低维表示空间、在低维潜空间中训练 Diffusion 模型
方法

感知图像压缩
感知图像压缩:自编码器通过感知损失和基于 patch 的对抗损失共同训练,压缩和恢复过程可表示为:
其中 $x\in\mathbb{R}^{H \times W \times C}, z\in\mathbb{R}^{h \times w \times c}$,下采样比例为 $f=H/h=W/w=2^m,m\in\mathbb{N}$
为了避免潜空间方差过高,施加趋向高斯分布的 KL 正则化,类似 VAE;或在解码器中加入一个矢量量化层,类似 VQGAN
选择 KL 正则化后需要对得到的潜空间 $z$ 进行缩放,即 $z=z/\hat{\sigma}$,实际应用中常取 $1/\hat{\sigma}=0.18215$
目标函数
原始 Diffusion 模型目标函数:
本文提出的 Latent Diffusion 模型目标函数:
条件化
使用交叉注意力注入条件:
其中,$\varphi_i(z_t)\in\mathbb{R}^{N \times d_\epsilon^i}, \tau_\theta(y)\in\mathbb{R}^{M \times d_\tau}$,可学习权重 $W_Q^{(i)}\in\mathbb{R}^{d \times d_\tau}, W_K^{(i)}\in\mathbb{R}^{d \times d_\tau}, W_V^{(i)}\in\mathbb{R}^{d \times d_\epsilon^i}$
带条件的 Latent Diffusion 模型目标函数:
文本作条件时使用 BERT-tokenizer,使用 Transformer 实现条件编码器 $\tau_\theta$
CFG 能够显著提高生成质量并减少参数
具体实现
无条件模型超参数

有条件模型超参数
