参考:
https://www.cnblogs.com/huangshiyu13/p/6209016.html
https://zhuanlan.zhihu.com/p/25401928
Kingma, Diederik P., and Max Welling. "Auto-encoding variational bayes." arXiv preprint arXiv:1312.6114 (2013)
简介:
变分自编码器(Variational auto-encoder,VAE)是一类重要的生成模型(generative model),它于2013年由Diederik P.Kingma和Max Welling提出。
这里有一些使用VAE好处,就是我们可以通过编码解码的步骤,直接比较重建图片和原始图片的差异,但是GAN做不到。
问题背景:
是一个包含了N个连续或者离散样本x的数据集。
假设数据是通过涉及到一个未观察到的连续随机变量z的过程产生的,这个过程包含了两步。
(1)通过某个先验分布 产生一个
;
(2)根据某个条件分布 产生样本
。
假设 和
产生自分布
。
如何得到 和
是一个未知的难题。
文章中用 作为编码器/识别模型(encoder or recognition model),基于数据x产生一个关于数据x的编码值z的分布。
作为解码器/生成模型(decoder or generative decoder),基于编码值z产生一个对应数据x的分布。
其中φ和θ的值通过两者的联合学习得到。
模型推导:
等价于
最大似然估计(maximum likelihood estimation, MLE):一种重要而普遍的求估计量的方法。MLE的目标是找出一组参数,使得模型产生出观测数据的概率最大。
KL散度:相对熵(relative entropy),又被称为Kullback-Leibler散度(Kullback-Leibler divergence)或信息散度(information divergence),是两个概率分布(probability distribution)间差异的非对称性度量。在在信息理论中,相对熵等价于两个概率分布的信息熵(Shannon entropy)的差值。
蒙特卡罗估计(Monte Carlo estimate):
证明:
MLP(多层感知器):
VAE的encoder和decoder都只用了一层隐含层。
近似计算的证明:
表示元素乘法;按照高斯分布求解KL散度即可得到结果。
训练好了以后,生成样本采用下面的网络结构:
变分自编码器(Variational auto-encoder,VAE)
原文:https://www.cnblogs.com/lucifer1997/p/10650924.html