Why does a variational auto-encoder (VAE) have a random component? I recently worked on Variational(VAE) Autoencoder. For me, Autoencoder works like this:

In the loss function, we have 


*

*a reconstruction error term which allows us to minimize the distance between input and output.

*a regularization term which allows us to match the latent variables(z1,z2) to a unit gaussian distribution.


But does someone know why do we introduce the random effect? To match a gaussian distribution, why not just use a gaussian likehood as a regularization term of loss function?
The answer might be from a bayes prospective of VAE autoencoder? Even a small hint might be of great help, thanks!
 A: As shown in the figure, the encoder produces $\mu$ and $\sigma$, which are the mean and standard deviation of the posterior distribution $q(z|x)$.
The random effect comes from drawing samples from the posterior distribution. Each sample $z$ can be obtained by $z = \mu+\sigma\epsilon$, where $\epsilon$ is a sample from a Gaussian distribution with zero mean and unit variance, which can be easily obtained.
The reason why we need the randomness is, the reconstruction error term in the loss function is actually an expectation over the posterior distribution which is difficult to solve analytically, so we use sample mean to approximate it.
For the derivation of the regularization term you can refer to the original paper https://arxiv.org/abs/1312.6114
A: The data to which you fit the VAE has noise. If you fit a model that allows no noise (randomness) then this randomness will no where to go but into the coefficients (weights). A perfect model will allow for the noise to find its resting place in the randomness (noise) component of the model, and let the weights to set on the correct values.
