这里从Encoder和Decoder的角度探索VAE。
所用示例参考和修改自网络资料。
1. Encoder和Decoder
1.1 编码器Encoder
编码器是一个变分近似后验分布,它将输入数据
映射到潜在变量
的条件分布:
其中:
是编码器神经网络参数
和
是编码器输出的均值和标准差
因为采用了压缩表示,潜在空间维度通常远小于输入空间维度。
1.2 解码器Decoder
解码器是生成分布,它将潜在变量
映射回数据空间:
其中是解码器神经网络参数。
先验分布(Prior)
假设潜在变量的先验分布为标准正态分布:
2 ELBO完整推导
2.1 ELBO的目标
对于VAE,ELBO的目标是最大化边际似然
对于数据集,希望最大化:
其中单个数据点的边际似然为:
2.2 变分下界推导
步骤1:引入变分分布
对于任意变分分布,边际似然可写为:
步骤2:应用Jensen不等式
步骤3:得到ELBO基本形式
定义证据下界(ELBO):
因此:
步骤4:分解ELBO
展开联合分布:
步骤5:识别KL散度
第二项是负的KL散度:
最终ELBO表达式:
2.3 直观解释
1)重构项(第一项):
-
衡量解码器从潜在变量
重构原始数据
的能力
-
相当于自动编码器的重构损失
- 正则化项(第二项):
-
强制编码器输出的分布接近先验分布p(z)
-
防止过拟合,确保潜在空间有良好的结构
2.4 重参数化技巧
重参数化技巧(Reparameterization Trick)
为了反向传播能联通随机采样过程,将采样操作重参数化为:
这使得梯度可计算。
2.5 训练目标
VAE的训练目标是最大化所有数据的ELBO之和:
其关键要点如下
1)变分推断框架:VAE将生成模型训练转化为变分推断问题
2)amortized推断:使用神经网络编码器实现高效的推断
3)端到端训练:通过重参数化技巧实现ELBO的梯度估计
4)平衡 trade-off:重构项与KL散度项的平衡控制着生成质量与多样性
VAE实现了可扩展深度生成模型的训练,为扩散模型、归一化流等模型奠定了基础。