ELBO是否包含变量自动编码器中的重建损失信息

时间:2018-04-27 16:32:26

标签: tensorflow machine-learning autoencoder

这是一个与此相关的问题 - Variational autoencoder and reconstruction Log Probability vs Reconstruction error

我正在尝试了解变量自动编码器的优化方式。我已经阅读了它背后的数学,我想我理解变分推理的一般概念和用于潜在空间的重新参数化技巧。

我见过一些examples,其中使用交叉熵将输入和输出相互比较,并且KL分歧在潜在变量上。然后这种损失最小化。

另一方面,有other examples使用对数概率和KL散度来生成证据下界(ELBO)。然后,ELBO值的负值被最小化。

在两者中,潜在空间基于输入的模式(例如,MNIST中的数字)进行划分。所以我想知道ELBO是否包含类似于重建损失的信息。

1 个答案:

答案 0 :(得分:2)

简短的回答是肯定的。 ELBO实际上是一个平滑的目标函数,它是对数似然的下界。

我们选择最大化log p(xlz)+ KL(q(zlx)ll p(z))而不是最大化log p(x),其中z是来自编码器q的样本(zlx) )。我们这样做是因为优化ELBO比log p(x)更容易。

然后术语p(xlz)是负重建误差 - 我们希望在给定潜在变量z的情况下最大化x的likihood。 对于第一个例子:p(xlz)是高斯分布,方差为1.

第二个例子:p(xlz)是伯努利分布,因为Mnist数字是黑色和白色。我们可以将每个像素建模为它的亮度。

希望这有帮助!