我正在阅读 Judea Pearl 的“The book of why”,虽然我从定性上理解他在谈到通过控制不正确的变量(例如对撞机)而引入的偏差时所说的内容,但我无法想象流程由这种控制产生的关联/相关性。
当我控制 B(白色)时,下图会发生什么?如果我控制 B,但如果控制 C,为什么会有偏置路径?
为什么控制图中的 B 会引入偏差?
我正在阅读 Judea Pearl 的“The book of why”,虽然我从定性上理解他在谈到通过控制不正确的变量(例如对撞机)而引入的偏差时所说的内容,但我无法想象流程由这种控制产生的关联/相关性。
当我控制 B(白色)时,下图会发生什么?如果我控制 B,但如果控制 C,为什么会有偏置路径?
为什么控制图中的 B 会引入偏差?
这更像是评论,以回应对 Ed Rigdon 回答的评论:
我知道我不应该控制 B,因为它是一个对撞机。我想知道控制变量时图表的外观。然后我就能清楚地看到一切
做到这一点的一个好方法是通过称为图形道德化的过程绘制条件图。这些步骤非常简单(这几乎是从Greenland and Pearl, 2017逐字引用的),我刚刚更改了变量名称以匹配问题中的名称:
所以我们得到下图:
请注意,这不是 DAG,因为存在虚线。要继续使用 DAG 理论,我们必须保留 B 并使用 Noah 答案中的推理,其中后门路径显示为
最后,我经常发现做简单的模拟很有启发性,所以在这里我根据原始 DAG 模拟数据,并展示在控制对撞机时会发生什么:
> set.seed(15)
> N <- 100
> A <- rnorm(N, 10, 2)
> C <- rnorm(N, 5, 1)
> B <- A + C + rnorm(N)
> X <- A + B + rnorm(N)
> Y <- X + C + rnorm(N)
> m0 <- lm(Y ~ X)
> summary(m0)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.28681 0.87685 3.748 0.000301 ***
X 1.06439 0.03411 31.203 < 2e-16 ***
所以我们对 X 的影响得到了很好的估计。但是:
> m1 <- lm(Y ~ X + B)
> summary(m1)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.82040 0.82263 3.429 0.000892 ***
X 0.68665 0.09811 6.999 3.36e-10 ***
B 0.66931 0.16452 4.068 9.65e-05 ***
现在我们对 X 有一个有偏估计
在模型中,B = A + C,A和C是正交的。如果你保持 B 不变,你会诱导 A 和 C 之间的协方差。假设你保持 B 不变为 10。那么,如果 A 为 7,则 C 为 3。如果 A 为 6,则 C 为 4。这对 X 造成了混淆-> Y 关系,从 X 到 A 通过与 C 到 Y 的协方差的后门路径。
C 是 X -> Y 关系的混淆,因为 X 和 Y 是 C 的联合后代。控制 C 否定了这种联合依赖性。您不需要控制 B,因为 B 本身并不令人困惑——Y 不是 B 的后代,除非通过 X。
解释图表的难点之一是寻找不存在的路径。这些遗漏可能是图表中最重要的部分,但如果不进行实践,它们将不会成为我们关注的焦点。
有七个关联规则。在前四个中,和是相互关联的:
后三中,和通过路径互不关联:
变量周围的框表示我们正在以变量为条件。
路径,当不以为条件时,是一条封闭路径,这意味着和不通过该路径相互关联。这是因为当两个箭头指向路径中的同一个变量(这里,两个箭头指向)时,关联链会中断。在这种情况下,被称为对撞机。
为条件打开了联想的路径。也就是说,和之间的关联保持开放,因为对碰撞器或碰撞器的后代的调节打开了关联路径。和之间的其他路径可能是开放的或封闭的,但是当通过这个特定路径时,它们是相关联的。这种关联是“非因果的”,因为它不代表对的因果影响。