/ Deep Learning  

Variational Autoencoder

(变分自动编码机(VAE)理解和实现(Tensorflow))[https://blog.csdn.net/ppp8300885/article/details/80070723]

AE

自动编码机Auto-Encoder (AE)由两部分encoder和decoder组成,
encoder输入$x$数据,输出潜在变量z,
decoder输入$z$然后输出一个$x’$,目的是让$x’$与$x$的分布尽量一致,
当两者完全一样时,中间的潜在变量z可以看作是x的一种压缩状态,包含了$x$的全部feature特征,此时监督信号就是原数据x本身。

VAE

变分自动编码机VAE是自动编码机的一种扩展,
它假设输出的潜在变量$z$服从一种先验分布,如高斯分布。
这样,在训练完模型后,我们可以通过采样这种先验分布得到$z’$,这个$z’$可能是训练过程中没有出现过的,但是我们依然能在解码器中通过这个$z’$获得$x’$,从而得到一些符合原数据$x$分布的新样本,具有“生成“新样本的能力。
VAE是一种生成模型,它的目标是要得到$p(z∣x)$分布,即给定输入数据$x$的分布,得到潜在变量$x$的分布
与其他的生成模型一样,它计算的是$x$和$z$的联合概率分布$p(x,z)$(如朴素贝叶斯模型通过计算$\frac{p(x,z)}{p(x)}=p(z∣x)$),当然它不是直接计算这个联合概率分布,而是借助一些公式变换求解。