As new to variational autoencoder, there are some simple details perplex me. The basic idea of VAE is to use an encoder to map some unknown distribution (e.g. mnist images) to a specific distribution like Gaussian, and then decode this latent distribution back to the original distribution. In Kingma's paper, I feel confused about these simple facts:
- The paper assume p(x|z) to be a Gaussian distribution. But in my opinion, p(x|z) is what the decoder does to map the latent variable z to the original distribution(e.g. mnist images). Thus, p(x|z) actually represents the original distribution. Why can we just simply assume it to be a Gaussian distribution?
- The cost function of VAE is composed of the reconstruction error and regularization error. But I don't know what's the effect of regularization error and what if we just use the reconstruction error?
- The encoder of VAE outputs the mean u and s.t.d for the Gaussian distribution and then we sample z from it. But why don't we just let the encoder output z in Gaussian just as what we do in GAN(In GAN, we use a generator to directly output variable in the distribution we want)?