Yishi Lin

  • Home

  • Archives

  • Dataset

  • Blog

  • Categories

  • Search

因果推断学习笔记(三):因果推断比赛 ACIC Data Challenge 学习笔记

Posted on 2019-05-22 In 因果推断 , 学习笔记

近期的学习是寻找效果稳定又跑得快的 causal inference 黑盒子,并且四处收集一下“黑盒子”评估方式。

从2016年开始,一年一度的 Atlantic Causal Inference Conference 有一个 Data Challenge:一个关于因果推断的比赛。网上可以找到官方对于2016年和2017年这两次比赛的一些小结,一边看一边囤一篇简单的学习笔记。

ACIC2016 Data Challenge

ACIC2016 Data Challenge主页:https://jenniferhill7.wixsite.com/acic-2016/competition

主办方在赛后写了一篇总结性质的论文:Dorie, V. et al. 2017. Automated versus do-it-yourself methods for causal inference: Lessons learned from a data analysis competition. arXiv:1707.02641 [stat]. (Jul. 2017)

Data Challenge 介绍

ACIC2016 的赛题是估算 ATT (Average Treatment effect on the Treated),ATT=E[Y(1)-Y(0)|T=1]。严格一点来说,这个比赛其实是估算 SATT (Sample Average Treatment Effect),也就是ATT取期望的时候,这个期望是在 sample 上取期望的 (“the expectation is taken over the analysis sample”)。

比赛所用的数据是“半真实”的,对于每个数据集:

  • covariates 是真实的
    • 来源于 Collaborative Perinatal Project
    • “a massive longitudinal study that was conducted on pregnant women and
      their children between 1959 to 1974 with the aim of identifying causal factors
      leading to developmental disorders”
    • 主办方选择了4802个样本,每个样本包含58个 covariates,其中3个categorical 、5个binary、27个count data 、23个continuous
  • treatment 和 outcome 是主办方通过各种各样的秘密方法生成的,因为数据是主办方生成的,所有数据的真实 SATT 都是已知的,可以作为“正确答案”对不同的因果推断算法进行评估。

有一组参赛组是“Black box组”。参赛者提交源码,主办方会在7700组(77种 x 重复100遍)数据上进行评估。Exciting!

数据生成方法已经开源在(GitHub:vdorie/aciccomp),几行脚本就可以把数据都生成出来自己用。

Black box 赛果

下面这张截图是 block box 分组的主要结果。几个主要的评估指标如下:

  • Bias 和 RMSE: 估算的 SATT 和真实 SATT 的差异。
  • Coverage:每个推断算法都会返回一个关于 SATT 的置信区间。Coverage 表示多大比例的置信区间包含真实 SATT。
  • Inverval length:平均的置信区间长度。Coverage 和 Inverval length 要结合起来看才有意义(它俩是有 trade-off 的),理论上希望 coverage 越高并且 inverval length 越小。
  • PEHE (precision in estimation of heterogeneous effects):对于每个数据集,PEHE 是每个人的 treatment effect(individual level treatment effect)估算值的 RMSE。

从 Bias 和 RMSE 来看,BART、H20 Ensemble、calCause 和 TMLE明显好于其它方法。从 Coverage 和 Interval length 来看,BART、calCause 和 TMLE 效果也很好,H2O Ensemble 看起来不返回置信区间。

name bias rmse coverage interval length 备注
BART -0.002 0.02 0.81 0.04
H2O Ensemble -0.007 0.03 1 6.14 没有 confidence interval。没找到源码。
calCause -0.003 0.03 0.82 0.07 来自于 IBM Research。没找到源码。
TMLE -0.007 0.03 0.88 0.07 R里有包。

主办方的论文中还提供了一些赛后提交的新版算法的 Bias/RMSE,不少算法是 BART 和其它算法的结合版本。其中,个人感觉 BART on PScore 这个想法很不错。和 BART 相比起来,Bias/RMSE 差不多,在 ave interval length 差不多的情况下 coverage 更好。

ACIC2017 Data Challenge

ACIC2017 Data Challenge 介绍:SecondAnnualCausalInferenceDataAnalysisChallenge.pdf

Data Challenge 介绍

2017年的比赛和2016年的套路基本一致。比赛的数据依然是“半真实”的,covariates 和去年一致(但是实际上生成数据时只用了其中8个),treatment 和 outcomes 依然是花式生成的(生成方式不同)。比赛内容除了估算 SATT,还需要估算 individual treatment effects(CATE )。

这一年的挑战的主题是 “targeted selection”(当然,这是赛后公布的): “That is, we were interested in understanding the behavior of various methods in situations where the likelihood that an individual receives treatment is a function of the expected response of that individual if left untreated.” 我觉得 targeted selection 是一个很实际的主题。例如,拿广告投放举例,广告主一般倾向于把广告投给有潜力转化的人,一般不会把广告浪费在八竿子打不着的人身上。

比赛结果小结

完整的比赛结果小结在 Prof. Hahn 的主页上:https://math.la.asu.edu/~prhahn [Summary report] [Summary plots]

我重画了一下 summary plots,因为官方的 summary plots 只标了算法的ID,看起来不是很方便。第一幅图越往右下角越好(置信区间可以 cover 到真实 SATT 并且置信区间小)。第二幅图越往左下角最好(SATT 和 CATE都准)。个人感觉,整体上看,这4个方法比较好:

  • BART with propensity score 和 BART with propensity score (symmetrized):大概能猜到是怎么做的,应该是先学一个 propensity score 然后当做 covariates 放进BART,不过找不到源码。
  • Baysian Causal Forest (图中为bcf_att):在 https://math.la.asu.edu/~prhahn/results_stuff.zip 可以找到源码
  • Targted learning:在 GitHub 可以找到源码 https://github.com/ck37/atlantic-causal-2017

个人感想

  1. 从两年的比赛来看,BART 是一个输出非常稳定的选手。同时,BART 和其它方法结合起来似乎战斗力还可以变得更强。个人特别喜欢 BART on PScore 这个组合。
  2. Ensemble 看起来是很有前途的。在16年的比赛里,H2O Ensemble 效果很好,可惜没有开源。
  3. 比赛中用的数据生成方式很适合利用公开的或者自己的 covariates 生成大量 benchmark 数据。毕竟如果要在真实场景中构造这么多带有 ground truth ATT 的数据,是要吐血的。
# causality # 因果推断
通过Anaconda安装R
因果推断学习笔记(四):经典方法尝试之 Weighting (Lalonde's Dataset)
  • Table of Contents
  • Overview
Yishi Lin

Yishi Lin

24 posts
11 categories
25 tags
RSS
GitHub E-Mail
  1. 1. ACIC2016 Data Challenge
    1. 1.1. Data Challenge 介绍
    2. 1.2. Black box 赛果
  2. 2. ACIC2017 Data Challenge
    1. 2.1. Data Challenge 介绍
    2. 2.2. 比赛结果小结
  3. 3. 个人感想
© 2013 – 2021 Yishi Lin
Powered by Hexo v3.9.0
|
Theme – NexT.Gemini v7.3.0