ELBO
ELBO
是我们想要计算的边缘似然(Evidence),它表示观测数据 出现的概率
- 引入变分分布
,对真实后验分布 进行近似 - 同时将上述的积分式转化为一个可以简单计算的形式
- 将积分形式转化为期望形式,便于下一步的计算
- 应用Jensen不等式,将等号变成了大于等于号
就是证据下界(ELBO)
在VAE中,我们的目标就是最大化这个下界(ELBO),因为最大化下界也就意味着我们尽可能地最大化原始似然
理解ELBO:变分推断
对于任意的
- 它表明我们想要计算的边缘似然
,可以精确地分解成两部分之和: :变分下界(ELBO),这是我们可以计算和最大化的部分。 : 和真实后验分布 之间的KL散度,衡量两个分布之间距离
证明如下:
参数化:
,在实践中,我们通常参数化 来优化,将其定义为一个由参数 决定的神经网络 :通过调整 的参数 ,来最大化变分下界 。当我们最大化 时,我们实际上是在让 尽可能地接近真实的后验分布 ,从而使KL散度项趋近于零 当
时,
理解ELBO:ELBO = 重建误差 + 正则项
一般地,我们会让
第一项:reconstruction error (重建误差)
- 公式项:
- 解析:
- 这表示在根据
选定潜在变量 的情况下,原始数据 的对数似然的期望 是解码器(Decoder),它接收潜在变量 并尝试生成数据 , 衡量了生成的 有多大可能等于原始的- 期望
:编码器不是输出一个确定的 值,而是根据原始数据 输出一个分布 ,我们对所有可能 值,按其概率分布进行加权 - VAE的“自编码”功能体现在这里,我们希望解码器能够从潜在空间中重构出原始数据。因此,最大化这一项就等同于最小化重建误差
- 这表示在根据
第二项:正则项
- 公式项:
- 解析:
:编码器输出的分布,即在给定输入 之后,潜在变量 的后验分布 :潜在变量的先验分布- 核心思想:
- 平滑性(Smoothness):防止
过于尖锐,得到一个狄拉克分布,保证了潜在空间是连续的 - 确保生成能力:使得潜在空间与先验分布(比如标准正态分布)对齐,那么我们就可以从这个先验分布中随机采样一个
值,并将其送入解码器,从而生成全新的数据,也就是说保证学习到的latent space能够与采样空间进行契合
- 平滑性(Smoothness):防止
两项之间的平衡
- 最大化ELBO的过程是同时最大化重建项和最小化KL散度项。
- 重建项希望编码器能尽可能地保留输入信息,以保证重构质量。
- 正则项则希望编码器能将这些信息压缩到一个结构化的、简单的潜在空间中
- 这两者之间存在一个权衡:
- 如果KL散度项的权重过大,模型可能会牺牲重构质量
- 如果重建项的权重过大,模型可能导致潜在空间混乱,失去生成能力
- VAE通过一个统一的ELBO目标,巧妙地平衡了数据的压缩表示(Representation)和生成能力(Generation)
ELBO的参数化
将公式中的三个概率分布进行了参数化,以便用神经网络来表示和优化
参数化为 参数化为 参数化为- 参数化后的ELBO:
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.







