Generative AI(4): image

SeongGyun Hong·2024년 12월 5일

NaverBoostCamp

목록 보기
38/64

1. GAN

  • Generative Adversarial Networks
    • 판별자와 생성자를 적대적으로 학습하는 모델 구조
    • 판별자란, 입력 이미지가 생성된 이미지인지 진짜 이미지인지 판별
      • 데이터의 생성 여부를 잘 판단하도록 학습 -> maximization
    • 생성자란, 잠재변수 z를 입력으로 받아 학습 데이터의 분포에 가까운 이미지를 생성
      • 생성자 G는 판별자가 생성 여부를 판단하지 못하도록 학습 -> minimization
  • Conditional Generative Adversarial Networks
    • GAN 학습 조건을 주입하여 학습하는 구조
    • 주어진 조건에 따라 이미지 생성이 가능하도록 함.
  • Pix2Pix
    • 이미지를 조건으로 이미지를 변환하는 방법
    • 학습을 위해 서로 매칭되는 paired image가 필요함
    • Conditional GAN 구조를 따르며 조건으로 이미지가 반영됨
  • CycleGAN
    • CycleGAN에서는 unpaired images로 학습하기 위해 cycle consistency loss를 제안함
    • 왜냐하면 기존 Pix2Pix 방식은 paired images가 필요했으나 이미지 확보가 어려웠기 때문
  • StarGAN
    • 여러 도메인을 생성 모델에 반영하기 위해 많은 도메인 별 생성 모델이 필요하고 학습 효율성이 떨어짐
    • 이를 개선하기 위해 단일 생성 모델만으로 여러 도메인을 반영할 수 있는 구조를 제안함
    • CycleGAN에서 제안됨 cycle consistency loss와 domain classification을 활용하여 여러 도메인을 반영할 수 있는 모델 구조
  • ProgressiveGAN
    • 고해상도 이미지 생성 모델을 학습하기 위해서는 많은 비용이 발생함.
    • 고해상도 이미지를 생성하기 위해 저해상도 이미지 생성 구조부터 단계적으로 증강하는 모델 구조를 제안하여 적은 비용으로 빠른 수렴이 가능한 모델 구조를 제안함
    • 16x16 이미지 해상도에서 32x32 이미지 해상도로 변화하는 모델 구조
    • 이미지 해상도를 키우는 과정에서 작은 해상도의 이미지와 큰 해상도의 이미지의 결과를 weighted sum으로 계산하여 사용
  • StyleGAN
    • ProgressiveGAN 구조에서 style을 주입하는 방법을 제안
    • 잠재공강 z를 바로 사용하지 않고 mapping network f 를 사용하여 변환된 w 를 입력으로 사용
    • 잠재공간 z 는 일반적으로 가우시안 분포를 가정하여 데이터의 분포가 복잡하게 얽힌 형태로 구성됨
    • 학습 데이터의 분포가 선형적으로 구성되어 있다면 가우시안 분포를 가정한 잠재 공간은 데이터의 분포를 제대로 반영하지 못하는 문제가 있음
    • StyleGAN에서는 mapping function f 를 사용하여 데이터의 분포에 맞춰 얽힘이 풀리도록 구성하는 것을 목표로 함
    • 선형적으로 구성된 w 에서는 데이터 특징에 따라 원하는 방향으로 interpolation 하는 것이 더 용이함

2. AE: AutoEncoder

Encoder와 Decoder로 구성되어 입력 이미지를 다시 복원하도록 학습하는 모델 구조

  • Encdoer
    입력 이미지를 저차원 잠재공간으로 매핑하여 잠재 변수 z로 변환
  • Decoder
    잠재 변수를 입력으로 사용하여 원본 이미지를 복원
  • 모델학습 목적 함수로는 reconstruction loss를 사용함
  • 일반적으로 MSE 또는 MAE를 활용

2.1 VAE: Variational Autoencoder

Autoencoder와 동일하게 Encoder와 Decoder로 구성되어 있지만 잠재 공간의 분포를 가정하여 학습하는 구조

2.2 VQ-VAE: Vector Quantized-Variational Autoencdoer

  • VQ-VAE는 연속적인 잠재 공간이 아닌 이산적인 잠재 공간을 가정하여 학습에 사용함
  • 이산적인 잠재공간은 이미지 뿐만 아니라, 텍스트, 음성과 같은 데이터에 더 적합함.
  • 잠재공간은 사전에 정의한 K개의 embedding으로 정의됨
  • 모델 학습을 위한 목적함수로는 reconstruction loss에 추가로 e와 encoder를 stop-gradient를 통해 따로 계산

3. Diffusion Models

3.1 Denoising Diffusion Probabilistic Models

입력 이미지를 forward process를 통해 잠재공간으로 변환하고 reverse process로 복원하는 구조

  • Forward process
    점진적으로 가우시안 노이즈를 추가하여 잠재공간으로 매핑하는 과정
  • Reverse Prcoess
    forward process에서 추가된 노이즈를 추정하여 제거하는 과정

3.2 DDIM: Denoising Diffusion Implicit Models

  • DDPM에서의 process는 많은 step 수로 인하여 이미지 생성을 위한 시간이 많이 소요됨
  • DDPM에서 추정 방식의 변화
    • DDIM은 stochastic sampling process를 deterministic sampling process로 정의함
    • 따라서, 생성 과정에서 모든 step을 거치는 것이 아닌 일부만 reverse process를 적용할 수 있게 됨
    • Non-Markovian diffusion process를 적용하여 전체 process의 subst 만으로 좋은 성능을 보임

3.3 Classifier Guidance

  • Diffusion Models Beat GANs on Image Sysnthesis 에서는 GAN 보다 더 나은 데이터의 품질을 보이기 위해 모델 구조를 업데이트 하고 Classifier Guidance를 활용하여 SOTA를 달성함
  • Classifier Guidance는 backward process에서 x_t-1 의 noise를 추정할 때 학습한 classifier의 기울기를 통해 임의의 클래스 y로 샘플링을 가이드 하는데 사용됨
  • Classifier Guidance를 적용하기 위해 score-based conditioning trick을 적용함
  • Score function은 노이즈를 제거하는 과정에서 데이터에 대한 likelihood가 높아지는 방향을 제시함
  • Classifier Guidance는 score function에 class y를 조건부로 주입하는 방법

다만, Classifier Guidance 방식은 기존 diffusion pipeline에 별도의 classifier가 추가되어 복잡해짐
모든 step에 대한 classifier가 필요함.
그래서 Clasifier-free Guidance에서는 Classifier Guidance의 식을 conditional / unconditional score로 분해하여 재정의함

3.4 LDM: Latent Diffusion Models

  • Diffusion 학습시 image 사용하는 것이 아닌 encoder를 통해 추출된 저차원의 잠재 변수를 사용함
  • Classifier-free guidance 방식을 통해 이미지 생성에 condition을 반영할 수 있음 (Cross-attention)
  • Cross-attention을 통해 condition embedding 반영
profile
헤매는 만큼 자기 땅이다.

0개의 댓글