https://arxiv.org/abs/2112.10752
Abstract
- Diffusion Models(DMs)
- Image Formation을 denoising autoencoders로 분해하여 이미지를 합성하는 Diffusion models(DMs)은 synthesis results에서 SOTA를 달성하였다. 추가적으로 retraining 없이 image generation process를 their formulation으로 제어가 가능하다.
- DMs 단점
- 일반적으로 Pixel space를 직접적으로 denoising하여 최적화하는데 수백 개의 GPU가 소모되며 Inference에 많은 비용이 든다.
- quality와 flexibility는 유지하면서 limited computational resources에서 DMs 학습이 가능하도록 우리는 이것을 powerful pretrained autoencoders의 latent space에 적용시킨다. (them 이것..? -> cross-attention layers )
- Previous work하고는 다르게 complexity reduction, detail preservation 사이의 optimal point에 도달할 수 있으며 visual fidelity을 높일 수 있다.
- cross-attention layers 를 통해 powerful and flexible generators를 구현하였다. Input으로 conditioning inputs을 사용하며 고화질의 이미지를 합성한다.
- 우리의 LDMs는 image inpainting, class-conditional image synthesis, text-to-image synthesis, unconditional image generation and super-resolution에서 SOTA를 달성하였고 Pixel-based DMs보다 적은 계산 요구사항을 가지면서 매우 경쟁력 있는 성능을 제공한다.
Introduction
- Image synthesis는 최근 가장 극적인 발전을 보여준 vision 분야 중 하나이지만 동시에 계산 수요가 가장 많은 분야이기도 하다. 특히 복잡하고 자연스러운 scenes의 합성은 likelihood-based models을 확장한 autoregressive(AR) transformers에서 이루어지고 있다.
- 반대로 GAN은 modeling complex, multi-modal distributions으로 쉽게 확장되지 않고 비교적 제한된 데이터에 국한되어 생성함이 밝혀졌다.
- 최근 DMs은 Encoder의 계층구조를 가지고 있고 이는 image synthesis에서 보다 인상적인 결과를 보여준다. 그리고 Class conditional image synthesis에서 SOTA를 달성하였으며 DM은 inpainting, colorization, stroke-based synthesis과 같은 작업에 쉽게 적용할 수 있고 이는 다른 Generative models과 다른 점이다.
- DMs은 likelihood-based models(확률 기반 모델)이기 때문에 GAN과 같이 model collapse와 instability 문제가 발생하지 않고 parameter sharing를 적극적으로 사용하여 AR model과 달리 수십억 개의 parameters를 사용하지 않고도 매우 복잡한 분포를 모델링할 수 있다.
Democratizing High-Resolution Image Syhtyesis
고해상도 이미지 합성의 일반화
- DMs는 확률 기반 모델에 속하며 mode-covering 동작(GANs의 학습과정)은 감지할 수 없는 세부사항을 모델링하는데 과도항 용량을 소비하기 쉽다.
- reweighted variational objective(변형 모델 기법)는 denoising steps을 undersampling을 통해서 이 문제를 해결하고자 했지만 모델을 훈련 및 평가하기 위해서는 RGB 고차원의 고간에서 반복적인 계산(학습)이 필요하기 때문에 여전히 계산량이 많다(High-computations).
- -> Most powerful DMs 훈련시 수백일 정도가 걸리고 evaluation과 Inference의 cost도 높다. 50만 개의 샘플을 생성하는데 5일 정도 걸린다(A100 GPU 기준).
- 위의 단점 (시간이 오래듦)은 research community와 users에게 2가지 결과를 초래한다.
- DMs을 학습하려면 해당 field의 부분만 사용가능한 massive computational resources가 필요하며 막대한 carbon footprint를 남긴다.(carbon footprint: 탄소 발자국, 사람의 활동이나 상품으로 생산, 소비하는 전 과정을 통해 직 간접적으로 배출되는 온실가스 배출량을 이산화탄소로 환산한 총량)
- already trained model을 평가하는 것은 같은 모델 구조가 많은 step에서 순차적으로 실행되야하기 때문에 시간과 메모리 비용이 많이 든다.
- 모델 접근성과 resource 소비를 줄이려면 training과 sampling에서 발생하는 computational complexity를 줄이는 방법이 필요하다. 즉 DMs의 성능은 손상시키지 않으면서 접근성을 높이는 것이 핵심이다.
Departure to Latent Space
perceptual and semantic compression(지각적 의미적 압축)
digital image의 bits는 대부분 인지할 수 없는 detail에 속한다. DMs을 사용하면 responsible loss를 최소화하면서 의미적으로 무의미한 정보를 억제할 수 있지만 pixel inference 단계에서 불필요한 cost가 발생한다.
GAN과 Autoencoder는 Bit Rate가 큰 Perceptual한 부분을 학습하는데 노력하며 Diffusion Model은 Bit Rate가 작은 Non Perceptual한 부분을 학습하는데 노력한다. Non Perceptual한 부분은 사람의 눈에는 그다지 중요하지 않아 이러한 부분을 개선해야한다.
(Bit Rate: 작아질수록 사람의 눈에 인지가 안됨, 말 그대로 bit 단위로 보는 것)
우리의 접근법은 pixel space에서 이미 훈련된 DMs을 분석하는 것으로 시작한다. 위의 사진은 훈련된 모델의 rate - distortion(속도 - 왜곡)의 trade-off 이미지이다.
- likelihood-based model은 학습을 그게 2 stage로 나눌 수 있음
- perceptual compression: high-frequency details(급격한 변화가 있는 details)을 제거하지만 거의 학습하지 않는 단계
- Semantic compression : generative model이 데이터에 대한 semantic and conceptual composition을 학습하는 단계
따라서 perceptually equivalent을 찾으면서 계산에 적합한 공간을 찾아 high-resolution image를 합성하는 것이 목표이다.
- Common practice에 따라서 우리는 training을 2단계로 구분한다.
- autoencoder를 학습하여 lower-dimensional representational space을 훈련한다.(perceptually equivalent 탐색) 중요한 것은 이전 연구와 다르게 excessive spatial compression(과도한 공간 압축-cost를 줄이기 위해서?)에 의존할 필요가 없다는 점이다. autoencoder 훈련을 통해 복잡도가 감소하여 이미지를 효율적으로 생성할 수 있다. 이를 Latent Diffusion Models (LDMs)라고 부른다.
- 2단계로 구분했다.라고 했으나 보이지 2단계가 보이지 않는다..
- 위의 접근법에서 주목할 만한 장점은 universal(범용) autoencoding stage는 한 번만 훈련시키고 여러 DMs에 재사용하거나 완전히 다른 작업을 수행할 수 있다는 것이다. 이를 통해 효율적으로 많은 diffusion models를 수행할 수 있다. text-to-image의 경우 transformers를 DMs's UNet backbone에 연결하여 사용한다.
In Sum
우리의 연구는 다음과 같은 기여를 한다.
- purely transformer-based approaches와 다르게 우리의 방법은 더 유연하게 확장할 수 있으므로 (a) 이전 작업(fig.1) 보다 더 충실하고 상세한 reconstructions을 제공하는 compression level에서 작업할 수 있다.
- 여러 작업(unconditional image synthesis, inpainting, stochastic super-resolution) 및 여러 데이터 세트에서 경쟁력 있는 성능을 달성했고 computational costs를 상당히 낮췄다. pixel-based diffusion approaches과 비교하였을 때 inference costs도 크게 절감했다.
- Encoder, Decoder와 score-based을 동시에 학습시키는 이전 연구와 달리 우리의 접근법은 섬세한 가중치 부여와 생성 능력을 부여할 필요가 없음을 보여준다. 이것은 faithful reconstructions을 보장하고 latent space의 정규화가 거의 필요 없다.
- super-resolution, inpainting and semantic synthesis와 같은 densely conditioned tasks에서 우리 모델은 convolutional fashion 방식을 적용했고 1024의 큰 pixel image를 렌더링 할 수 있음을 확인했다.
- 우리는 cross-attention을 기반으로 한 general-purpose conditioning mechanism을 설계하여 multi-modal training이 가능하게 설계했다.
- 모델 github 공개, DMs 훈련 외에도 다양한 작업에 재사용 가능하다.
Related Work
Method
- high-resolution image 합성을 위한 computational demands를 낮추기 위해 diffusion models는 perceptually irrelevan을 무시하는 undersampling을 사용하였지만 여전히 demands computation이 상당하다.
- 우리는 생성 단계에서 compressive의 명시적 분리를 통해 위의 단점을 피할 것을 제안한다(fig 2 참고). 이를 달성하기 위해 Autoencoder 모델을 사용한다. -> perceptually equivalen을 학습하지만 복잡성이 작은 모델이기 때문
- 이러한 접근 방법은 아래의 장점을 가진다.
- high-dimensional image space에서 벗어나 low-dimensional image space에서 학습하기 때문에 계산 측면으로 효율적이다.
- 우리는 U-Net을 상속한 DMs은 spatial structure data에 특히 효과적이다. 이전 방식의 적극적인 품질 저하를 완화한다. (spatial structure: 공간에서의 위치를 제공하는 data -> 여기서는 이미지를 뜻하는 것 같음)
- CLIP과 같은 단일 이미지 합성과 같은 downstream에도 이용할 수 있는 general-purpose compression models을 얻을 수 있다
Perceptual Image Compression
우리의 perceptual compression model은 이전 연구를 기반으로 하며 autoencode로 구성된다. autoencoder는 perceptual loss와 a patch-based adversarial objective(적대적 목표)의 조합으로 훈련 됐다. local realism을 강화해 reconstrutions이 image manifold에 국한되도록 하고 L2, L1 loss와 같은 pixel space에 의존하게 하여 bluriness를 방지할 수 있다.
- Image: \( x \in \mathbb{R}^{H\times W\times 3} \)
- Encoder: \( \varepsilon \)
- z: \( \varepsilon (x) \) , \( z \in \mathbb{R}^{h\times w\times c} \)
- decoder: \( \mathit{D} \)
- generative image = \( \tilde{x} = \mathit{D}(z)= \mathit{D}(\varepsilon(x)) \)
downsampling 할 때 f = \( H/h=W/w \)으로 진행하였고 다양한 계수 f를 조사함(적절한 f값을 찾는 것을 연구함)
arbitrarily high-variance을 피하기 위해 2종류의 regularizations을 실시한다.
- KL-reg: VAE와 비슷하게 Standard normal learned latent에 KL-penalty를 부여한다.
- VQ-reg: decoder에 vector quantization layer를 사용하여 vector quantization layer가 decoder 내부에 위하는 VQGAN의 형태를 가진다.
- 이는 임의의 1D에 의존하여 z의 고유한 구조를 무시한 이전연구과 대조적이며 우리의 compression model은 x의 세부 사항을 더 잘 보존한다.
- (기존의 standard normal에서 sampling 하는 것보다는 autoencoder를 사용하는 것이 x의 세부 사항을 더 잘 보존한다고 말하는 거 같음)
Latent Diffusion models
- DMs은 Probabilistic 모델이며 denoising을 통해 P(x)의 분포를 학습한다. 이는 길이 T의 fixed Markov Chain의 역과정을 학습하는 것과 같다.
- 이전에 성능이 좋았던 모델에서 image synthesis을 하기 위해 variational lower bound의 reweighted 변형에 의존하였다. ( variational lower bound는 VAE에서 쓰는 최적화 방법이다.)
- 우리의 trained perceptual compression models은 \( \varepsilon \)와 \( \mathit{D} \) 로 구성되며 효율적으로 low-dimensional latent space에 접근할 수 있다. -> high-frequency, imperceptible datail이 추상화되었기 때문에 더 중요한 sematic bits에 집중할 수 있으며 저 차원 계산으로 인해 효율적인 연산 가능
- attention-based transformer models에 의존하전 이전 연구와 달리 우리의 모델은 image-specific inductive bias에 더욱 집중하는 기능을 포함한다. (inductive bias: 주어지지 않은 input의 output을 예측하는 것으로 일반화의 성능을 높이기 위한 추가적인 가정)
Conditioning Mechanisms
- 다른 generative model과 비슷하게 diffusion model은 원칙적으로 \( P(z|y) \) 형식의 conditional distributions을 모델링한다.
- 이는 conditional denoising autoencoder(our model에 추가한 autoencoder)로 구현할 수 있다( \( \epsilon_{\theta}(z_{t},t,y) \) ).
- y를 통해 synthesis process를 제어할 수 있다.
- image synthesis 측면에서 DMs의 생성 능력을 입력 이미지의 클래스 레이블이나 이미지를 흐릿하게 변형하는 것 이외의 다른 task의 conditional task와 결합하는 것은 탐구되지 않았다.
- 우리는 기존의 DMs에 UNet을 보강하여 보다 유연한 Conditional generator로 만든다.
- 다양한 종류의 y를 처리하기 위해 \( \tau_{\epsilon}(y) \)을 도입함 그다음 cross-attention layer를 통해 U-Net의 중간 layer에 매핑된다
Cross-attention layer
$$ Attention(Q,K,V) = softmax(\frac{QK^{T}}{\sqrt{d}})\cdot V $$
$$ Q=W_{Q}^{(i)} \cdot \pi_{i}(z_{t}), K=W_{K}^{(i)} \cdot \tau_{\theta}(y), V=W_{V}^{(i)} \cdot \tau _{\epsilon }(y) $$
\( \pi_{i} (z_{t})\in \mathbb{R}^{N \times d_{r}} \)은 \( \epsilon _{\theta} \)을 구현하는 U-Net의 중간 representation이다(denoising U-Net).
\( W_{V}^{(i)} \in \mathbb{R}^{d \times d^{i}_{\epsilon }}, W_{Q}^{(i)} \in \mathbb{R}^{d \times d^{i}_{\epsilon }}, W_{K}^{i} \in \mathbb{R}^{d \times d_{r}} \) 은 학습 가능한 projectopm matrix이다.
최종 Loss는 다음과 같다.
$$ L_{LDM} := \mathbb{E}_{\varepsilon (x),y,\epsilon ~ N(0,1),t}\left [ \left\| \epsilon - \epsilon _{\theta}(z_{t},t,\tau _{\theta} (y) ) \right\|^{2}_{2} \right ] $$
이 식을 통해 \( \tau _{\theta}, \epsilon _{\theta} \) 동시에 최적화한다. 각 domain별 기존 모델에 의해 \( \tau _{\theta} \) 가 parameter 화 될 수 있기 때문에 유연한 confitioning 메커니즘을 만들 수 있다.
Experiments
- LDMs는 우연하고 계산적으로 손쉽게 처리할 수 있는 수단을 제공한다.
- 먼저 training과 inference을 pixel-based diffusion models과 비교하여 우리 모델의 이점을 분석한다.
- 흥미롭게도 VQ-regularized latent space에서 학습된 LDM이 더 다은 샘플 품질을 생성한다.
- LDM 학습에 대한 정규화 체계의 효과와 \( 256^{2} \) 보다 큰 해상도에 대한 재구성 능력의 시각적 비교는 아래의 사진과 같다.
On Perceptual Compression Trade-offs
- 이 Section에서는 다양한 downsampling factor에 대한 LDMs의 행동을 분석한다.
- 위의 표는 이 Section에서 비교한 LDM에 사용된 first stage model의 hyper-parameter 재구성 성능을 보여준다.
- ImageNet dataset에서 200만 step으로 학습할 때 샘플에 대한 FID, IS이다.
- 작은 downsampling factor는 학습을 느리게 함(LDM-1, 2)
- 지나치게 큰 factor는 step 초기에 샘플 품질을 망가트린다(LDM-32)
- LDM-4 ~ LDM-16까지는 효율성과 perceptual 하게 충실한 결과 사이에서 적절한 균형을 이룬다.
- 위의 그래프는 CelebA와 ImageNet으로 학습한 LDM의 샘플링 속도와 FID를 비교한 결과이다.
- LDM-4~8을 pixel 기반 LDM-1과 비교하였을 때 훨씬 낮은 FID를 달성하며 sample 처리량은 크게 증가한다.
- ImageNet dataset과 같이 복잡한 dataset는 품질 저하를 피하기 위해 compression rates(압축률=f)을 낮춰야 한다.
- 즉 LDM -4 ~ 8이 최상의 성능을 보여줌
-> f가 작으면 autoencoder를 단 의미가 없음 diffusion이 perceptual compression을 실시함, f가 크면 강한 압축으로 인해 품질이 저하됨
Image Generation wirh Latent Diffusion
- Uncoditional LDM에서의 CelebA-HQ , FFHQ , LSUN-Churches, -Bedrooms dataset으로 학습한 결과
- 샘플의 품질, Precision, Recall 결과이다.
Conditional Latent Diffusion
Transformer Encoders for LDMs
LAION 데이터셋으로 학습한 LDM-8 (KL)으로 생성한 text-to-image 합성 샘플 (200 DDIM step으로 샘플링)
다음은 COCO 데이터셋으로 학습한 LDM으로 생성한 layout-to-image 합성 샘플
다음은 풍경 이미지 semantic synthesis를 위해 2562 크기로 학습한 LDM이 크기를 생성하도록 한 결과
- LDMs에 cross-attention를 도임함으로써 이전 확산 모델에서 탐지되지 않았던 다양한 Condtiioning task를 수행할 수 있도록 함
- BERT tokenizer(transformer)를 \( \tau _{\theta} \)를 transformer로 사용하고 UNet의 cross attention을 통해 latent code를 추론함
Super-Resolution with Latent Diffusion
ImageNet-val, LDM-SR의 64 -> 256 Super-resolution 샘플이다.
Inpainting with Latent Diffusion
object removal 결과
Limitations
- LDMs는 pixel-based approaches에 비해서 computational requirements를 상당히 줄여주비만 GANs에 비해서는 여전히 느리다
- 또한 High precision이 필요한 경우 LDM의 사용이 최선이 아닐 수 있다.
- f=4에서 이미지 품실 손실이 매우 작지만, High precision을 원할 경우 reconstruction에서 bottleneck 현상이 생길 수 있음
- super-resolution과정에서 어느 정도 제한이 있다고 생각함
Conclusion
- 품질 저하 없이 denoising diffusion models 제시
- 광범위한 task에서 좋은 결과를 얻음
참고
https://ffighting.net/deep-learning-paper-review/diffusion-model/stable-diffusion/