贝叶斯神经网络变分推理背后的直觉是什么?

人工智能 神经网络 机器学习 贝叶斯深度学习 贝叶斯神经网络 变分推理
2021-11-15 04:12:07

我试图理解 BNN 的变分推理的概念。我的来源是这个作品目的是最小化近似值之间的差异。分布和真实的后验

KL(qθ(w)||p(w|D)=qθ(w) logqθ(w)p(wD) dw

这可以扩展为

F[qθ]+log p(D)
在哪里
F[qθ]=KL(qθ(w)||p(w))+E[logp(Dw)]

因为log p(D)不包含任何变分参数,导数为零。我真的很想用文字总结一下VI的概念。

一个人如何用直观的语言解释最后一个公式,并用它来近似一个函数而不真正知道它/能够计算它?

我的尝试是:最小化近似分布和真实后验之间的 KL 归结为最小化近似分布和先验(?)之间的 KL,并最大化近似分布的参数导致数据的对数似然。这在某种程度上是正确的吗?

1个回答

您对正在发生的事情的描述或多或少是正确的,尽管鉴于您的最后一个问题,我不完全确定您是否真正理解了它。

所以,让我列举一下步骤。

  1. 后验的计算通常是棘手的(考虑到证据,即贝叶斯规则右手边的分母,在数值上可能在近似/计算上很昂贵,或者没有封闭形式的解决方案)

  2. 为了解决这个棘手的问题,您将贝叶斯推理问题(即贝叶斯规则的应用)作为优化问题

    1. 你假设你可以用另一个更简单的分布(例如高斯分布)来近似后验,称为变分分布

    2. 您将这个优化问题表述为最小化后验和 VD 之间的一些距离概念(例如 KL 散度)

    3. 然而,后验和 VD 之间的 KL 散度也被证明是难以处理的,因为如果你扩展它,你会发现仍然有一个证据项

    4. 因此,您使用易处理的替代(即等效,直到某个常数)目标函数,称为证据下限 (ELBO)(有时称为变分自由能),它是 2 项的总和

      1. VD和先验之间的KL散度
      2. 给定数据的参数的可能性

为了解决您的最后一个疑问/问题,ELBO 不包含后验(即您真正想要找到的),而仅包含变分分布(您选择这个!)、先验(您也定义/选择)和可能性(在实践中,它对应于交叉熵的典型用法;因此,相对于传统神经网络,您唯一需要更多的是计算 KL 散度):换句话说,您最初将问题表述为后验和 VD 之间的 KL 散度的最小化,但这只是一个表述。