错误的控件和省略的变量

机器算法验证 内生性
2022-03-24 22:29:52

解释遗漏变量偏差的传统方式(至少在经济学中)包括考虑 Mincer 类型回归: 其中 LHS 表示个体 i 在时间的工资, 表示控制向量, 表示教育水平, 表示个体特定的异质性,如能力,这可能与教育有关。结果,如果我们不以某种方式“控制”能力,我们会得到的有偏估计。

wit=α+xitβ+γEi+αi+ϵit
txitEiαiγ

现在,我遇到了一些读物,尤其是与“不良控制”有关的读物。这些读数指向的是,包含作为变量控制的变量本身可能是结果变量,可能会导致感兴趣参数的偏差。

使用这样的推理,即使我们确实有能力的衡量标准,将其包括在回归中也会指出这个问题,因为我可以想到很多原因为什么教育水平是能力的函数(诺贝尔奖得主模型由Spence 正是指向这一假设)。

在省略变量的情况下,我们假设在以下情况下可能存在问题:

包含的回归器和排除的回归器之间的cov(.)

• 排除的回归变量是相关的。

这引出了我的问题。如果怀疑省略的变量与包含的变量有非零 cov(.),则有两种可能的情况:

  1. 一个原因另一个,导致两者之间的依赖

  2. 这两者是由第三个变量引起的。

情况 2 似乎很好,只要这第三个变量在确定时并不重要 。但是案例 1 肯定是有问题的。在我看来,在校正遗漏变量偏差问题和不良控制问题之间可能存在权衡。怎么可能调和呢?wit

1个回答

没有理由怀疑变量是否是“坏控制”了。在给定目标查询和模型的情况下,我们有简单的图形标准来确定变量是否应包含在回归方程中。例如,如果您想通过回归调整来估计平均因果效应,则“良好控制”的特征是后门标准

例如,让我举一个例子,你的案例 2 也会有问题。考虑下面的模型,其中所有干扰都是相互独立的标准高斯随机变量:u

z=u1+u2+uzx=u1+uxy=x+u2+uy

请注意,相关,并且不是“结果”(它是预处理变量)。然而,在这里是“糟糕的控制”,调整会使您的效果估计产生偏差。发生这种情况是因为调整打开了一个虚假的碰撞路径zxyzzzzxu1zu2y

在此处输入图像描述

这是一个简单的 R 代码,供您在实践中查看:

n <- 1e5
u1 <- rnorm(n)
u2 <- rnorm(n)
z <- u1 + u2  + rnorm(n)
x <- u1 + rnorm(n)
y <- x - 2*u2 + rnorm(n)
lm(y ~ x) # unbiased
#> 
#> Call:
#> lm(formula = y ~ x)
#> 
#> Coefficients:
#> (Intercept)            x  
#>   -0.002443     0.996894
lm(y ~ x + z) # biased, bad control
#> 
#> Call:
#> lm(formula = y ~ x + z)
#> 
#> Coefficients:
#> (Intercept)            x            z  
#>  -0.0009577    1.3976798   -0.8012717

另一个有趣的例子如下:

在此处输入图像描述

同样,这里是一个预处理变量。但是,如果你天真地“控制”这将放大任何现有的偏见。在这种情况下,事实证明您无法通过调整获得无偏估计,但您可以使用工具变量恢复因果效应。zz

以下是一些 R 代码,供您在实践中查看:

n <- 1e5
z <- rnorm(n)
u <- rnorm(n)
x <- 2*z + u + rnorm(n)
y <- x + u + rnorm(n)
lm(y ~ x) # biased
#> 
#> Call:
#> lm(formula = y ~ x)
#> 
#> Coefficients:
#> (Intercept)            x  
#>     0.00338      1.16838
lm(y ~ x + z) # even more biased
#> 
#> Call:
#> lm(formula = y ~ x + z)
#> 
#> Coefficients:
#> (Intercept)            x            z  
#>    0.002855     1.495812    -0.985012

这个讨论也可能有帮助。