Neural Discrete Representation Learning

Preliminaries

1. Introduction

Untitled

3. VQ-VAE

Untitled

우리의 방법론은 VAE와 매우 유사하다.

  1. input data $x$를 받고 discrete한 latent random variable $z$를 내뱉는 posterior $q(z|x)$를 parametrize한 encoder network

  2. prior distribution $p(z)$

  3. $p(x|z)$를 내뱉는 decoder로 구성된다.

이때 VAE의 posterior과 prior는 diagonal covariance를 가진 normal distribution으로 가정되고, gaussian reparametrisation trick을 사용한다.

우리는 vector quantization에 영감을 받아 discrete한 latent variable을 사용하고 새로운 방법으로 학습한 VQ-VAE를 소개한다. posterior과 prior 분포는 카테고리 분포이고, 해당 카테고리 분포가 임베딩의 인덱스에 대한 분포가 되어 샘플링 된다. 이러한 임베딩은 디코더 네트워크의 인풋으로 사용된다.

3.1 Discrete Latent variables

$K$는 discrete latent space의 크기(=discrete variable의 카테고리 개수)이고, $D$는 임베딩 차원일 때, latent embedding space $e\in \mathbb{R}^{K\times D}$를 정의한다.

모델은 input $x$를 받고 encoder를 통해 $z_e(x)$를 내뱉는다. 이후 embedding space $e$에서 가장 가까운 look-up을 계산해서 discrete latent variable $z$를 찾는다.