衡量模型复杂性


19

我们如何比较具有相同数量参数的两个模型的复杂性?

编辑09/19:为澄清起见,模型复杂度是衡量从有限数据中学习的难易程度的一种度量。当两个模型均能很好地拟合现有数据时,具有较低复杂度的模型将为将来的数据提供较低的误差。当使用近似值时,从技术上讲这可能并不总是正确的,但是如果在实践中倾向于正确的话就可以了。各种近似给出不同的复杂度度量


您能否提供有关模型可用属性的更多信息?
shabbychef

这是一个悬而未决的问题,所以我的问题将是-我需要什么样的属性才能衡量复杂性?在最基本的层面上,一个概率模型是一组概率分布的,而且我通过挑选最适合的成员拟合模型数据
雅罗斯拉夫Bulatov

3
到底什么是“复杂性”?(这不是一个简单的问题!)在没有正式定义的情况下,我们不能希望对某些事物进行有效的比较。
ub

这基本上就是我要问的问题
Yaroslav Bulatov

2
但是,您能否至少给我们一个提示,说明您试图在“复杂性”一词中捕获模型的哪个方面?没有这个,这个问题就是模棱两可,不能接受一个合理的答案。
ub

Answers:


12

除了最小描述长度的各种度量(例如,归一化最大似然,Fisher Information近似值)外,还有两种其他方法值得一提:

  1. 参数引导程序。它比要求严格的MDL措施容易实施。Wagenmaker及其同事
    写的一篇不错的论文:Wagenmaker,E.-J.,Ratcliff,R.,Gomez,P.和Iverson,GJ(2004)。使用参数引导程序评估模型模拟数学心理学杂志,48,28-50。
    摘要:

    我们提出了一种通用的采样程序来量化模型模仿,定义为模型考虑竞争模型生成的数据的能力。这种采样程序称为参数自举交叉拟合方法(PBCM;参见Williams(JR Statist。Soc。B 32(1970)350; Biometrics 26(1970)23)),它会产生拟合优度差异的分布预期在每个竞争模型下。在PBCM的数据通知版本中,生成模型具有通过拟合考虑中的实验数据而获得的特定参数值。可以将数据告知的差异分布与拟合优度中观察到的差异进行比较,以量化模型的适当性。在PBCM的数据不通知版本中,根据先验知识,生成模型的参数值范围相对较大。通过几个示例说明了已通知的数据和未通知的PBCM的应用。

    更新:用简单的英语评估模型模仿。您采用两个竞争模型之一,并随机选择该模型的一组参数(是否通知数据)。然后,使用所选的参数集从该模型生成数据。接下来,让两个模型拟合生成的数据,并检查两个候选模型中哪个模型拟合效果更好。如果两个模型都具有同等的灵活性或复杂性,则从中生成数据的模型应该更合适。但是,如果另一个模型更复杂,尽管数据是从另一个模型生成的,但它可能会提供更好的拟合度。您对两个模型都重复了几次(即,让两个模型都产生数据并查看两者中哪个更合适)。“过度拟合”另一种模型产生的数据的模型更为复杂。

  2. 交叉验证:它也很容易实现。请参阅此问题的答案。但是,请注意,与此有关的问题是,在样本削减规则(留一法,K折等)中进行选择是一种无原则的选择。


我不太了解“模型模仿”,但是交叉验证似乎只是推迟了评估复杂性的任务。如果您像交叉验证一样使用数据来选择参数模型,则相关的问题将变成如何估算此“元”拟合器正常运行所需的数据量
Yaroslav

@Yaroslaw:我不太了解您的交叉验证问题,但是老实说我不是专家。但是,我真的很想为模拟模型提供一个参考。因此,请参阅我的最新答案。
亨里克

4

我认为这将取决于实际的模型拟合过程。对于一般适用的度量,您可以考虑Ye 1998中描述的广义自由度 -本质上是模型估计值变化对观测值摄动的敏感性-可以很好地衡量模型复杂性。


嗯...这篇论文都是关于回归的,我想知道这是否可以用于离散概率估计。另外,我不太了解他为此提供的动机-gdf对数据的微小变化具有一定程度的参数敏感性,但是为什么它很重要?我可以选择不同的参数化,其中原始参数化中参数的小变化对应于新参数化中的大变化,因此它似乎对数据更敏感,但是它是同一模型
Yaroslav Bulatov

Yaroslav:> *我可以选择一个不同的参数化,其中原始参数化中参数的小变化对应于新参数化中的大变化,因此它似乎对数据更敏感*您能举个例子(涉及一个仿射等方估计量)吗?谢谢,
user603 2010年

1
线性回归中的DoF可计算出帽子矩阵的痕迹或敏感度的总和-因此动机/概念并不是那么遥远。Tibshirani和Knight提出了协方差通货膨胀标准,该标准着眼于模型估计的协方差而不是敏感性。GDF似乎已应用在许多模型程序中,例如购物车和小波阈值处理(Ye关于自适应模型选择的论文有更多细节),以及用于控制复杂性的整体方法,但我不知道任何离散的估计情况。可能值得尝试...
ars

不知道“仿射等方估计量”,但假设我们改为依靠最大似然估计量。令q = f(p),其中f是一些双射。令p0,q0代表相应参数化中的MLE估计。p0,q0将具有不同的渐近方差,但就建模数据而言,它们是等效的。所以问题归结为-参数的敏感性是代表预期风险的参数吗?
Yaroslav Bulatov

4

最小描述长度(MDL)和最小消息长度(MML)当然值得一试。

就MDL而言,说明规范化最大似然(NML)过程以及渐近逼近的简单论文是:

S. de Rooij和P.Grünwald。参数无限复杂的最小描述长度模型选择的实证研究。数学心理学杂志,2006,50,180-192

在这里,他们研究了几何分布与泊松分布的模型复杂性。可以在此处找到有关MDL的优秀(免费)教程。

或者,可以在此处找到有关使用MML和MDL检验的指数分布的复杂性的论文。不幸的是,没有关于MML的最新教程,但是这本书是很好的参考书,强烈推荐使用。


1
我已经读过该论文,似乎随机复杂度解决了无法区分相同尺寸模型的问题,但引入了有时无法区分不同尺寸模型的问题。几何分布被赋予了无限的复杂性,这肯定不是我们期望的那样简单的模型!
Yaroslav Bulatov

关于无限随机复杂度(SC)的很好观点。存在无限SC问题的解决方案,但不是很好。Rissanen的重新归一化在线性模型中效果很好,但是对泊松/几何问题而言却不容易做到。不过,泊松/几何数据的MML(或SMML)编码很好。
emakalic 2010年

3

最小描述长度可能是一个值得追求的途径。


2
简要说明一下:最小描述长度非常强大且有用,但是获得结果可能要花费一些时间,尤其是在使用归一化最大似然和较大数据集的情况下。我曾经花了10天的时间运行FORTRAN代码,仅使用一种模型就获得了它
Dave Kellen 2010年

2

“模型复杂性”通常是指模型空间的丰富性。请注意,此定义不依赖于数据。对于线性模型,模型空间的丰富程度是随空间的缩小而简单地测量的。这就是某些作者所说的“自由度”(尽管历史上,自由度是为模型空间和样本空间之间的差异保留的)。对于非线性模型,量化空间的丰富程度并非易事。广义自由度(请参阅ars的答复)就是这样一种度量。它确实非常通用,可用于任何“怪异”模型空间,例如树,KNN等。该VC维 是另一项措施。

如上所述,“复杂性”的定义与数据无关。因此,具有相同数量参数的两个模型通常具有相同的“复杂性”。


1

从雅罗斯拉夫的评论到亨里克的答案:

但是交叉验证似乎只是推迟了评估复杂性的任务。如果像交叉验证一样使用数据来选择参数和模型,则相关的问题将变成如何估算此“元”拟合器正常运行所需的数据量

我想知道这本身是否不能提供信息。你执行几个ķ可变简历 ķ (例如沿着网格),然后看看哪个模型的效果更好 ķ增加。更具体地说:我想知道那里的两个模型之间是否有任何区别CVķ 性能作为函数 ķ 可以作为该模型的证据(当 ķ 增加)将是不太复杂的一种。

您甚至可以对此赋予“显着”的风味,因为该过程的结果直接来自样本外预测误差的差异(单位)。


1
我同意交叉验证解决了测量模型复杂性的问题。也许我问错了一个问题,因为一个实际的问题是拟合过程的样本复杂性。交叉验证的学习者将尝试不同的模型,并选择交叉验证误差最小的模型。现在的问题是-这个学习者是否比最大可能性拟合单个模型的学习者更可能过度拟合?
Yaroslav Bulatov

Yaroslav Bulatov:>是的,但是您只能使用ML来比较嵌套模型。只要您指定(在您的问题中)提到的具有相同数量参数的模型,那么它们就不能嵌套。
user603 2010年

另一个问题是交叉验证不会增加我们对模型复杂性的理解。诸如AIC / BIC之类的措施清楚地表明,许多参数都鼓励过度拟合。现在的问题变成了-除了尺寸之外,模型的哪些方面增加了过拟合的能力?
Yaroslav Bulatov

雅罗斯拉夫:>再次,非常好。
user603 2010年

如果过度拟合是模型拟合过程除信号之外还拟合噪声的趋势,那么我们可以查看给定的过程以查看这种趋势可能在何处出现。也许是由于缺乏想象力或知识,在考虑一些不同的过程时,我无法将其归结为一些不能重述为“参数数量”(或“有效参数数量”)的东西。我们可以反省一下:在其他条件相同的情况下,当将噪声引入数据时会发生什么?然后我们得出诸如Ye's GDF之类的措施。
ars 2010年

0

模型比较的信息准则如何?参见例如http://en.wikipedia.org/wiki/Akaike_information_criterion

这里的模型复杂度是模型参数的数量。


AIC不能衡量模型的复杂性。
Sven Hohenstein 2012年

@SvenHohenstein,在他的最后一句话中,我认为他并不是在暗示AIC 本身是衡量模型复杂性的标准。Brause42,请注意,该问题专门询问具有相同数量参数的模型。因此,AIC将减少为SSE或偏差或其他偏差。
gung-恢复莫妮卡
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.