Questions tagged «variational-bayes»

变分贝叶斯方法近似贝叶斯推理和机器学习中发现的难解积分。这些方法主要用于以下两个目的之一:近似后验分布,或限制观测数据的边际可能性。


1
变分推理与MCMC:何时选择一个?
我觉得我得到两个VI和MCMC的总体思路,包括MCMC像Gibbs抽样的各种口味,新都黑斯廷斯等这个文件提供了两种方法的精彩论述。 我有以下问题: 如果我想进行贝叶斯推理,为什么要选择一种方法而不是另一种方法? 每种方法的优缺点是什么? 我知道这是一个相当广泛的问题,但是任何见解都将受到高度赞赏。

1
贝叶斯和EM之间的关系
我在某处读到,变分贝叶斯方法是EM算法的概括。确实,算法的迭代部分非常相似。为了测试EM算法是否是Variational Bayes的特殊版本,我尝试了以下方法: YYY是数据,是潜在变量的集合,是参数。在变分贝叶斯中,我们可以做一个近似,使得。当 s为简单,易于处理的分布。XXXΘΘ\ThetaP(X,Θ|Y)≈QX(X)QΘ(Θ)P(X,Θ|Y)≈QX(X)QΘ(Θ)P(X,\Theta|Y) \approx Q_X(X)Q_\Theta(\Theta)QQQ 由于EM算法找到了MAP点估计值,因此我认为,如果我使用Delta函数,则变分贝叶斯可以收敛到EM:。是通常在EM中完成的参数的第一个估计。Q1Θ(Θ)=δΘ1(Θ)QΘ1(Θ)=δΘ1(Θ)Q^1_\Theta(\Theta)=\delta_{\Theta^1}(\Theta)Θ1Θ1\Theta_1 当给出,,其最小化的KL发散由公式发现 上面的公式简化为,此步骤等效于Expectation步骤EM算法!Q1Θ(Θ)=δΘ1(Θ)QΘ1(Θ)=δΘ1(Θ)Q^1_\Theta(\Theta)=\delta_{\Theta^1}(\Theta)Q1X(X)QX1(X)Q^1_X(X)Q1X(X)=exp(EδΘ1[lnP(X,Y,Θ)])∫exp(EδΘ1[lnP(X,Y,Θ)])dXQX1(X)=exp⁡(EδΘ1[ln⁡P(X,Y,Θ)])∫exp⁡(EδΘ1[ln⁡P(X,Y,Θ)])dXQ^1_X(X)=\frac{\exp(E_{\delta_{\Theta^1}}[\ln P(X,Y,\Theta)])}{\int\exp(E_{\delta_{\Theta^1}}[\ln P(X,Y,\Theta)])dX}Q1X(X)=P(X|Θ1,Y)QX1(X)=P(X|Θ1,Y)Q^1_X(X)=P(X|\Theta^1,Y) 但是我不能将“最大化”步骤作为此步骤的延续。在下一步中,我们需要计算,根据变分贝叶斯迭代规则,这是:Q2Θ(Θ)QΘ2(Θ)Q^2_\Theta(\Theta) Q2Θ(Θ)=exp(EP(X|Θ1,Y)[lnP(X,Y,Θ)])∫exp(EP(X|Θ1,Y)[lnP(X,Y,Θ)])dΘQΘ2(Θ)=exp⁡(EP(X|Θ1,Y)[ln⁡P(X,Y,Θ)])∫exp⁡(EP(X|Θ1,Y)[ln⁡P(X,Y,Θ)])dΘQ^2_\Theta(\Theta)=\frac{\exp(E_{P(X|\Theta^1,Y)}[\ln P(X,Y,\Theta)])}{\int\exp(E_{P(X|\Theta^1,Y)}[\ln P(X,Y,\Theta)])d\Theta} VB和EM算法是否真的以这种方式连接?我们如何得出EM作为变分贝叶斯的特例,我的方法是正确的吗?

2
变分自动编码器中如何权衡KLD损耗与重构损耗
在我见过的VAE的几乎所有代码示例中,损失函数的定义如下(这是张量流代码,但是我看到theano,torch等类似。它也适用于卷积网络,但这也不太相关) ,仅影响轴的总和): # latent space loss. KL divergence between latent space distribution and unit gaussian, for each batch. # first half of eq 10. in https://arxiv.org/abs/1312.6114 kl_loss = -0.5 * tf.reduce_sum(1 + log_sigma_sq - tf.square(mu) - tf.exp(log_sigma_sq), axis=1) # reconstruction error, using pixel-wise L2 loss, for each batch rec_loss = …


4
什么时候应该使用变型自动编码器而不是自动编码器?
我了解变体自动编码器和常规(确定性)自动编码器的基本结构以及它们背后的数学原理,但是何时,为何以及为什么我会偏爱一种自动编码器呢?我能想到的是,变分自动编码器的潜在变量的先验分布使我们可以对潜在变量进行采样,然后构造新图像。与确定性自动编码器相比,可变自动编码器的随机性有什么优势?

1
机器学习模型的“能力”是什么?
我正在研究Carl Doersch撰写的有关变式自动编码器的教程。在第二页中指出: 此类框架中最受欢迎的框架之一是本教程的主题“变体自动编码器” [1,3]。该模型的假设很弱,并且通过反向传播训练很快。VAE确实可以近似,但是在给定大容量模型的情况下,这种近似引入的误差可以说很小。这些特征促使它们迅速普及。 过去,我已经阅读了有关大容量模型的这类说法,但似乎没有找到明确的定义。我也发现了这个相关的stackoverflow问题,但对我来说,答案非常不令人满意。 是否有模型容量的定义?你能衡量吗?


1
变分推理,KL散度要求真
就我(非常适度)对变分推理的理解而言,人们试图通过找到优化以下内容的分布q来近似未知分布:pppqqq KL(p||q)=∑xp(x)logp(x)q(x)KL(p||q)=∑xp(x)logp(x)q(x)KL (p||q) = \sum\limits_{x} p(x)log \frac {p(x)}{q(x)} 每当我花时间去理解变分推理时,我都会不断遵循这个公式,并且不禁觉得自己错过了重点。看来我需要知道ppp才能计算KL(p||q)KL(p||q)KL(p||q)。但总的来说,我不知道该分布ppp。 每当我尝试阅读一些变化的东西时,正是这一点困扰着我。我想念什么? 编辑: 由于@wij的回答,我将在此处添加一些额外的注释,我将尝试更加精确。 在我感兴趣的情况下,考虑以下条件确实是完全合理的; p(θ|D)=p(D|θ)p(θ)p(D)∝p(D|θ)p(θ)p(θ|d)=p(d|θ)p(θ)p(d)∝p(d|θ)p(θ)p(\theta | D) = \frac{p(D|\theta)p(\theta)}{p(D)} \propto p(D|\theta)p(\theta) 在这种情况下,我可以知道应该成比例地显示,因为我将为p (D | θ )和p (θ )做出模型选择。那么,我是否正确地说我需要选择一个家庭分布q [让我们说高斯],这样我现在就可以估计K L (p (θ (D | D )| | q ))。感觉在这种情况下,我试图拟合接近非标准化p (D | θ )的高斯。pppp(D|θ)p(d|θ)p(D|\theta)p(θ)p(θ)p(\theta)qqqKL(p(θ|D)||q)ķ大号(p(θ|d)||q)KL(p(\theta|D) || q)。这个对吗?p(D|θ)p(θ)p(d|θ)p(θ)p(D|\theta)p(\theta) 如果是这样,感觉就像我假设我的后验是正态分布,而我只是试图针对散度找到该分布的可能值。KLķ大号KL


2
单位为高斯的KL损失
我一直在执行VAE,并且在网上注意到简化的单变量高斯KL散度的两种不同实现。原始发散按照这里是 如果我们假设我们事先是单位高斯即μ2=0和σ2=1,这简化向下 ķ大号升ö小号小号=-日志(σ1)+σ 2 1 +μ 2 1ķ大号升Ø 小号小号= 日志(σ2σ1个)+ σ21个+ (μ1个- μ2)22个σ22− 12KLloss=log⁡(σ2σ1)+σ12+(μ1−μ2)22σ22−12 KL_{loss}=\log(\frac{\sigma_2}{\sigma_1})+\frac{\sigma_1^2+(\mu_1-\mu_2)^2}{2\sigma^2_2}-\frac{1}{2} μ2= 0μ2=0\mu_2=0σ2= 1σ2=1\sigma_2=1 这就是我的困惑所在。尽管我发现上述实现有一些晦涩的github仓库,但我更常用的是:ķ大号升Ø 小号小号= - 日志(σ1个)+ σ21个+ μ21个2− 12KLloss=−log⁡(σ1)+σ12+μ122−12 KL_{loss}=-\log(\sigma_1)+\frac{\sigma_1^2+\mu_1^2}{2}-\frac{1}{2} ķ大号升Ø 小号小号= - 12(2 日志(σ1个)- σ21个- μ21个+ 1 )KLloss=−12(2log⁡(σ1)−σ12−μ12+1) KL_{loss}=-\frac{1}{2}(2\log(\sigma_1)-\sigma_1^2-\mu_1^2+1) = - 12(日志(σ1个)- σ1个- μ21个+ 1 )=−12(log⁡(σ1)−σ1−μ12+1) =-\frac{1}{2}(\log(\sigma_1)-\sigma_1-\mu^2_1+1) 例如在官方Keras自动编码器教程中。我的问题是,这两者之间我想念什么?主要区别是在对数项上降低因子2,而不是对方差求平方。从分析上讲,我成功地使用了后者,以获取其价值。在此先感谢您的帮助!

1
贝叶斯与蒙特卡洛相结合
我正在阅读变分贝叶斯,据我所知,它归结为这样的想法:使用函数q逼近(其中z是模型的潜在变量,而x是观察到的数据)(z ),假设q分解为q i(z i),其中z i是潜在变量的子集。然后可以证明最优因子q i(z i)为: q ∗p (ž∣ x )p(z∣x)p(z\mid x)žzzXxxq(z)q(z)q(z)qqqq一世(z一世)qi(zi)q_i(z_i)ž一世ziz_iqi(zi)qi(zi)q_i(z_i)q∗i(zi)=⟨lnp(x,z)⟩z/i+const.qi∗(zi)=⟨ln⁡p(x,z)⟩z/i+const. q^*_i(z_i) = \langle \ln p(x, z)\rangle_{z/i} + \text{const.} 其中尖括号表示除以外的所有潜在变量对分布q (z )的期望。ziziz_iq(z)q(z)q(z) 现在,通常通过分析来评估此表达式,以给出近似目标值的准确答案。但是,在我看来,由于这是一个期望,因此一个显而易见的方法是通过抽样来近似该期望。这将为您提供近似目标函数的近似答案,但是它使算法非常简单,甚至在分析方法不可行的情况下。 我的问题是,这是已知方法吗?它有名字吗?是否有理由为什么它可能无法很好地工作,或者可能无法产生如此简单的算法?

2
没有采样的高维推理问题的不确定性估计?
我正在研究一个高维推理问题(大约2000个模型参数),通过结合基于梯度的优化和遗传算法,可以找到对数后验的全局最大值,从而能够稳健地执行MAP估计。 除了找到MAP估计值外,我非常希望能够对模型参数的不确定性做出一些估计。 我们能够有效地计算相对于参数的对数后验的梯度,因此长期而言,我们的目标是使用哈密顿量MCMC进行一些抽样,但是现在我对基于非抽样的估计感兴趣。 我知道的唯一方法是在该模式下计算Hessian的逆值,以近似于多元多元法线的后验,但即使对于这样的大型系统,这似乎也不可行,因为即使我们计算出∼4×106∼4×106\sim 4\times10^{6}元素粗麻布我敢肯定我们找不到它的逆。 谁能建议在这种情况下通常使用哪种方法? 谢谢! 编辑 -有关该问题的其他信息 背景技术 这是一个与大型物理实验有关的反问题。我们有一个2D三角形网格,描述了一些物理场,我们的模型参数是这些场在网格每个顶点处的物理值。网格具有大约650个顶点,我们对3个字段进行了建模,因此这就是我们2000个模型参数的来源。 我们的实验数据来自不能直接测量这些场的仪器,而是来自那些复杂的非线性函数的量。对于每种不同的仪器,我们都有一个正向模型,该模型将模型参数映射到实验数据的预测,并且将预测与测量值进行比较可得出对数似然。 然后,我们总结来自所有这些不同工具的对数似然率,并添加一些对数优先级值,这些值将某些物理约束应用于字段。 因此,我怀疑这个“模型”是否整齐地归为一类-我们无法选择模型是什么,它取决于实际仪器如何收集我们的实验数据。 数据集 数据集由500x500张图像组成,每个摄像机只有一张图像,因此总数据点为500x500x4 = 10610610^6。 错误模型目前, 我们将问题中的所有错误都设为高斯。在某些时候,我可能会尝试移至Student-t错误模型,只是为了获得更大的灵活性,但是对于高斯人来说,事情似乎仍然运作良好。 可能性示例 这是一个等离子物理实验,我们的大部分数据来自指向等离子的相机,镜头前有特定的滤光片,只能观察光谱的特定部分。 要重现数据,有两个步骤;首先,我们必须对来自网格上等离子的光进行建模,然后我们必须对该光进行建模,使其返回相机图像。 不幸的是,对来自等离子体的光进行建模取决于有效的速率系数,即在给定电场的情况下,不同过程发出多少光。这些速率是由一些昂贵的数值模型预测的,因此我们必须将它们的输出存储在网格中,然后进行插值以查找值。费率函数数据仅计算一次-我们将其存储,然后在代码启动时从中构建一个样条,然后将该样条用于所有函数评估。 假设R1R1R_1和R2R2R_2是速率函数(我们通过插值法对其求值),则网格E i的第iii个顶点的发射由 E i = R 1(x i,y i)+ z i给出R 2(x i,y i) 其中(x ,y ,z )EiEi\mathcal{E}_iEi=R1(xi,yi)+ziR2(xi,yi)Ei=R1(xi,yi)+ziR2(xi,yi) \mathcal{E}_i = R_1(x_i, y_i) + z_i R_2(x_i, y_i) …

2
随机变分推断在高斯贝叶斯混合中的应用
我试图实现与随机变推理高斯混合模型,如下文。 这是高斯混合的pgm。 根据本文,随机变异推断的完整算法为: 我仍然对将其缩放到GMM的方法感到非常困惑。 首先,我认为局部变分参数仅为qzqzq_z,其他均为全局参数。如果我错了,请纠正我。步骤6是什么意思as though Xi is replicated by N times?我应该怎么做才能做到这一点? 你能帮我吗?提前致谢!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.