需要预先了解的知识 Prerequisite
Formal definition of Variational Inference
- Choose a tractable parametric distribution
q
ϕ
(
z
)
q_\phi(z)
qϕ(z) with parameter
ϕ
\phi
ϕ. The distribution will be used to approximate p(z|x).
i. 举个栗子:
我们设置 q ϕ ( z ) = N ( z ∣ μ , Σ ) q_\phi(z) = \N(z | \mu, \Sigma) qϕ(z)=N(z∣μ,Σ) where 我们设置 ϕ = ( μ , Σ ) \phi = (\mu, \Sigma) ϕ=(μ,Σ). 我们尝试选择一个 q ϕ ( z ) q_\phi(z) qϕ(z) 来近似其正确的posterior p ( z ∣ x ) p(z|x) p(z∣x) - 我们需要一些方法来近似p(z | x) 以及 q ϕ q_\phi qϕ, 我们常使用KL divergence
- 使用一些optimization的方法来使得这个值更小
definition of KL divergence
Formal definition of ELBO(Evidence Lower Bound)
- 因为p(z|x) 以及关于z的integral,我们无法对其进行normalize 操作,因此我们KL进行计算
- 因此我们使用 maximizing ELBO的方式来对其进行计算
- Maximizing ELBO等价于最小化 KL。
证明
- Maximizing ELBO等价于最小化 KL。
ELBO
- 因此 L ( ϕ ) L(\phi) L(ϕ)越大,则KL越小
- 因为 L ( ϕ ) + K L = l o g P ( x ) L(\phi) + KL = log P(x) L(ϕ)+KL=logP(x) 是一个常数
- L(φ) ≤ log p(x)
- maximizing the ELBO ⇒ minimizing KL(qφ(z)||p(z|x)).
也可以使用 Jensen’s equality 来进行证明
Parameterization
-
我们需要 对 q ϕ ( z ) q_{\phi}(z) qϕ(z) 来采样来预测ELBO的gradient。
我们有如下式子:
-
如果我们尝试通过gradient这个方法来算的化,我们需要计算一个unbiased estimate of δ L ( ϕ ) δ ϕ \frac{\delta L(\phi)}{\delta \phi} δϕδL(ϕ)
-
我们改变这个取样的过程为两个部分:
- 对一个随机变量进行取样,这个随机变量有固定数量的或者没有参数,比如一个uniform distribution或者 standard normal distribution
- compute z as a function of
ϕ
\phi
ϕ and
ϵ
\epsilon
ϵ, such that
进行reparameterisation 后,变成如右图的情况
这里我们只有 epsilon的值是随机的,g()的值不是随机的,g关于 ϕ \phi ϕ以及x都可以进行 gradient descent/ bp的操作。
SVI
我们不尝试计算全部的gradient,我们使用monte carlo 来进行estimation