逐步回归是否提供总体r平方的有偏估计?


14

在心理学和其他领域,通常采用逐步回归的形式,涉及以下内容:

  1. 查看其余的预测变量(最初在模型中没有),并确定导致最大r平方变化的预测变量;
  2. 如果r平方变化的p值小于alpha(通常为.05),则包括该预测变量并返回步骤1,否则停止。

例如,请参阅SPSS中的此过程。

出于各种原因,通常会对该程序进行批判(请参阅Stata网站上的讨论并提供参考资料)。

特别是,Stata网站总结了Frank Harrell的一些评论。我对索赔感兴趣:

[逐步回归]产生严重偏高的R平方值。

具体来说,我目前的一些研究集中在估计总体r平方。通过总体r平方,我指的是总体中由总体数据生成方程式解释的方差百分比。我正在审查的许多现有文献都使用了逐步回归程序,我想知道所提供的估计数是否有偏差,以及有多少偏差。特别是,典型的研究将有30个预测变量,n = 200,输入的alpha为0.05,r平方估计约为0.50。

我所知道的:

  • 渐近地,具有非零系数的任何预测变量将是统计上显着的预测变量,并且r平方将等于调整后的r平方。因此,渐进式逐步回归应该估计真实的回归方程和真实的总体r平方。
  • 对于较小的样本量,与模型中所有预测变量相比,某些预测变量的可能省略将导致较小的r平方。但是,通常r平方对样本数据的偏见也会增加r平方。因此,我天真的想法是,这两个相反的力在一定条件下可能导致无偏的r平方。更一般而言,偏差的方向将取决于数据的各种特征和alpha包含标准。
  • 设置更严格的alpha包含准则(例如.01,.001等)应会降低预期的估计r平方,因为在任何数据生成中包含任何预测变量的可能性都较小。
  • 通常,r平方是总体r平方的向上偏差估计,并且随着更多的预测变量和较小的样本量,该偏差的程度也会增加。

最后,我的问题是:

  • 逐步回归的r平方在多大程度上导致总体r平方的估计偏差?
  • 这种偏差在多大程度上与样本数量,预测变量数量,alpha包含标准或数据属性有关?
  • 是否有关于此主题的参考?

3
您引用的Stata FAQ的主要版本早于Frank Harrell在2001年出版的《回归建模策略》一书。纽约:施普林格,这是我从这里开始的参考。
Nick Cox

3
我强烈建议阅读尼克·考克斯(Nick Cox)在那儿提到的@FrankHarrell写的书。我会定期分配我的研究生,并向从中读书的学生们致敬(特别是第4章)。通过模拟许多具有总体相关性为零的数据集(例如n = 100,p = 50),然后进行您希望显示的任何变量选择过程,可以很容易看出R ^ 2在存在变量选择的情况下存在偏差它在。
Glen_b-恢复莫妮卡

5
如评论所述,模拟可以表明,在已知情况下,逐步回归将高估,并且它们可以显示出多少。但是,它无法显示在您不知道人口价值应该是什么的情况下的通货膨胀率。也就是说,不仅是逐步偏向的结果,而且它们以非常难以估计(如果不是不可能的话)的方式被偏倚。R2
彼得·弗洛姆

3
如果总体R ^ 2为零,即使您不使用逐步选择,我也会认为样本R ^ 2有偏差。我怀疑(但不确定)如果总体R ^ 2不为零,也会有偏差。
mark999 2013年

2
要说总体具有,并且我们正在进行某种形式的模型选择是为了对抽样情况做出一些特定的假设-有一个“真实”模型,并且它具有特定的大小,有一个比真实模型中要考虑的变量更多(至少可能更多),依此类推。我认为甚至暗示着,并非所有变量都与响应同样密切相关。为此,我认为我们为调查特性所做的任何模拟都需要尊重其设置的所有含义。R2
Glen_b-恢复莫妮卡

Answers:


5

在我的书中引用,有迹象表明,以得到一个几乎无偏估计文献做变量选择时,需要插入公式调整[R 2的数量候选人预测,而不是“选择”的预测数。因此,变量选择引起的偏差很大。也许更重要的是,变量选择导致更差的实际R 2R2R2R2,并且无法实际找到“正确的”变量。


特别是当候选预测变量的数量超过观察数量时!
亚历克西斯

2

总览

R2ρ2,则以下可以说:尽管这是用于数据生成处理,样本大小,预测和预测器条目的p值标准的集合的一些组合真实的,它是不正确的在所有情况下。

R2ρ2R2ρ2R2R2将显示相同的偏差。R2ρ2

我在不同条件下进行了一些模拟。产生近似无偏估计的预测变量输入的p值通常在.05和.0001之间。但是,我还没有阅读任何明确探讨此问题的模拟方法,也未提供建议,以期从已发布的逐步得出什么样的偏差R2使用给定的p值输入和给定的数据特征,值中。

R2ρ2ρ2不是仅仅希望在一个逐步回归项的p值恰好是正确的,以便导致大约无偏估计

模拟

以下模拟具有四个不相关的预测变量,其中总体r平方为40%。其中两个预测变量分别解释20%,另外两个预测变量解释0%。该模拟生成1000个数据集,并估计每个数据集的逐步回归r-平方作为百分比。

# source("http://bioconductor.org/biocLite.R")
# biocLite("maSigPro") # provides stepwise regression function two.ways.stepfor 
library(maSigPro)
get_data <- function(n=100) {
    x1 <- rnorm(n, 0, 1)
    x2 <- rnorm(n, 0, 1)
    x3 <- rnorm(n, 0, 1)
    x4 <- rnorm(n, 0, 1)
    e  <- rnorm(n, 0, 1)
    y <- 1 * x1 + 1 * x2 + sqrt(3) * e
    data <- data.frame(y, x1, x2, x3, x4)
    data
}

get_rsquare <- function(x, alpha=.05) {
    fit <- two.ways.stepfor(x$y, subset(x, select=-y),  alfa=alpha)
        class(fit) <-'lm'
        summary.lm(fit)$r.square * 100
}

以下代码返回带有输入.01,.001,.0001和.00001的alpha值的r平方。

set.seed(1234)
simulations <- 1000
datasets <- lapply(seq(simulations), function(X) get_data(n=100))
rsquares01 <- sapply(datasets, function(X) get_rsquare(X, alpha=.01))
rsquares001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.001))
rsquares0001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.0001))
rsquares00001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.00001))

以下结果表明了五个alpha条目中每个条目的偏差。请注意,我已将r平方乘以100,以便更轻松地查看差异。

mean(rsquares01) - 40 
mean(rsquares001) - 40 
mean(rsquares0001) - 40 
mean(rsquares00001) - 40 
sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias 

结果表明,条目.01和.001的alpha导致正偏差,条目.0001和.00001的alpha导致负偏差。因此,假设输入的alpha约为.0005,将导致无偏逐步回归。

> mean(rsquares01) - 40 
[1] 1.128996
> mean(rsquares001) - 40 
[1] 0.8238992
> mean(rsquares0001) - 40 
[1] -0.9681992
> mean(rsquares00001) - 40 
[1] -5.126225
> sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias
[1] 0.2329339

我从中得出的主要结论是,逐步回归并不固有地偏向特定方向。就是说,除了一个p值以外,对于所有其他预测变量,它至少都会有所偏差。我认为@Peter Flom的观点是,在现实世界中,我们不知道数据生成过程。但是,我想对这种偏差如何在输入的n,输入alpha,数据生成过程和逐步回归过程(例如,包括向后通过)等方面进行更详细的探索,可以从实质上帮助理解这种偏差。

参考文献

  • Harrell,FE(2001)。回归建模策略:应用于线性模型,逻辑回归和生存分析。施普林格。

它仍然有偏见(我会说),您已经大大降低了偏见。
Jeremy Miles

@JeremyMiles是的。但这并不是固有地偏向特定方向。
Jeromy Anglim 2013年

我会对看到@FrankHarrell对此感兴趣。
Glen_b-恢复莫妮卡

1
+1做得好!但是您的结论不应该不同吗?让“SW(p)R2ppSW(p)pSW(p)p

1
@whuber我调整了最后一段,希望可以使您提到的几点更清楚。
Jeromy Anglim
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.