防止帕累托平滑重要性抽样(PSIS-LOO)失败


10

我最近开始使用帕累托平滑重要性抽样留一法交叉验证(PSIS-LOO),这些论文对此进行了介绍:

  • Vehtari,A.&Gelman,A.(2015年)。帕累托平滑重要性抽样。arXiv预印本(链接)。
  • Vehtari,A.,Gelman,A.,&Gabry,J.(2016年)。使用留一法交叉验证和WAIC的实用贝叶斯模型评估。arXiv预印本(链接

这代表了一种非常好的样本外模型评估方法,因为它允许通过一次MCMC运行就可以执行LOO-CV,并且据称比现有的信息标准(例如WAIC)更好。

k^ik^i0.7

不幸的是,我发现在将该方法应用于问题时,对于大多数感兴趣的模型,我发现的很大一部分。毫不奇怪,一些报告的LOO对数似然显然是毫无意义的(与其他数据集相比)。作为双重检查,我执行了传统的(且费时的)10倍交叉验证,发现确实在上述情况下,PSIS-LOO给出了非常错误的结果(从正面来看,结果与10所有的模型的CV。作为记录,我使用的是Aki Vehtari的PSIS-LOO 的MATLAB实现k^i0.7k^i0.7

也许我很倒霉,因为我目前应用此方法的第一个问题对PSIS-LOO来说“困难”,但是我怀疑这种情况可能相对普遍。对于像我这样的案例,Vhttary,Gelman&Gabry的论文简单地说:

即使PSIS估计具有有限的方差,当,用户也应考虑针对有问题的直接从进行采样,请使用倍交叉验证,或使用更可靠的模型。k^>0.7p(θs|yi)ik

这些是显而易见的但不是真正理想的解决方案,因为它们都很费时或需要额外的摆弄(我很欣赏MCMC 模型评估都是摆弄,但越少越好)。

我们是否可以预先应用任何常规方法来尝试防止 PSIS-LOO失败?我有一些初步的想法,但我想知道人们是否已经采用了经验方法。

Answers:


8

作为记录,我在Stan用户邮件列表中发布了一个类似的问题,您可以在此处找到。PSIS-LOO原始论文的一位作者和Stan的其他撰稿人回答了我。以下是我的个人总结。

简短的答案是,没有已知的通用方法可以防止PSIS-LOO失败。如果PSIS-LOO失败,通常是因为模型有问题,并且必须由用户来解决。

具体而言,PSIS-LOO可能失败的原因通常是因为一个或多个LOO分布发生偏移和/或比整个后验分布宽,这可能是由于有影响的观察结果,并且重要性采样分布崩溃了一个或几个点。

我以为您可以尝试采用某种形式的并行后部回火方法来解决此问题。这个想法不一定是错误的,但有人向我指出:

  • 教科书的后回火仍然需要大量的个案研究才能找到合适的温度水平,因为目前尚无明显的或已知的方法(顺便说一句,由于这个原因,Stan不包括平行回火);
  • 如果您使用两个以上的温度水平(可能需要采用可靠的方法),则最终的计算成本接近K倍交叉验证的成本,或在有问题的LOO分布上运行MCMC的成本。

简而言之,如果PSIS-LOO失败了,似乎很难获得一种与其他简单补丁一样强大和通用的方法。这就是为什么Vehtari,Gelman&Gabry根据我在原始问题中发布的报价来建议这些方法的原因。

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.