VAE变分自编码器的直观理解与数学推导

直观理解

1.变分自编码器不同于自编码器的是:需要在latent space中引入噪声,以增加latent space中的连续性,便于生成。 具体表现为在X空间观察到的每一个xi,都会对应隐空间Z的一个分布,即P(Z|X) ,需要从分布P(Z|X)中采样一个zi, 再把zi送入decoder即可产生reconstructed xi,一一对应以便于计算reconstructed loss。(否则只知道先验P(Z)为正态分布,难以在Z空间与X空间一一对应,难以计算loss)

2.可以认为VAE是在尝试对P(X)的分布进行建模,从而进行生成,但是对于高维难以直接计算,于是VAE计算P(X)=P(X|Z)P(Z) (认为P(Z)为高斯分布)

3.P(Z|X)为后验概率,难以计算,可以用变分推断法,引入q(Z|X),通过minimize KL[q(Z|X)||p(Z|X)] (也可以认为通过maximize p(X)) 来求P(Z|X)。

公式推导

VAE变分自编码器的直观理解与数学推导_第1张图片
如上图,需要最大化等号左边:

最大化左边第一项,使得P(X)变大。
最小化左边第二项KL距离,使得q(Z|X)和p(Z|X)接近。

等号右边两项分别对应VAE的两个Loss:
第一项等效于正则项,使得p(Z|X)与N(0,1)之间的KL散度小。 第二项等效于reconstructed loss,从q(Z|X)中采样Zi,再通过P(X|Z)产生对应的reconstructed x,使得两者接近。

你可能感兴趣的:(深度学习,机器学习,变分法,nlp,神经网络)