近似推断 - 推断是一个优化问题篇

前言

在数据分析与机器学习的广阔领域中,近似推断占据着举足轻重的地位。当我们面对复杂的数据模型和庞大的数据集时,直接进行精确推断往往计算成本高昂,甚至在某些情况下变得不切实际。因此,近似推断作为一种折衷方案应运而生,旨在以相对较低的计算代价获得接近精确的推断结果。而推断问题,本质上可以视为一个优化问题,其核心在于如何在给定的约束条件下,找到最优的近似解。

序言

近似推断的核心思想在于,通过一系列策略和方法,如变分推断、马尔可夫链蒙特卡洛( MCMC \text{MCMC} MCMC)等,将原始的复杂推断问题转化为更易求解的形式。这些策略和方法实际上就是在执行一种优化过程,即在保证一定精度的前提下,寻找计算成本最低或效率最高的近似解。这种优化不仅体现在计算资源的有效利用上,还体现在对推断结果质量的把控上。

推断是一个优化问题

  • 许多难以利用观察值进行精确推断的问题往往可以描述为一个优化问题。通过近似这样一个潜在的优化问题,我们往往可以推导出近似推断算法。

  • 为了构造这样一个优化问题,假设我们有一个包含可见变量 v \boldsymbol{v} v 和潜变量 h \boldsymbol{h} h 的概率模型。

    • 我们希望计算观察数据的概率对数 log ⁡ p ( v ; θ ) \log p(\boldsymbol{v};\boldsymbol{\theta}) logp(v;θ)
    • 有时候如果边缘化消去 h \boldsymbol{h} h的操作很费时的话,我们通常很难计算 log ⁡ p ( v ; θ ) \log p(\boldsymbol{v};\boldsymbol{\theta}) logp(v;θ)
    • 作为替代,我们可以计算一个 log ⁡ p ( v ; θ ) \log p(\boldsymbol{v};\boldsymbol{\theta}) logp(v;θ) 的下界 L ( v , θ , q ) \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q) L(v,θ,q)
    • 这个下界叫做证据下界 ( evidence lower bound, ELBO \text{evidence lower bound, ELBO} evidence lower bound, ELBO)。
    • 这个下界的另一个常用名字是负变分自由能 ( variational free energy \text{variational free energy} variational free energy)。
    • 具体地,这个证据下界是这样定义的:
      L ( v , θ , q ) = log ⁡ p ( v ; θ ) − D KL ( q ( h ∣ v ) ∣ ∣ p ( h ∣ v ; θ ) ) \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q)=\log p(\boldsymbol{v};\boldsymbol{\theta})-D_{\text{KL}}(q(\boldsymbol{h}\mid\boldsymbol{v})||p(\boldsymbol{h}\mid\boldsymbol{v};\boldsymbol{\theta})) L(v,θ,q)=logp(v;θ)DKL(q(hv)∣∣p(hv;θ)) — 公式1 \quad\textbf{---\footnotesize{公式1}} 公式1
    • 在这里 q q q 是关于 h \boldsymbol{h} h 的一个任意概率分布。
  • 因为 log ⁡ p ( v ) \log p(\boldsymbol{v}) logp(v) L ( v , θ , q ) \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q) L(v,θ,q) 之间的距离是由 KL \text{KL} KL 散度来衡量的。因为 KL \text{KL} KL散度总是非负的,我们可以发现 L \mathcal{L} L 小于等于所求的概率对数。当且仅当 q q q 完全相等于 p ( h ∣ v ) p(\boldsymbol{h} \mid \boldsymbol{v}) p(hv)时取到等号。

  • 令人吃惊的是,对某些分布 q q q,计算 L \mathcal{L} L 可以变得更简单。通过简单的代数运算我们可以把 L \mathcal{L} L 重写成一个更加简单的形式:
    { L ( v , θ , q ) = log ⁡ p ( v ; θ ) − D KL ( q ( h ∣ v ) ∣ ∣ p ( h ∣ v ; θ ) ) — 公式2 = log ⁡ p ( v ; θ ) − E h ∼ q log ⁡ q ( h ∣ v ) p ( h ∣ v ) — 公式3 = log ⁡ p ( v ; θ ) − E h ∼ q log ⁡ q ( h ∣ v ) p ( h , v ; θ ) p ( v ; θ ) — 公式4 = log ⁡ p ( v ; θ ) − E h ∼ q [ log ⁡ q ( h ∣ v ) − log ⁡ p ( h , v ; θ ) + log ⁡ p ( v ; θ ) ] — 公式5 = − E h ∼ q [ log ⁡ q ( h ∣ v ) − log ⁡ p ( h , v ; θ ) ] — 公式6 \begin{cases} \begin{aligned} \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q) &= \log p(\boldsymbol{v};\boldsymbol{\theta}) - D_{\text{KL}}(q(\boldsymbol{h}\mid\boldsymbol{v})||p(\boldsymbol{h}\mid\boldsymbol{v};\boldsymbol{\theta})) &\quad\textbf{---\footnotesize{公式2}}\\\\ &= \log p(\boldsymbol{v};\boldsymbol{\theta})-\mathbb{E}_{\textbf{h}\sim q}\log\frac{q(\boldsymbol{h}\mid\boldsymbol{v})}{p(\boldsymbol{h}\mid\boldsymbol{v})} &\quad\textbf{---\footnotesize{公式3}}\\\\ &=\log p(\boldsymbol{v};\boldsymbol{\theta})-\mathbb{E}_{\textbf{h}\sim q}\log\frac{q(\boldsymbol{h}\mid\boldsymbol{v})} {\frac{p(\boldsymbol{h},\boldsymbol{v};\boldsymbol{\theta})}{p(\boldsymbol{v};\boldsymbol{\theta})} } &\quad\textbf{---\footnotesize{公式4}}\\\\ &=\log p(\boldsymbol{v};\boldsymbol{\theta})-\mathbb{E}_{\textbf{h}\sim q}[\log q(\boldsymbol{h}\mid\boldsymbol{v})-\log p(\boldsymbol{h},\boldsymbol{v};\boldsymbol{\theta})+\log p(\boldsymbol{v};\boldsymbol{\theta})] &\quad\textbf{---\footnotesize{公式5}}\\\\ &=-\mathbb{E}_{\textbf{h}\sim q}[\log q(\boldsymbol{h}\mid\boldsymbol{v})-\log p(\boldsymbol{h},\boldsymbol{v};\boldsymbol{\theta})] &\quad\textbf{---\footnotesize{公式6}} \end{aligned} \end{cases} L(v,θ,q)=logp(v;θ)DKL(q(hv)∣∣p(hv;θ))=logp(v;θ)Ehqlogp(hv)q(hv)=logp(v;θ)Ehqlogp(v;θ)p(h,v;θ)q(hv)=logp(v;θ)Ehq[logq(hv)logp(h,v;θ)+logp(v;θ)]=Ehq[logq(hv)logp(h,v;θ)]公式2公式3公式4公式5公式6

  • 这也给出了证据下界的标准定义:
    L ( v , θ , q ) = E h ∼ q [ log ⁡ p ( h , v ) ] + H ( q ) \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q)=\mathbb{E}_{\textbf{h}\sim q}[\log p(\boldsymbol{h},\boldsymbol{v})]+H(q) L(v,θ,q)=Ehq[logp(h,v)]+H(q) — 公式7 \quad\textbf{---\footnotesize{公式7}} 公式7

  • 对于一个较好的选择 q q q 来说, L \mathcal{L} L 是容易计算的。对任意选择 q q q 来说, L \mathcal{L} L 提供了一个似然函数的下界。越好的近似 q q q 的分布 q ( h , v ) q(\boldsymbol{h},\boldsymbol{v}) q(h,v) 得到的下界就越紧,换句话说,就是与 log ⁡ p ( v ) \log p(\boldsymbol{v}) logp(v) 更加接近。当 q ( h ∣ v ) = p ( h ∣ v ) q(\boldsymbol{h}\mid\boldsymbol{v}) = p(\boldsymbol{h}\mid\boldsymbol{v}) q(hv)=p(hv) 时,这个近似是完美的,也意味着 L ( v , θ , q ) = log ⁡ p ( v ; θ ) \mathcal{L}(\boldsymbol{v},\boldsymbol{\theta},q) = \log p(\boldsymbol{v};\boldsymbol{\theta}) L(v,θ,q)=logp(v;θ)

  • 因此我们可以将推断问题看做是找一个分布 q q q 使得 L \mathcal{L} L 最大的过程。精确的推断能够在包含分布 p ( h ∣ v ) p(\boldsymbol{h}\mid\boldsymbol{v}) p(hv) 的函数族中搜索一个函数,完美地最大化 L \mathcal{L} L。在本章中,我们将会讲到如何通过近似优化寻找分布 q q q 的方法来推导出不同形式的近似推断。我们可以通过限定分布 q q q 的形式或者使用并不彻底的优化方法来使得优化的过程更加高效(却更粗略),但是优化的结果是不完美的,因为只能显著地提升 L \mathcal{L} L 而无法彻底地最大化 L \mathcal{L} L

  • 无论我们选择什么样的 q q q L \mathcal{L} L 始终是一个下界。我们可以通过选择一个更简单抑或更复杂的计算过程来得到对应的更松或者更紧的下界。通过一个不彻底的优化过程或者将 q q q 分布做很强的限定(并且使用一个彻底的优化过程)我们可以获得一个很差的 q q q,尽管计算开销是极小的。

总结

综上所述,近似推断之推断确实可以被视为一个优化问题。它要求我们在计算成本、推断精度和求解效率之间找到最佳平衡点。通过采用各种优化策略和方法,近似推断成功地克服了精确推断在计算上的局限性,为处理大规模数据和复杂模型提供了有力支持。随着数据科学和机器学习技术的不断发展,近似推断的优化问题将变得更加重要和复杂,但同时也为我们探索新的求解方法和提升推断性能提供了广阔的空间和机遇。

往期内容回顾

近似推断 - 引言篇

猜你喜欢

转载自blog.csdn.net/benny_zhou2004/article/details/143062406