美文网首页
论文阅读“Advances in Variational Inf

论文阅读“Advances in Variational Inf

作者: 掉了西红柿皮_Kee | 来源:发表于2022-01-22 16:39 被阅读0次

    Zhang C, Bütepage J, Kjellström H, et al. Advances in variational inference[J]. IEEE transactions on pattern analysis and machine intelligence, 2018, 41(8): 2008-2026.
    --
    该论文为综述性论文,所以笔者打算分几部分来完成论文的阅读。(都是因为太菜了
    本部分为Scalable Variational Inference

    大数据集对贝叶斯算法的计算可行性提出了新的挑战,使得可扩展的推断技术变得必不可少。主要包含(1)随机变分推理 (SVI),它使用随机梯度下降 (SGD) 将 VI 扩展到大型数据集;(2) SVI 的实际方面,例如自适应学习率和方差减少;(3)讨论了改进 VI 可扩展性的方法;包括稀疏推断、折叠推断和分布式推断。

    上图为对应的图模型的表示。包含局部隐含因子\xi=(\xi_1,..,\xi_M )和全局变量\theta。类似的变分参数可以表示为\lambda=(\gamma,\phi),其中\gamma对应为全局隐变量,\phi是局部变分参数的集合。可以看出,整个模型依赖于超参数\alpha。这里记录mini-batch size为S
    Stochastic Variational Inference

    变分推断(VI)将贝叶斯推断转化为一个优化问题。对于许多模型而言,变分目标具有特殊的结构,即它是来自所有M 个单独数据点的贡献的总和。这种类型的问题可以使用随机优化有效地解决。随机变分推断(Stochastic Variational Inference)相当于将随机优化应用于 VI 的目标函数中,从而将 VI 扩展到非常大的数据集。
    由上图给出的通用图模型的ELBO的形式如下:

    笔者认为上述的ELBO可以解释为KL和各数据点期望两个部分。其实第一项的期望为先验分布p(\theta|\alpha)和待拟合的变分分布q(\theta|\gamma)之间的度量。第二项为期望部分,这一部分主要关注的是\xi_i对于样本x_i的还原能力。
    其中,变分分布给定如下:
    上式(9)可以使用坐标上升或者梯度下降方法来优化。在这两种情况下,每个迭代或梯度步骤都随着样本量M一起缩放,因此对于大数据来说是昂贵的。相比之下,SVI 引入随机梯度下降的思想解决了这个问题,即在每次的迭代中,由一个随机选择的大小为S的mini-batch获得ELBO的随机估计:
    SVI 需要与常规 SGD 相同的收敛条件。小批量索引i_s必须随机均匀地选取。关于S的选取,需满足1\leq S \ll M。较大的S值会降低随机自然梯度的方差。当S = M时,学习率设置为 1 时,SVI 减少到传统的批处理 VI。然而,想要节省计算资源,必须满足S \ll MS 的最佳选择取决于与处理 mini-batch 相关的计算开销之间的权衡,例如对全局参数执行推断(倾向于选择具有较低梯度噪声的较大 mini-batch,允许更大的学习率)和在小批量中迭代局部参数的成本(更倾向于小批量)。当然,还需要考虑实际中计算资源的内存结构。为了进一步保证参数空间中的每一个点都可以参与优化,且梯度噪声下降得足够快以保证收敛,参数学习率必须随着迭代t满足Robbins-Monro条件: 随机梯度方法已适用于各种方案中,例如伽马过程和变分自动编码器。近年来,VI 的大多数进步都是依靠 SVI 方案开发的。
    下面,我们将粗略的介绍如何进一步调整 SVI 以加速收敛。
    Tricks of the Trade for SVI

    作为 SVI 基础的 SGD 的收敛速度取决于梯度估计的方差。较小的梯度噪声允许较大的学习率并会加速收敛。本节介绍 SVI 中的trade-off技巧,例如自适应学习率和方差减少。其中一些方法也常适用于 SGD。

    Adaptive Learning Rate and Mini-batch Size.

    众所周知,算法的收敛速度取决于学习率和mini-batch的大小。

    关于学习率,一般配合着优化器来使用。在现有SVI的方法中,会直接使用常用的那些优化器如:RMSProp,AdaGrad,Adam等。虽然这些方法并不是专门为SVI设计的,但是也可以达到优化的目的。Ranganath et al.【An adaptive learning rate for stochastic variational inference】首次在SVI的全局变分参数中引入了自适应的学习率:

    有人指出可以在保持学习率固定的同时调整小批量大小,而不需要调整学习率,并实现了类似的效果。为了减少 SGD 方差,【Coupling adaptive batch sizes with learning rate】 建议选择与目标函数相对于其最优值的值成比例的小批量大小。在实践中,估计的梯度噪声协方差和梯度的大小被用来估计最优的mini-batch size。

    Variance Reduction

    除了通过学习率和小批量大小控制优化路径外,还可以减少方差,从而实现更大的梯度步长。 SVI 中经常使用方差减少来实现更快的收敛。如下,作者总结了关于如何通过控制变量、非均匀抽样来实现这一目标。

    • Control Variates
      控制变量是一个随机项,可以添加到随机梯度中,使其期望保持不变,但其方差会降低。控制变量需要与随机梯度相关,并且易于计算。在蒙特卡罗模拟和随机优化中使用控制变量来减少方差较为少见。
      在SVRG中,利用之前所有样本数据的梯度构造了一个控制变量,可以充分利用所有相关的优化路径上的梯度。传统梯度的更新为: 添加控制变量之后,梯度的更新变为: SVRG 需要在每 m 次迭代中完全通过数据集来计算完整梯度,即使对于大型数据集,可以通过放宽到非常大的 mini-batch以达到效果。
    • Non-Uniform Sampling
      不同于以相等概率对数据点进行二次采样,可以使用非均匀采样来选择具有较低梯度方差的小批量。但因为采样机制的计算复杂性与模型参数的维度有关 ,实际中这些方法并不总是实用的。其替代方法旨在对相似点进行去相关并采样多样化的小批量。这些方法包括分层抽样,其中一个基于元数据或标签从预先定义的子组中抽样数据;基于聚类的抽样,这相当于使用k-means对数据进行聚类,然后从每个具有调整概率的类簇中采样;以及多样化的小批量采样,使用排斥点过程来抑制同一小批量中具有相似特征的数据点的概率。所有这些方法都已被证明可以减少方差,也可以用于学习不平衡数据。
    使用模型结构来实现快速收敛
    • Collapsed Inference
      Collapsed Variational Inference (CVI) 依赖于分析整合某些模型参数的想法。由于要估计的参数数量减少,推理通常更快。
    • Sparse inference
      Sparse inference在变分方法中引入了额外的低秩近似,从而实现了更具可扩展性的推断。Sparse inference既可以解释为建模选择,也可以解释为推断方法。
    • Parallel and Distributed Inference
      变分推断可以适用于分布式计算场景,其中数据或参数的子集分布在多台机器上。在大规模场景中通常需要分布式推断方法,其中数据和计算分布在多台机器上。独立的潜在变量模型可以简单地进行并行计算。但是,需要模型特定的设计(例如重参数化)来实现高效的分布式推理。

    虽然看完了,但是好像没怎么看懂。。就当交作业了。。 菜狗本菜

    相关文章

      网友评论

          本文标题:论文阅读“Advances in Variational Inf

          本文链接:https://www.haomeiwen.com/subject/rvjuhrtx.html