变分推断的公式推导和ELBO的理解


本文从最小化KL散度出发,得出变分推断中的优化目标函数ELBO(Evidence Lower Bound Objective),并讨论对ELBO 的理解。
变分推断的推导
假设我们有观测数据 (observations) \(D\),关于参数 (parameter) \(\theta\) 的先验分布(prior distribution) 为\(p(\theta)\), 根据贝叶斯定理,关于 \(\theta\) 的后验分布 (posterior) 为:
\begin{equation}\label{Bayes}
p(\theta|D) = \frac{p(D|\theta)p(\theta)}{p(D)}
\end{equation}

\(p(D|\theta)\) 是似然概率 (likelihood), \(p(D)\) 是normalizing constant (evidence):
\begin{equation}
p(D) = \int\limits_{\Theta}p(D|\theta)p(\theta)d\theta
\end{equation}
后验分布 \(p(\theta|D)\) 通常不容易得到. 变分法 (Variance inference method) 用另一个可控分布 \(q(\theta;\xi)\) 来趋近真实的未知后验分布 ( true posterior) \(p(\theta|D)\), 其中 \(\xi\) 是控制分布 \(q(\theta;\xi)\) 的隐变量.

我们用KL 散度(KL Divergence) 来衡量后验分布(posterior) 和分布\(q(\theta;\xi)\) 的差距:
\begin{equation}
KL[q(\theta|\xi) || p(\theta|D)] = \int\limits q(\theta;\xi)\log\frac{q(\theta;\xi)}{p(\theta|D)}d\theta \label{KL_definition}
\end{equation}

我们的目标是找到最佳的隐变量 \(\xi\) 使得 KL Divergence 最小:
\begin{equation}
\xi^* =\mathop{\arg\min}\limits_{\xi} KL[q(\theta;\xi) || p(\theta|D)]= \mathop{\arg\min}\limits_{\phi} \int\limits q(\theta;\xi)\log\frac{q(\theta;\xi)}{p(\theta|D)}d\theta
\end{equation}
然而上式包含后验分布\(p(\theta|D)\), 直接优化通常不可行.

我们在Eq. \ref{KL_definition} 中带入贝叶斯定理, 将posteiror \(p(\theta|D)\) 表示为Eq. \ref{Bayes} 的形式:
\begin{equation}
KL[q(\theta|\xi) || p(\theta|D)] = \int\limits q(\theta;\xi)\log\frac{q(\theta;\xi)p(D)}{p(D|\theta)p(\theta)}d\theta
\end{equation}
将等式的右边拆分:
\begin{equation}
KL[q(\theta;\xi) || p(\theta|D)] = \int\limits q(\theta;\xi)\log q(\theta;\xi)d\theta - q(\theta;\xi) \log [p(D|\theta)p(\theta)]d\theta + \int \limits q(\theta;\xi)\log p(D)d\theta \label{KL}
\end{equation}

Eq. \ref{KL} 的最后一项中\(\log p(D)\) 是与隐变量\(\phi\) 无关的,所以:
\begin{equation}
\int \limits q(\theta;\xi)\log p(D)d\theta = \log p(D)
\end{equation}
因此,
\begin{equation}
\mathop{\arg\min}\limits_{\phi}KL[q(\theta;\xi) || p(\theta|D)] = \mathop{\arg\min}\limits_{\phi} \left[\int\limits q(\theta;\xi)\log q(\theta;\xi)d\theta - \int\limits q(\theta;\xi) \log [p(D|\theta)p(\theta)]d\theta\right]
\end{equation}
上式右端为ELBO (Evidence Lower Bound Objective) 取反的结果,我们遵循ELBO 的定义,将上式右端取反写为:
\begin{equation}
\mathop{\arg\min}\limits_{\xi}KL[q(\theta;\xi) || p(\theta|D)] = \mathop{\arg\max}\limits_{\phi} \left[\int\limits q(\theta;\xi) \log [p(D|\theta)p(\theta)]d\theta - \int\limits q(\theta;\xi)\log q(\theta;\xi)d\theta \right]= \mathop{\arg \max}\limits_{\xi} ELBO
\end{equation}

对ELBO (Evidence Lower Bound Objective) 的理解

从Eq. \ref{KL}, 我们看到:
\begin{equation}
ELBO = \log p(D) - KL[q(\theta;\xi) || p(\theta|D)]
\end{equation}
也就是说, 在最理想情况下(也就是我们的替代分布\(q(\theta;\xi)\) 刚好为后验分布\(p(\theta|D)\), 此时 \(KL[q(\theta;\xi) || p(\theta|D)]=0\)), ELBO 等于 evidence \(\log p(D)\)。 实际上由于\(q(\theta;\xi)\) 几乎不可能和后验分布\(p(\theta|D)]\)完全重合, 因此\(KL[q(\theta;\xi) || p(\theta|D)]\geq 0\), ELBO 描述的是在当前\(q(\theta;\xi)\) 和已知观测数据\(D\)下的Evidence \(p(D)\) 的 “lower bound”.


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM