Rubin causal model(Rubin因果推断模型,RCM)
举例:假设我们要研究某种降压药(Treatment)是否能有效降低血压。我们选取了一组受试者,并面临以下两种可能的情况:
- \(y_i(1)\):如果受试者 服用了药物,他们的血压值(处理组)。
- \(y_i(0)\):如果受试者 没有服用药物,他们的血压值(对照组)。
问题:如何衡量药物的真实效果?
我们关心的是因果效应,即:
\(个体因果效应 = y_i(1) - y_i(0)\)
但实际情况是:
- 如果一个人 服用了药物,我们只能观察到\(y_i(1)\),而\(y_i(0)\)假设他没有服药的血压值)是不可观测的(反事实问题)。
- 反之,如果一个人 没有服药,我们只能观察到\(y_i(0)\)。
我们这里可以尝试用RCM来解决:
由于我们无法同时观察个体的两种状态,RCM 提供了一种基于组平均的方法来估计平均因果效应(ATE, Average Treatment Effect):
\(ATE = E[y(1)] - E[y(0)]\)
即:
\(ATE = 处理组的平均值 - 对照组的平均值\)
由此引出另一个问题:随机性。即我们要确保受试者被平均分配到服药组和对照组,这样尽可能确保两组的样本的平均背景是没有显著差异的,即尽可能不要有混杂因素影响(Confounders)。
当然,这只是理想状态。实际上现实中的情况往往复杂很多。很多现实例子如果严格随机实验的话是违反法律或道德的。比如研究“贫困补助对经济改善的影响”时,我们不能随机决定谁能收到补助,谁不能,因为这可能影响个人生活。又比如研究“吸烟对肺癌的因果影响”时,我们不可能让一组人被随机分配去吸烟,因为这不符合伦理。
此外,处理组和对照组之间可能本质上就存在不同,导致我们无法直接比较它们的平均结果。比如高血压患者更可能服药,但他们的初始血压更高。如果我们简单比较服药组和非服药组的平均血压,可能得出错误结论:服药组血压更高,但这可能不是药物的效果,而是因为他们本身血压就高。又比如假设我们想研究是否上大学会导致更高的收入。现实中,上大学的群体和不上大学的群体并不是随机分配的,他们可能本身就有不同的背景,如家庭收入更高的人更容易上大学,或者学习能力更强的人更容易上大学,并且本来就可能收入更高。如果直接比较大学毕业生和非大学毕业生的平均收入,可能高估了大学的作用(因为学历可能与个人能力和家庭背景有关)。
再者,两组之间的样本有时也会存在互相影响。例如假设我们想研究疫苗是否有效。如果大量人群接种疫苗,未接种疫苗的人也可能受到群体免疫(Herd Immunity)的影响,因此他们的感染率可能降低,这会导致我们低估疫苗的真实效果。还比如研究“政府提供工资补助是否提高就业率”时,补助可能会影响整个劳动力市场:一部分人获得补助后可能更愿意工作,但也可能导致雇主降低工资,影响那些没有获得补助的人的就业机会。