VAE (Variational Auto-Encoder)

1. VAE (Variational Auto-Encoder)의 개념 및 특징

개념특징
원본 특징을 보존하며 새로운 데이터 생성 위해 Encoder, Decoder, Sample Latent Vector 기반 새로운 데이터를 생성하는 인공지능 모델– 원본 데이터 분포 기반 원본 특징을 보존
– 랜덤 노이즈 기반 새로운 데이터 생성
– 확률 모델 기반 잠재 코드 유연한 계산
– 명확한 모델 평가 기준을 제공
  • VAE는 차원 축소 및 특징 추출 측면에서 Auto-Encoder와 유사하지만, 새로운 데이터를 생성하는 인공지능 모델이므로 기존 Auto-Encoder와 목적이 다름

 

2. VAE의 매커니즘 및 구성요소

(1) VAE의 매커니즘

  • Encoder에서 입력 데이터 축소 후 평균 및 표준편차 추출, 가우시안 노이즈 샘플링하여 연산 후 Decoder를 통해 입력 데이터의 특징을 가진 새로운 데이터를 생성

(2) VAE의 구성요소

구분구성요소역할
모델
구조
Encoder– 고차원의 입력 데이터를 Encoder 통해 저차원의 Latent Space 로 압축 (input data 복원 위한 manifold 학습)
Latent Space– 축소된 데이터의 평균 및 표준편차 추출, 샘플과 표준편차 곱연산 후 평균과 합연산하여 Decoder로 전달
Decoder– 압축된 Latent Space 로부터 Input Data 와 같은 크기의 출력값 생성 (training data 생성)
잠재
공간
정규분포– 입력값 x 로 부터 추출된 특징 분포
– feature 의 평균과 분산값을 나타냄
Sample(N(0,I))– 새로운 데이터 생성 위해 가우시안 노이즈 기반 샘플
Sample Latent Vector– Encoder의 평균, 표준편차 출력, 가우시안 노이즈 샘플링을 통해 새로운 데이터 생성 (Reparametrization Trick )
학습
방법
Flatten– 입력값 행렬을 순서대로 나열
MSE– Mean Square Error, 입력값과 오차값을 측정하기 위한 손실 함수
ADAM– RMSProp 과 Momentum 두가지를 섞어 쓴 경사하강법 알고리즘
  • 원본 데이터와 유사한 특징을 가진 새로운 데이터를 생성하는 GAN과 유사하나 생성 과정 및 방법에 차이 존재

 

3. VAE와 GAN 비교

비교 항목VAEGAN
목적차원 축소 기반 원본 특징 복사실제와 유사한 이미지 생성
구성요소Encoder/Decoder,
Sample Latent Vector
Generator/Discriminator,
학습데이터, 잠재변수
한계점과적합, 샘플링 제어 불가편향적 이미지만 생성 가능
  • VAE는 latent space가 임의 샘플링 시 어떤 숫자가 샘플링 될지 제어할 수 없는 문제 해결 위해, Encoder와 Decoder에 생성할 숫자의 조건(one-hot lable) 적용하는 CVAE(Conditional VAE) 사용

 
[참고]

  • 한국저작권위원회, 생성형 인공지능(AI) 산업현황 보고서
  • 한땀한땀 딥러닝 컴퓨터 비전 백과사전, VAE(Variational Auto-Encoder)
  • Universiteit van Amsterdam, Auto-Encoding Variational Bayes

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^