Chap4. Variational AutoEncoder란 무엇인가

개발일기장기일·2024년 8월 31일

Generative Model이란 무엇인가?

Generative model can generate new dsata instance. // 새로운 data instance를 생성할 수 있다.
Discriminative models discriminate between different kinds of data instances. // Discriminative model은 data instance를 종류에 따라 나눌 수 있다.
Generative models capture the joint probability p(X, Y), or just p(X) if there are no labels. // Generative models은 확률분포를 포착한다.

Generative Model이란 결국 새로운 data instace를 생성해내는 모델이다.

'생성'이란 단순히 Data Instance를 생성하는 것이 아닌 Training Data의 distribution(분포)을 근사하는 특성을 가지고 있다.

Variational AutoEncoder(VAE)는 Generative Model의 일종이다.

  • VAE와 AE는 전혀 관계가 없다.

  • AutoEncoder의 목적은 Manifold Learning이다.

    • AE는 네트워크의 앞단을 학습하기 위해 뒷단을 붙인 것이다.
    • 입력 데이터의 압축을 통해 데이터의 의미있는 manifold를 학습한다.
  • Variational AutoEncoder는 Generative Model이다.

    • 뒷단(Decoder, 생성)을 학습시키기 위해 앞단을 붙인 것이다.
    • 그렇지만 공교롭게도 구조는 AE와 같다.

AE는 Manifold Learning, VAE는 Generative Model이다.

두 모델은 단지 이름과 모양만 비슷하다.

AE와 VAE로 학습했을 때의 차이

AutoEncoder는 'prior에 대한 조건'이 없기 때문에 의미있는 z vector의 space가 계속해서 바뀌게 된다. 즉, 새로운 이미지를 생성할 때 z 값이 계속해서 바뀌게 된다.

Variational AutoEncoder의 경우 prior에 대한 condition을 부여했기 때문에 z vector가 prior와 같은 분포를 따른다. 즉, prior가 Normal distribution이라면 z vector도 같은 분포를 갖는다. 따라서 prior에서 sampling을 하면 된다.

profile
안녕하세요 개발일기장입니다

0개의 댓글