自由度可以是非整数吗?

机器算法验证 r 自由程度 广义加法模型
2022-02-10 00:37:53

当我使用 GAM 时,它给了我剩余的 DF 是26.6(代码中的最后一行)。这意味着什么?超越 GAM 示例,一般来说,自由度的数量可以是非整数吗?

> library(gam)
> summary(gam(mpg~lo(wt),data=mtcars))

Call: gam(formula = mpg ~ lo(wt), data = mtcars)
Deviance Residuals:
    Min      1Q  Median      3Q     Max 
-4.1470 -1.6217 -0.8971  1.2445  6.0516 

(Dispersion Parameter for gaussian family taken to be 6.6717)

    Null Deviance: 1126.047 on 31 degrees of freedom
Residual Deviance: 177.4662 on 26.6 degrees of freedom
AIC: 158.4294 

Number of Local Scoring Iterations: 2 

Anova for Parametric Effects
            Df Sum Sq Mean Sq F value    Pr(>F)    
lo(wt)     1.0 847.73  847.73  127.06 1.239e-11 ***
Residuals 26.6 177.47    6.67                      
1个回答

在许多情况下,自由度都是非整数的。实际上,在某些情况下,您可以确定适合某些特定模型的数据的自由度必须介于某个值之间kk+1.

我们通常认为自由度是自由参数的数量,但有些情况下参数不是完全自由的,因此很难计算。例如,在平滑/正则化时可能会发生这种情况。

局部加权回归/内核方法和平滑样条曲线的例子就是这种情况的例子——自由参数的总数不是你可以通过添加预测变量轻易计算出来的,因此需要更一般的自由度概念。

在部分基于的广义加法模型gam,Hastie 和 Tibshirani (1990) [1](实际上在许多其他参考资料中)对于我们可以编写的一些模型y^=Ay, 自由度有时被认为是tr(A)(他们还讨论tr(AAT)或者tr(2AAAT))。第一个与两者都起作用的更常见的方法一致(例如,在回归中,在正常情况下tr(A)将是的列维度X), 但当A是对称和幂等的,这三个公式都是一样的。

[我手头没有这个参考资料来检查足够的细节;同一作者(加上弗里德曼)的另一个容易掌握的替代方法是统计学习元素[2];参见例如方程 5.16,它将平滑样条的有效自由度定义为tr(A)(在我的符号中)]

更一般地说,Ye (1998) [3] 将广义自由度定义为iy^iyi,这是拟合值对其相应观察值的敏感性之和。反过来,这与tr(A)该定义适用的地方。要使用 Ye 的定义,您只需能够计算y^并对数据进行少量扰动(为了计算y^iyi数字)。这使得它的应用非常广泛。

对于由 拟合的模型gam,这些各种度量通常不是整数。

(我强烈建议阅读这些参考资料对这个问题的讨论,尽管在某些情况下故事会变得相当复杂。参见,例如 [4])

[1] Hastie, T. 和 Tibshirani, R. (1990),伦敦
广义加法模型
:Chapman 和 Hall。

[2] Hastie, T.、Tibshirani, R. 和 Friedman, J. (2009),
统计学习的要素:数据挖掘、推理和预测,第二版
Springer-Verlag。
https://statweb.stanford.edu/~tibs/ElemStatLearn/

[3] Ye, J. (1998),
“On Measurement and Correcting Effects of Data Mining and Model Selection”
美国统计学会杂志,卷。93,第 441 号,第 120-131 页

[4] Janson, L.、Fithian, W. 和 Hastie, T. (2013),
“有效的自由度:一个有缺陷的隐喻”
https://arxiv.org/abs/1312.7851