Auto-Encoding Variational Bayes
Variational Auto Encoder (VAE) 是经典的生成模型。其论文的讨论思路和目前大家整理的常用分析思路相比有一定的区别。这里根据各处的资料整理一份完整的理论解答.
已知数据集, 其数据点, 受隐变量影响。我们的目标是设计一个解码器decoder, 参数记为, 我们的目标是使用这个解码器对数据的分布进行建模,成为. 这个映射受隐变量的影响,进而记这个分布为
目前这个方程的左边的计算以及优化,从各个角度来看都intractable,而且我们还需要对隐变量进行提取和分析. 这时候我们引入编码器encoder, 其参数记为, 这个编码器会建模隐变量的后验分布 . 我们希望这个后验分布与上式展开式时所需要的后验分布几乎一致,也就是
首先我们尝试更数学地描述上述的. 这里我们采用KL Divergence, 作为两个概率分布之间的差的描述.
前面的两个分布的KL Divergence展开如下
稍微变形,将我们想优化的内容放一边,可以计算的内容放另一边:
左边第一项是我们想要最大化的表征解码器对数据分布的建模正确度的似然值,第二项是编码器对隐变量的建模与实际隐变量后验概率的概率模型差异,是我们想要最小化的内容.
右边第一项是由编码器采样的隐变量进行解码得到的数据的似然值,实现起来就是reconstruction loss, 第二项指编码器输出与隐变量本身的先验之间的概率差异,实现起来就是一个限制编码器输出幅值的regularizer.
我们令损失函数
由KL divergence的非负性,可以得到
因而损失函数优化的内容又可以理解为 的下限,因而被成为 evidence lower bound (ELBO).