上篇文章是VAE的第一部分,主要介绍了VAE的一些相关知识,VAE的由来,还有VAE的主要模型结构之类的。下面介绍的是VAE的公式推导,十分的重要。
三、VAE公式推导
在进行公式推导之前,先介绍一下预备知识。
首先,VAE是一个生成模型,准确的说它是深度概率生成模型。概率生成模型关心样本的分布,对样本分布本身进行建模。
其次,VAE是隐变量模型,隐变量模型是存在隐变量z,其中GMM也是一个隐变量模型,GMM中也存在隐变量z。VAE的生成样本是由隐变量z生成的,如VAE原文中的图模型所示:
最后,在公式推导之前,先介绍一下各种符号表示的意义:
公式推导又可以从两个方面来推,两个方面都可以推导出最终结果:
1.正向推导
这个名是我自己起的,不一定正确,先这样叫吧。
首先,我们知道VAE是深度概率生成模型。概率生成模型关心样本的分布,对样本分布本身进行建模。因此,样本分布为,其中
。目前我们已知的只有一些来自分布
的样本,且我们并不知道
是什么分布,现在我们只能根据一些已知的样本去求样本分布
。显而易见,我们是无法求解的。
这样我们不妨转换一下思路,既然根据已知样本无法直接求解,那么我们做出合理的假设,假设样本X,是由隐变量z产生的。这样一来,
。这样一来
就有了一个基本的结构。
--------------------------------------------------------题外话----------------------------------------------------------
VAE原文中,对于隐变量z的引入,举了一个关于MNIST的简单例子,如下图,感兴趣的可以自己看看。
----------------------------------------------------------------------------------------------------------------------------
关于隐变量z的分布,我们也做出了假设,假设它是服从标准正太分布的,即
~
。这里
不一定非要这样假设,你也可以假设它是其他的分布,那为什么这里要如此假设呢?我觉得有一下两点理由:1.标准正太分布足够简单,并且理论上来说,标准正太分布经过变换可以拟合任意复杂的分布。2.中心极限定理,也称为大数定理。也就是说只要样本足够大,我们都可以看作其是一个正太分布。