选择贝叶斯模型或交叉验证的最佳方法?


22

当尝试在各种模型或要包括的特征数量中进行选择时,比如说预测,我可以想到两种方法。

  1. 将数据分为训练集和测试集。更好的是,使用自举或k折交叉验证。每次都在训练集中进行训练,并计算测试集中的误差。绘制测试误差与参数数量的关系图。通常,您会得到以下内容:在此处输入图片说明
  2. 通过对参数值进行积分来计算模型的可能性。即,计算,并将其与参数数量相对应。然后,我们得到如下内容:θPd|θPθdθ在此处输入图片说明

所以我的问题是:

  1. 这些方法是否适合解决此问题(确定模型中要包含多少参数,或在多个模型中进行选择)?
  2. 它们相等吗?可能不会。他们会在某些假设下还是在实践中给出相同的最佳模型?
  3. 除了在贝叶斯模型等中指定先验知识的通常的哲学差异之外,每种方法的优缺点是什么?您会选择哪一个?

更新: 我还发现了有关比较AIC和BIC 的相关问题。看来我的方法1与AIC渐近等效,而方法2与BIC渐近相关。但我在那里也读到,BIC等同于“留一法”简历。这意味着在LOO CV等于K倍CV的情况下,训练误差最小值和贝叶斯似然最大值相等。邵军的一篇也许非常有趣的论文“ 线性模型选择的渐近理论 ”与这些问题有关。


我确实没有完整的答案,但是我会提到,我通常不会考虑使用这两种方法来“选择功能数量”。通常,我将机器学习和贝叶斯统计解释为仅包括所有功能,因为它们可能都具有一定程度的最小影响。但是,我认为相对模型复杂性的问题仍然适当。我还要指出,我从未真正执行过您提到的贝叶斯推理;与k折叠或自举的简单性相比,实际上在实践中似乎太混乱了。
Shea Parkes

请注意,Shao纸张仅适用于线性模型。实际上,只有它们的简单结构才能将许多功能用作复杂性度量,从而为所有这些信息标准提供支持。

1
在弱假设下,AIC(不是BIC!)渐近等效于留一法交叉验证(由于Stone提出的“通过交叉验证和Akaike准则选择模型的渐进等效”(1977年))。您所提及问题的来源是错误的,Rob Hyndman在评论中对其进行了更正。我认为也可以在这里进行更正,以防止传播错误的想法,这是个好主意。
理查德·哈迪

Answers:


13
  1. 这些方法是否适合解决此问题(确定模型中要包含多少参数,或在多个模型中进行选择)?

可能是,是。如果您有兴趣获得可预测最佳的模型,则在考虑的模型列表中,拆分/交叉验证方法可以很好地做到这一点。如果您对知道哪个模型(在假定模型的列表中)实际上是生成数据的模型感兴趣,那么第二种方法(评估模型的后验概率)就是您想要的。

  1. 它们相等吗?可能不会。他们会在某些假设下还是在实践中给出相同的最佳模型?

不,它们在总体上并不等效。例如,使用AIC(Akaike的“信息准则”)选择“最佳”模型大约相当于交叉验证。使用BIC(贝叶斯信息准则)对应于使用后验概率,再约。这些标准不相同,因此通常应该期望它们导致不同的选择。他们可以给出相同的答案-每当预测最佳的模型也恰好是事实时-但在许多情况下,拟合最佳的模型实际上是过度拟合的模型,这导致方法之间的分歧。

他们在实践中同意吗?这取决于您的“实践”涉及什么。尝试一下,找出答案。

  1. 除了在贝叶斯模型等中指定先验知识的通常的哲学差异之外,每种方法的优缺点是什么?你会选哪一个?
  • 通常,进行交叉验证的计算要容易得多,而不是计算后验概率
  • 通常很难令人信服地说明“真实”模型是您要选择的列表之一。这是使用后验概率的问题,但不是交叉验证的问题
  • 两种方法都倾向于使用相当任意的常量。就变量数量而言,一个额外的预测单位值多少钱?我们相信每个模型多少先验
    • 我可能会选择交叉验证。但是在提交之前,我想了解很多关于为什么要进行模型选择的信息,即所选模型将用于什么目的。如果例如需要因果推断,则两种形式的模型选择都不适合。

16

优化是统计中万恶之源!; o)

每当您尝试基于对有限数据样本进行评估的标准来选择模型时,都可能会导致过度拟合模型选择标准的风险,最终导致模型比开始时更糟。交叉验证和边际可能性都是明智的模型选择标准,但它们都依赖于有限的数据样本(AIC和BIC也是这样-复杂度损失可以提供帮助,但不能解决此问题)。我发现这是机器学习中的一个重要问题,请参阅

GC Cawley和NLC Talbot,模型选择中的过拟合和性能评估中的后续选择偏差,《机器学习研究杂志》,2010年。11,第2079-2107页,2010年7月。(www

从贝叶斯角度来看,最好对所有模型选择和参数进行集成。如果您没有优化或选择任何东西,那么过度拟合将变得更加困难。缺点是您最终会遇到困难的积分,而这通常需要使用MCMC解决。如果您想要最佳的预测性能,那么我建议采用完全贝叶斯方法;如果您想了解数据,那么选择最佳模型通常会有所帮助。但是,如果您对数据进行重新采样并每次都得到不同的模型,则意味着拟合过程不稳定,并且没有一个模型可以可靠地理解数据。

请注意,交叉验证和证据之间的一个重要区别是,边际可能性的值假定模型未指定错误(本质上是模型的基本形式是适当的),如果合适,则可能会产生误导性的结果。交叉验证没有这样的假设,这意味着它可能更健壮。


贝叶斯积分是一种强大的方法。但是,总是会怀疑模型选择是否是实现此目标的正确方法。动机是什么?为什么不提出一个灵活而恰到好处的完整模型呢?
Frank Harrell

@FrankHarrell许多灵活的模型都包括正则项和其他超参数,对其进行调整也是模型选择,并且会遇到过分拟合选择标准的问题。拟合会带来过度拟合的风险,并且适用于所有级别。但是,如果您事先了解模型的结构,则应该使用该专家知识。
迪克兰有袋动物

1
最好寻求一种不需要调整的方法,但这并不总是可能的。我的主要观点是模型规范比模型选择更好,并且不要认为特征选择是一个崇高的目标。
弗兰克·哈雷尔

@FrankHarrell功能选择很少有帮助。尽可能避免优化,这涉及基于有限的数据样本进行任何模型选择/调整(当然样本越大,风险越低)。
迪克兰有袋动物
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.