贝叶斯 vs MLE,过拟合问题

机器算法验证 贝叶斯 模型选择 过拟合
2022-02-10 07:38:31

在 Bishop 的 PRML 书中,他说,过拟合是最大似然估计 (MLE) 的一个问题,而贝叶斯可以避免它。

但我认为,过度拟合更多是关于模型选择的问题,而不是用于进行参数估计的方法。也就是说,假设我有一个数据集,它是通过生成的,现在我可能会选择不同的模型来拟合数据并找出哪一个是最好的。并且考虑的模型是不同阶的多项式模型,是 1 阶,是 2 阶,是 9 阶。D

f(x)=sin(x),x[0,1]
HiH1H2H3

现在我尝试将数据与 3 个模型中的每一个进行拟合,每个模型都有其参数,表示DwiHi

使用 ML,我将对模型参数进行点估计,而太简单了,总是会欠拟合数据,而太复杂,会过拟合数据,只有才能很好地拟合数据。wH1H3H2

我的问题是,

1)模型会过拟合数据,但我不认为这是ML的问题,而是模型本身的问题。因为,对使用 ML不会导致过度拟合。我对吗?H3H1,H2

2)与贝叶斯相比,ML确实有一些缺点,因为它只是给出了模型参数的点估计,并且过于自信。而贝叶斯不仅依赖于参数的最可能值,还依赖于给定观察数据的参数的所有可能值,对吧?wD

3)为什么贝叶斯可以避免或减少过拟合?据我了解,我们可以使用贝叶斯进行模型比较,即给定数据,我们可以找出正在考虑的每个模型的边际似然(或模型证据),然后选择边际似然最高的那个,对吧? 如果是这样,那是为什么?D

3个回答

优化是统计中万恶之源。每当您通过优化在有限数据样本上评估的某些合适标准来选择模型时,您都会冒着过度拟合标准的风险,即将统计量减少到超出泛化性能改进的点和减少而是通过利用数据样本的特性(例如噪声)获得。贝叶斯方法效果更好的原因是您没有优化任何东西,而是边缘化(整合)所有可能的选择。那么问题就在于对模型的先验信念的选择,因此一个问题已经消失,但另一个问题出现了。1


1这包括在贝叶斯设置中最大化证据(边际可能性)。例如,请参阅我的论文中高斯过程分类器的结果,如果超参数过多,优化边际似然会使模型变得更糟(注意根据边际似然选择将倾向于支持具有大量超参数的模型-参数作为这种形式的过度拟合的结果)。

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

作为一般响应,如果您使用“最小二乘”类型的回归模型,贝叶斯和 ML 之间确实没有太大区别,除非您对回归参数使用信息先验。针对具体情况:

1)H9不一定会过度拟合数据 - 仅当您有接近 9 个观察值时。如果您有 100 个观察值,则大多数所谓的“过度拟合”系数将接近于零。H1几乎总是会导致“欠拟合”——因为会错过明显的曲率

2)对于像多项式展开这样的“线性”而言,这是不正确的(“线性”意味着相对于参数是线性的,而不是x)。最小二乘的 ML 估计与无信息先验或大样本量下的后验均值相同。事实上,您可以证明 ML 估计可以被认为是各种模型下的“渐近”后验均值。

3)贝叶斯方法可以避免过度拟合仅适用于适当的先验。这与您在某些拟合算法中看到的惩罚项类似。例如,L2 惩罚 = 正常先验,L1 惩罚 = 拉普拉斯先验。

基本上,您通过增加多项式的次数来增加模型空间的参数数量或自由度,即。它的维度。添加的参数越多,模型就越容易拟合训练数据。但这也很大程度上取决于观察的数量。你的模型H1H2如果观察的数量很少,也可能会过度拟合训练数据,就像H3如果训练实例的数量足够大,可能根本不会过拟合。

例如,让我们严重夸大并假设您只得到2训练示例,甚至比H1总是会过度拟合您的数据。

例如通过正则化强加先验的优点是参数要么缩小到零或一些其他预定义值(如果你愿意,你甚至可以添加参数以将系数“绑定”在一起),因此你隐含地约束参数和减少模型过度拟合的“自由度”。例如,使用套索(即。l1正则化或等效的拉普拉斯先验)并调整相应的参数(例如使用 10x 交叉验证)将自动摆脱多余的参数。贝叶斯解释是类似的:通过强加先验,您将参数限制为一些更可能的值,从整体数据中推断出来。