问题

请解释下variational inference?

回答
好的,我们来详细地解释一下变分推断(Variational Inference,简称 VI)。

什么是变分推断?

在贝叶斯统计和机器学习中,我们经常需要处理后验分布 (Posterior Distribution)。假设我们有一组观测数据 $x$,以及我们想要学习的隐藏变量或模型参数 $ heta$。贝叶斯定理告诉我们,后验分布是:

$$p( heta | x) = frac{p(x | heta) p( heta)}{p(x)}$$

其中:
$p( heta | x)$ 是后验分布:给定观测数据 $x$ 后,模型参数 $ heta$ 的分布。这是我们最关心的量,它包含了我们对参数的所有不确定性信息。
$p(x | heta)$ 是似然函数 (Likelihood):给定参数 $ heta$ 时,观测数据 $x$ 出现的概率。
$p( heta)$ 是先验分布 (Prior):在观测到任何数据之前,我们对参数 $ heta$ 的初始信念。
$p(x)$ 是证据项 (Evidence) 或边缘似然 (Marginal Likelihood):给定参数 $ heta$,观测数据 $x$ 的边缘概率,即 $p(x) = int p(x | heta) p( heta) d heta$。

核心问题:

在很多复杂的模型中,计算后验分布 $p( heta | x)$ 是极其困难的,甚至是不可能的。主要原因在于:

1. 分母 $p(x)$ 难以计算: 证据项 $p(x)$ 通常需要对所有可能的参数 $ heta$ 进行积分(或求和),这在 $ heta$ 是高维连续变量时,积分的解析解往往不存在,数值计算的计算量也呈指数级增长。
2. 后验分布的形式复杂: 即便分母可以被忽略(在比较不同模型时),后验分布本身的形式也可能非常复杂,难以分析和使用。

变分推断的目的:

变分推断的核心思想是:用一个已知且易于处理的分布 $q( heta)$ 来近似那个难以计算的真实后验分布 $p( heta | x)$。

就像我们在学习数学时,如果一个问题很难直接解决,我们可能会尝试用一个简单的模型来近似它,然后在这个近似模型上进行分析。变分推断就是干这个事情。

变分推断的核心思想:最小化 KL 散度

如何衡量 $q( heta)$ 和 $p( heta | x)$ 的相似程度呢?在概率和信息论中,我们通常使用KL 散度 (KullbackLeibler Divergence) 来衡量两个概率分布之间的差异。

定义 $D_{KL}(q( heta) || p( heta|x))$ 为:

$$D_{KL}(q( heta) || p( heta|x)) = int q( heta) log frac{q( heta)}{p( heta|x)} d heta$$

我们的目标就是找到一个分布 $q( heta)$,使得这个 KL 散度最小。 最小化 KL 散度就意味着 $q( heta)$ 尽可能地“接近”$p( heta|x)$。

欧拉拉格朗日方程的视角:ELBO

在贝叶斯统计中,我们常常关注的是证据下界 (Evidence Lower Bound, ELBO),它与 KL 散度之间有着密切的关系。

我们知道 $p( heta|x) = frac{p(x, heta)}{p(x)}$,其中 $p(x, heta) = p(x| heta)p( heta)$ 是联合概率分布。

将这个代入 KL 散度的定义:

$$D_{KL}(q( heta) || p( heta|x)) = int q( heta) log frac{q( heta)}{p(x, heta) / p(x)} d heta$$
$$D_{KL}(q( heta) || p( heta|x)) = int q( heta) left( log q( heta) log p(x, heta) + log p(x) ight) d heta$$
$$D_{KL}(q( heta) || p( heta|x)) = mathbb{E}_{q( heta)}[log q( heta)] mathbb{E}_{q( heta)}[log p(x, heta)] + log p(x)$$

重新整理一下:

$$log p(x) = D_{KL}(q( heta) || p( heta|x)) + mathbb{E}_{q( heta)}[log p(x, heta)] mathbb{E}_{q( heta)}[log q( heta)]$$

我们定义 ELBO (Evidence Lower Bound) 为:

$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x, heta)] mathbb{E}_{q( heta)}[log q( heta)]$$

那么,上述公式就变成了:

$$log p(x) = D_{KL}(q( heta) || p( heta|x)) + mathcal{L}(q)$$

由于 $log p(x)$ 是一个固定的值(与 $q$ 无关),并且 $D_{KL}(q( heta) || p( heta|x)) ge 0$,所以 ELBO $mathcal{L}(q)$ 是 $log p(x)$ 的一个下界。

关键点:

最小化 KL 散度 $iff$ 最大化 ELBO

从 $log p(x) = D_{KL}(q( heta) || p( heta|x)) + mathcal{L}(q)$ 可以看出,要最小化 $D_{KL}(q( heta) || p( heta|x))$,就等价于最大化 $mathcal{L}(q)$。因为 $log p(x)$ 是常数。

ELBO 的表达式展开:
$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x| heta) + log p( heta)] mathbb{E}_{q( heta)}[log q( heta)]$$
$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x| heta)] + mathbb{E}_{q( heta)}[log p( heta)] mathbb{E}_{q( heta)}[log q( heta)]$$
$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x| heta)] D_{KL}(q( heta) || p( heta))$$

这个形式也很直观:最大化 ELBO 意味着我们希望 $q( heta)$ 能够很好地拟合数据(最大化 $mathbb{E}_{q( heta)}[log p(x| heta)]$,即期望似然),同时又希望 $q( heta)$ 与先验 $p( heta)$ 保持接近(最小化 $D_{KL}(q( heta) || p( heta))$)。

变分推断的步骤

1. 选择一个变分族 (Variational Family):
这是最关键的一步。我们需要选择一个参数化的分布族 $mathcal{Q} = { q( heta; phi) mid phi in Phi }$,其中 $q( heta; phi)$ 是一个我们已知且容易处理的分布,$phi$ 是这个分布的参数。

常用的变分族:
均值场假设 (Meanfield Assumption): 这是最常见也是最简单的一种变分族。它假设后验分布 $p( heta | x)$ 中的各个变量(如果 $ heta$ 是一个向量的话)是相互独立的。
假设 $ heta = ( heta_1, heta_2, dots, heta_K)$,那么均值场假设下的变分分布为:
$$q( heta) = prod_{i=1}^K q_i( heta_i)$$
其中每个 $q_i( heta_i)$ 是一个独立的一维分布。

更复杂的变分族:
具有特定结构的分布: 例如,如果知道后验分布中变量之间存在某种特定的依赖关系(如成对依赖),可以使用更复杂的变分族来捕获这种结构。
基于采样的方法: 也可以使用一些生成模型(如 VAE 的编码器)来生成 $q( heta)$ 的样本。

2. 定义目标函数 (ELBO):
根据选择的变分族,计算 ELBO 的表达式:
$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x, heta)] mathbb{E}_{q( heta)}[log q( heta)]$$
如果使用的是均值场假设,则:
$$mathcal{L}(q) = sum_{i=1}^K mathbb{E}_{q_i( heta_i)}[log p(x, heta)] sum_{i=1}^K mathbb{E}_{q_i( heta_i)}[log q_i( heta_i)]$$

3. 优化变分参数 $phi$:
我们的目标是找到最优的变分参数 $phi^$,使得 $q( heta; phi^)$ 是最优的近似分布。这通常通过最大化 ELBO 来实现。
$$phi^ = arg max_{phi} mathcal{L}(q( heta; phi))$$

解析优化 (Analytic Optimization):
对于一些简单的变分族(如均值场假设下的高斯分布),我们可以推导出更新规则,使得 ELBO 的各个部分可以被解析地优化。例如,通过对 ELBO 关于某个 $q_i( heta_i)$ 的参数求导并令其为零,可以得到更新公式。
一个著名的例子是平均场变分推断 (MeanField Variational Inference) 的更新规则:
假设 $ heta = ( heta_1, dots, heta_K)$ 且 $q( heta) = prod_{i=1}^K q_i( heta_i)$。
ELBO 可以写成:
$$mathcal{L}(q) = mathbb{E}_{q( heta)}[log p(x, heta)] sum_{i=1}^K mathbb{E}_{q_i( heta_i)}[log q_i( heta_i)]$$
考虑对某个 $q_j( heta_j)$ 的更新。我们可以推导出:
$$log q_j^( heta_j) = mathbb{E}_{prod_{i e j} q_i( heta_i)}[log p(x, heta)] + ext{const}$$
这意味着最优的 $q_j^( heta_j)$ 正是 $ heta_j$ 的后验分布,假设其他所有变量的分布是已知的(但这里是近似的)。因此,我们可以迭代地更新每个 $q_j( heta_j)$:
$$q_j^( heta_j) propto exp left( mathbb{E}_{prod_{i e j} q_i( heta_i)}[log p(x, heta)] ight)$$
这个更新过程可以迭代进行,直到收敛。

随机梯度上升 (Stochastic Gradient Ascent):
对于更复杂的模型和变分族,解析优化可能不可行。此时,我们可以通过随机梯度上升来优化 ELBO。
由于 ELBO 的期望项可能难以计算,我们通常使用重参数化技巧 (Reparameterization Trick) 或分数函数估计 (Score Function Estimator) 来得到 ELBO 的无偏或低方差梯度估计。

重参数化技巧: 如果我们的变分分布 $q( heta; phi)$ 可以表示为 $ heta = g(epsilon; phi)$,其中 $epsilon$ 是一个从某个固定的简单分布(如标准正态分布)中采样的随机变量,那么 ELBO 就可以表示为关于 $phi$ 的函数,其梯度可以通过链式法则计算。
例如,如果 $q( heta; mu, sigma) = mathcal{N}( heta; mu, sigma^2)$,我们可以写成 $ heta = mu + sigma epsilon$,其中 $epsilon sim mathcal{N}(0, 1)$。这样就可以计算 $frac{partial mathcal{L}}{partial mu}$ 和 $frac{partial mathcal{L}}{partial sigma}$。

分数函数估计 (REINFORCE): 如果重参数化技巧不可行,可以使用分数函数估计。这种方法通常具有更高的方差,但适用范围更广。

4. 使用近似后验 $q( heta^)$:
一旦我们找到了最优的变分参数 $phi^$,我们就得到了近似后验分布 $q( heta^)$。我们可以用它来:
估计参数的均值、方差等统计量。
进行预测: $mathbb{E}_{p( heta|x)}[f( heta)] approx mathbb{E}_{q( heta^) தயார}[f( heta)]$。
进行模型选择或评估。

VI vs MCMC

变分推断和马尔可夫链蒙特卡洛方法 (Markov Chain Monte Carlo, MCMC) 都是用于近似后验分布的常用方法,但它们之间有几个关键的区别:

| 特性 | 变分推断 (VI) | 马尔可夫链蒙特卡洛 (MCMC) |
| : | : | : |
| 方法本质 | 优化问题,将近似后验视为优化目标。 | 采样方法,生成后验分布的样本序列。 |
| 计算速度 | 通常比 MCMC 快得多,尤其是在高维空间和大数据集上。 | 可能非常慢,收敛需要时间,难以并行化。 |
| 收敛诊断 | 困难,通常依赖于ELBO收敛,但ELBO收敛不保证后验收敛。 | 相对容易,有多种收敛诊断方法(如 GelmanRubin 统计量)。 |
| 近似质量 | 依赖于选择的变分族。如果变分族太简单,可能无法很好地捕捉后验的复杂结构。 | 理论上可以无限接近真实后验,但需要足够长的采样时间。 |
| 结果 | 得到一个参数化的近似分布 $q( heta; phi)$。 | 得到后验分布的样本集 ${ heta^{(t)}}_{t=1}^N$。 |
| 内存需求| 通常较低,只需要存储变分参数。 | 可能较高,需要存储大量的样本。 |
| 使用场景| 实时应用、在线学习、大型模型。 | 需要精确后验信息、模型结构复杂、采样效率高的情况。 |

何时选择 VI?

当计算速度是关键因素时。
当处理大规模数据集时,因为 VI 可以进行近似的随机梯度下降。
当需要一个可解析的近似后验分布用于下游任务时。
当模型的后验分布虽然复杂,但可以用相对简单的分布族来近似时。

何时选择 MCMC?

当需要非常精确的后验分布估计时。
当模型的后验分布具有多峰性、强相关性或复杂的几何形状,而简单的变分族无法捕捉时。
当计算速度不是首要考虑因素时。

VI 的挑战与局限性

1. 变分族的选取: VI 的性能很大程度上取决于变分族的“表达能力”。如果变分族太简单(例如,总是假设后验是独立的),它可能无法捕捉后验分布中的重要相关性,导致近似效果不佳。
2. ELBO 最大化不等于 KL 散度最小化: 虽然在理论上是等价的,但实际操作中,如果我们选择了不恰当的变分族,最大化 ELBO 可能会导致 $q( heta)$ 与真实后验 $p( heta|x)$ 的平均行为很相似,但在尾部或低概率区域存在很大差异。
3. 收敛诊断: VI 的收敛性诊断比 MCMC 更具挑战性。ELBO 收敛到一个值并不一定意味着 $q( heta)$ 非常接近 $p( heta|x)$。

变分推断的经典应用例子

变分自编码器 (Variational Autoencoders, VAEs): VAEs 是一种生成模型,它使用变分推断来学习一个连续的潜在空间,并从中生成新的数据样本。其编码器扮演着近似后验分布 $q(z|x)$ 的角色。
主题模型 (Topic Models): 如 LDA (Latent Dirichlet Allocation) 可以使用变分推断来近似主题分布。
贝叶斯神经网络 (Bayesian Neural Networks): VI 可以用来对神经网络的权重进行概率建模,从而获得对模型预测的不确定性估计。

总结

变分推断是一种强大的近似推断技术,它将复杂的后验分布近似问题转化为一个优化问题。通过选择一个易于处理的变分族,并最大化证据下界 (ELBO),我们可以得到后验分布的一个有用的近似。虽然它存在变分族选择和收敛诊断等挑战,但在许多现代机器学习应用中,变分推断因其高效性而成为不可或缺的工具。

希望这个详细的解释能帮助你理解变分推断!如果你有更具体的问题或想深入某个方面,请随时提出。

网友意见

user avatar

一般的problem setting是,我们想计算posterior (这在做inference和prediction的时候会用到),根据Bayes' formula,我们需要计算 ,但这往往是intractable的。那么一个很自然的想法是,我们可以直接引入一族parameterized distributions (称为variational distributions,其中 称为variational parameters),通过在 里面寻找与 最“相似”的distribution来估计真实的posterior。这就可以写成下面的优化问题:

, (1)

其中KL就是大家熟知的Kullback-Leibler divergence。直接优化问题(1)还是intractable,因为里面包含了我们的目标估计函数 ,但可以很容易证明,minimize (1)等价于maximize所谓的ELBO(evidence lower bound),即

. (2)

其中 就是我们的model,所以是tractable的。

至此,整个variational inference (VI)的框架就结束了,而算法的发展就是围绕这个框架的每一个环节,每做一步改进(变化),就可以生成一个新的算法(paper)。最古典的VI假设mean-field,即assume ,这样我们可以通过下面的式子update variational distributions in coordinates,

. (3)

进一步地,如果assume conjugate prior,我们可以解析地求出式(3),继而写成update parameters的形式,具体细节大家可以参考David Blei的综述 [1] 以及PRML第10章(私以为第8、10章是该书的精髓)。

下面简单列一下VI这几年的研究热点,仅限于我个人所了解的内容,不全面的地方还望大家补充。主要来自于Blei组的工作,Blei可以说是如今北美VI领头羊,当然Ryan Adams和Max Welling也做了不少这方面的工作,但相对较杂。

(i) 如果(3)能解析地处理,我们自然可以方便地使用coordinate ascent。但为了更准确地fit真实数据,让posterior更加flexible,真实情况往往更复杂,所以我们必须求助于gradient ascent这种generic algorithm。同时为了scalable to large data,就得使用stochastic gradient descent (SGD)。这篇文章 [2] 指出,直接做gradient的效果并不好,因为parameter空间和distribution空间的metric是不同的。所以作者使用了information geometry里的natural gradient改进了SGD,提出了所谓的stochastic variational inference (SVI),其技术本质就是额外用到了二阶导(Hessian)的信息。注意SVI里主要讨论的是有mean-field和conjugacy假设的model,其优点在于这些model的Hessian好计算,有explicit form,但是对于更加复杂的model,计算Hessian会极大增加算法的计算复杂度,并不是一个好的选择。这一点可以类比opt里的second order methods。

(ii) 如果(3)不好解,我们是否可以直接处理(2)呢?答案是肯定的,这方面工作是最多的,主要可以分为两大类。一类工作是用Monte Carlo estimation直接attack (2),事实上,我们有

, (4)

其中 称为score function,这就是所谓的black box variational inference (BBVI) [3]。这样粗暴做法的直接后果是variance太大,从而导致收敛极慢,现实很难work。那么研究重点就回到了如何reduce variance,接连出现了各种技术,比如Rao-Blackwellization [3],control variates [3,4],overdispersed black-box variational inference (O-BBVI) [20]等等。

(iii) 另一方面的工作就是所谓的reparameterization tricks,代表工作当然是Max Welling的variational auto-encoder (VAE) [5]。其idea非常自然,如果我们能把一个复杂的variable用一个standard variable表示,比如 ,其中 ,那么经过换元,式(2)可以写成

. (5)

这样我们就可以直接把 从积分号外面移到里面,即

. (6)

各种empirical的工作 [5,6] 证明,reparameterization trick可以很好地reduce variance,使得Monte Carlo estimate变得doable。至于理论上为什么(6)比(4)的variance小,我还没有见到严格的分析。另外,VAE里通过引入一个inference/recognition network 把local parameters转换为global parameters(即network weights),可以方便地处理unseen sample。所以简单地说,VAE=reparameteriztion+inference net。

(iv) reparameterization的一个巨大缺陷是,它无法处理discrete variable,这也是BBVI的工作经常嘲讽repar的地方。理论上讲,BBVI是universal的(见式(4)),只要variance控制得好,它可以处理任何VI问题。幸运的是,去年ICLR同时抛出了两篇文章 [7,8],都是用了Gumbel-Softmax distribution去relax discrete variables,这样我们就可以对discrete variable进行repar了。不知道以后BBVI的文章该如何继续抨击repar这一点,摊手。

(v) reparameterization的另一个问题是可以做repar的distribution非常有限,想对Gamma做都没那么容易,[5] 给了一些suggestions,但似乎后来大家用到的并不多。automatic differentiation variational inference (ADVI) [9] 通过统一把variational distribution映射到 ,然后assume映射后的variable服从Normal distribution,继而使用repar。但这时如何较好地transform variables就很重要了,比如对于一个简单的Gamma distribution,不同的transform结果会不同,这也增加了如何选择transformation的工作量。另外,Blei等人最新的工作 [22] 使用了acceptance-rejection sampling来扩大可以repar的distributions,非常smart,比如此时Gamma就可以很自然的处理了。但有没有一个更加flexible的方法进行variable transformation呢?这就是normalizing flows (NFs) [6] 的用武之地了。简单地说,NFs就是generalization of reparameterization tricks:以前我们用一个函数做变换( ,相当于一层NN),现在我们可以用多层函数做变换( ,deep learning!),只要复合函数的Jacobian容易求解,而做inference就转变成了学习 的parameter的过程。此时的关键问题是寻找有足够representation power,同时Jacobian又比较好求的一族函数。这方面已经有了不少工作,[6] 给了一个简单的linear-time变换做demo,也提到了可以用infinite flows,比如Langevin Flow和Hamiltonian Flow,Welling等人又提出了inverse autoregressive flows (IAFs) [10],此外还有MADE、NICE等等,我就不再赘述了,有兴趣的可以去参考相关文献。

(vi) 再回到BBVI相关的工作,当我们计算(4)的时候,并没有考虑model本身的结构。而事实上,当我们involve越多的结构信息,越有可能设计新的算法reduce variance。比如local expectation gradients [11],其思想很简单,即观察到Bayesian net的hierarchical structure,在计算 的导数的时候,可以只关注包含 的Markov blanket的项。[11] 大概证明了在某些特殊情况下,比如mean-field以及repar,这么做localization确实可以得到较小的variance。类似的考察local structure的思想也被用在了reparameterization tricks上面,这就是Welling等人提出的local reparameterization tricks [12]。事实上,在实际的计算中,(6)里面的variance由两部分贡献,一部分是mini-batch,另一部分是Monte Carlo,这也被称为doubly stochasticity [13]。mini-batch带来的variance不太好处理,[12] 选择针对第二部分。这里面有一个“牵一发而动全身“的思想,我们一般通过sample 来估计(6)(一个mini-batch),而 小的noise可以传播到所有 上面,从而使 和 之间产生了dependence(而事实上绝大部分情况下 是conditionally independent的),造成较大的variance。但如果我们disentangle这个sampling过程,直接sample ,那么这部分variance就会消失 [13]。另外,[13] 还把这个技术和dropout联系了起来。

(vii) 虽然mean-field assumption会带来很多计算上的便利,但很显然这样做会削弱inference performance,因为一旦引入了mean-field,这就在true posterior和approximated posterior之间造成了不可逾越的鸿沟。不少工作试图减小这部分gap,增加variational distribution的flexibility,比如structured stochastic variational inference (SSVI) [14] (但还是有较多的assumption),auxiliary variables [15],copula variational inference (CVI) [16],variational Gaussian process (VGP) [17] (可以证明在一定条件下是universal的),hierarchical variational models (HVMs) [18]。其基本思想大致都是引入auxiliary variables,从而enrich variational distributions。这里我仅以HVM为例,简单介绍一下思想。HVM还是先假设mean-field,但把variational parameters 看成variables,在之上加上新的prior ,称为variational prior,其中 是variational hyperparameter。这是很直接的Bayesian思想,可见Blei把Bayesian贯彻到底的决心。那么,虽然 是independent,但是 在 之间引入了更多的结构,这依赖于我们选择什么样的variational prior。[18] 选用的NFs作为 ,把最新的技术融合到了自己的工作中,挺有趣的。这也像我们展示了另一个perspective,我们可以把传统的variational distributions看成一个与main model相对应的另一个model,且称为variational model。我们可以根据main model“任意地“设计新的variational model,那么剩下的就是如何进行VI,不同的variational model往往需要设计不同的VI算法,比如HVM里就为variational model引入了新的variational posterior 。

(viii) 我们可以发现,给定一个main model,我们需要设计优化目标(比如KL divergence/ELBO),variational model以及相应的优化算法。至此,我们只提到了其中的两个部分,比如(vii)是variational model,(ii)-(vi)是优化算法。对于优化目标,我们真的只能做ELBO么?显然不是,比如经典的expectation propagation就用到 。而通过generalize ELBO,importance weighted auto-encoders (IWAE) [21] 使用了比ELBO更好(tighter)的lower bound。进一步地,operator variational inference (OPVI) [19] 则重新审视了这个优化目标的设计问题,提出了一个更加general的框架,把KL纳入其中。总的来说,相比前两类问题,这个问题的工作较少,毕竟我们总可以设计“更好”的优化算法来弥补优化目标的“缺陷”。但系统地研究优化目标会使我们更加触及问题的本质,更有科研上的意义。

(ix) 从科研的角度讲,在不同问题之间建立connection是推进认识的必经之路,如果一个学科都是片段或者零散的点,那只能说明它还不够成熟。同样作为generative model,虽然二者对待distribution和优化目标不同,但有一些工作试图建立VAE和GAN (Generative adversarial network)的联系,比如adversarial variational bayes (AVB) [23]。如之前提到的,variational model的expressiveness对于inference performance至关重要,而VAE往往oversimplified。[23] 通过引入auxiliary variables 来增加flexibility,这一点思想上和HVM或NF等并没有本质区别,但技术上不同的是,这里整个问题变成了black box, 是没有explicit form的。类似于GAN,[23] 引入了一个discriminator 来判断 是来自于 还是 (ratio estimation) ,然后通过增加一个adversarial training来maximize ELBO。如果我们进一步把这种black-box modeling的观点推广到main model,再加上hierarchical structure,就产生了所谓的hierarchical implicit model (HIM) [24],其中每一层conditional distribution都有一个random noise作为input,即 。为了在该model下做VI,类似地,[24] 也引入一个discriminator 来判断 是来自于model distribution还是variational distribution,在做VI的同时优化 ,其最优值等于 。不得不说,Dustin Tran,Rajesh Ranganath和David Blei这几年构成了VI铁三角,做了很多有趣的工作。特别地,最近(ICLR‘18)Tran又把HIM用在了GWAS上面,号称比Price的PCA效果更好,具体结果我还没去看。

没想到碎碎念了这么多,写到最后已经不太想写了~ 需要强调的是,VI这块的工作还有很多很多,比如linear dynamical systems [25],Markov random fields [26],我这里只是试图抛砖引玉,实属冰山一角。特别地,VI相关的theory非常少,可能因为确实不容易做?貌似Blei一直在尝试,比如这个 [27],我还没来得及看,大家有兴趣的可以关注一下。最后的最后,再次推荐Blei的综述 [1],入门VI首选!


References

[1] Variational Inference: A Review for Statisticians

[2] [1206.7051] Stochastic Variational Inference

[3] [1401.0118] Black Box Variational Inference

[4] ([1402.0030] Neural Variational Inference and Learning in Belief Networks)

[5] [1312.6114] Auto-Encoding Variational Bayes

[6] [1505.05770] Variational Inference with Normalizing Flows

[7] [1611.01144] Categorical Reparameterization with Gumbel-Softmax

[8] A Continuous Relaxation of Discrete Random Variables

[9] [1603.00788] Automatic Differentiation Variational Inference

[10] [1606.04934] Improving Variational Inference with Inverse Autoregressive Flow

[11] Local Expectation Gradients for Black Box Variational Inference

[12] [1506.02557] Variational Dropout and the Local Reparameterization Trick

[13] Doubly Stochastic Variational Bayes for non-Conjugate Inference

[14] [1404.4114] Structured Stochastic Variational Inference

[15] [1602.05473] Auxiliary Deep Generative Models

[16] [1506.03159] Copula variational inference

[17] [1511.06499] The Variational Gaussian Process

[18] [1511.02386] Hierarchical Variational Models

[19] [1610.09033] Operator Variational Inference

[20] [1603.01140] Overdispersed Black-Box Variational Inference

[21] [1509.00519] Importance Weighted Autoencoders

[22] [1610.05683] Reparameterization Gradients through Acceptance-Rejection Sampling Algorithms

[23] Unifying Variational Autoencoders and Generative Adversarial Networks

[24] [1702.08896] Hierarchical Implicit Models and Likelihood-Free Variational Inference

[25] [1603.06277] Composing graphical models with neural networks for structured representations and fast inference

[26] [1711.02679] Neural Variational Inference and Learning in Undirected Graphical Models

[27] Frequentist Consistency of Variational Bayes

类似的话题

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有