본문 바로가기

논문 리뷰/GAN

StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-Image Synthesis

StyleGAN으로 text-to-image 따라잡기.

하지만 아직 갈 길이 멀다...

 

Project Page

 

stylegan-t

StyleGAN-T: Unlocking the Power of GANs for Fast Large-Scale Text-to-Image Synthesis Axel Sauer Tero Karras Samuli Laine Andreas Geiger Timo Aila [PDF] [Code]

sites.google.com

 

 

 

Abstract

Text-to-image를 위한 새로운 GAN 모델인 StyleGAN-T.

 

 

 

Introduction

GAN의 주요 이점은 합성 결과의 제어 가능성과 확산 모델에 비하면 매우 빠른 추론 속도.

 

StyleGAN-XL에서 시작하여 다양한 데이터셋, 제어 가능성의 trade-off, text-to-image, 제한된 비용으로 초해상도 등 요구사항을 고려하여 아키텍처를 다시 살펴본다.

 

 

 

StyleGAN-XL

StyleGAN3

Projected GAN

 

StyleGAN-XL

다중 판별기 D와 점진적으로 성장하는 G.

 

 

 

StyleGAN-T


재설계 전반에 걸쳐 제한된 비용, 소규모 모델을 사용한 경량 훈련 구성으로 zero-shot MS COCO를 사용하여 변경의 효과를 측정.

 

텍스트 조건화를 위해 StyleGAN-XL의 분류기 지침을 제거하고 CLIP ViT-L/14 사용. 

 

Redesigning the Generator

 

StyleGAN-XL에서는 equivariance를 위해 StyleGAN3을 백본으로 사용하는데, DM/ARM 등 성공한 text-to-image 모델에서는 equivariance를 고려하지 않기 때문에 StyleGAN3에서 제거된 skip connection, noise input을 다시 추가하는 등 StyleGAN2 아키텍처로 일부 롤백.


Residual convolutions

모드 붕괴를 피하기 위해 컨볼루션 레이어의 절반을 잔차로 만들고 GroupNorm, Layer scale 추가.

 

매우 낮은 Layer scale의 초기값(10-5)은 초기 훈련을 크게 안정화해 레이어 수를 크게 늘릴 수 있음.


Stronger conditioning

입력 잠재 z가 ctext를 지배하는 경향을 관찰하고 이를 우회하기 위해 ctext를 매핑 네트워크의 출력 w에 그대로 더하고 affine 변환으로 스타일을 생성한다.

 

생성된 스타일을 그대로 사용하는 대신, 3개의 벡터로 나누어 다음과 같이 계산한다.


재설계한 G 적용 후 :


Redesigning the Discriminator

D를 처음부터 다시 설계하지만 사전 훈련된 feature 네트워크와 다중 판별기를 사용하는 StyleGAN-XL의 핵심 아이디어는 유지.


Feature network

Feature 네트워크는 self-supervised DINO objective로 훈련된 ViT-S.

자체 감독 네트워크는 잠재적으로 feature를 손상시킬 위험을 피할 수 있음.


Architecture

ViT는 등방성으로, 각 판별기들이 동일한 크기의 입력을 받고 동일한 아키텍처를 사용할 수 있게 한다.

 

여기서 특이한 점은, 토큰 시퀀스를 재구성하여 2D conv를 적용하는 것이 아니라, 토큰 시퀀스에 1D conv를 적용한다.

이는 2D conv 만큼이나 잘 작동하며, 판별기가 2D 구조에서 얻는 이익이 거의 없다는 것을 보여준다.

 

각 토큰에 대해 hinge loss를 계산.

 

BatchNorm은 노드와 GPU 간의 통신을 필요로 하기 때문에 다중 노드일 때 오버헤드가 생긴다.

따라서 local minibatch 별로 계산하는 변형을 적용.


Augmentation

Differentiable Augmentation for Data-Efficient GAN Training.

 

ViT-S의 해상도인 224x224 보다 큰 해상도에 대해서는 random crop.


재설계한 D 적용 후 :

학습 속도 또한 1.5배 빨라짐.


Variation vs. Text Alignment Tradeoffs

Guiding the generator

 

분류기 대신 CLIP 텍스트 인코더로 guiding.

생성된 이미지를 CLIP 이미지 인코더에 넣어서 나온 캡션과 ctext의 거리 최소화.

 

LCLIP의 가중치로 이미지 품질과 다양성을 trade-off한다.(논문에선 0.2)

또한 64x64 이하의 해상도에서만 도움이 된다는 관찰을 기반으로 그 이상의 해상도에 대해서는 crop하여 계산.

 


Guiding the text encoder

G와 D를 고정하고 CLIP 텍스트 인코더만 학습하는 보조 단계 도입.

판별기와 guidance의 loss term에서는 여전히 추가 학습되기 전의 사전 훈련 인코더에서 ctext를 받지만, 이 보조 학습 단계를 가지면 매우 높은 guidance 가중치에서도 인공 아티팩트가 생기지 않는다고 한다.


Explicit truncation(=truncation trick)

학습 중에 w의 평균인 f̃을 추적하고 추론에서 truncation 사용.


Overview of StyleGAN-T


 

 

Experiments

64x64에서 DM을 이겼긴 했지만 솔직히 의미 없고 GAN으로 DM의 품질을 넘어서기는 솔직히 불가능이 아닌가 싶음...