7.5 因果森林
7.5.1 原理
- 无混杂条件
在无混杂条件下,方可进行准确的因果推断。
对于\(\{X_i, Y_i, W_i\}\)的数据,其中\(W_i\)表示是否接受处理,处理效应表示为
\[ \tau(x) = E[Y_i^{(1)}-Y_i^{(0)}|X_i = x] \]
由于在现实中没法同时观测到\(Y_i^{(1)}\)和\(Y_i^{(0)}\),在无混杂条件
\[ \{Y_i^{(0)}, Y_i^{(1)}\} \perp W_i | X_i \]
无混杂条件说明了在控制\(X\)的情况下,对象是否接受干预是随机的,正是因为这种随机性使得我们可以根据现实观测来估计处理效应
成立的情况下,传统方法可以通过倾向得分\(e(x) = E(W_i|X_i=x)\)来估计处理效应
\[ E[Y_i(\frac{W_i}{e(x)} - \frac{1-W_i}{1-e(x)})|X_i = x]=\tau(x) \]
- 诚实树与因果森林
在高维场合下,树和森林可被视作具有自适应距离度量的NearestNeighbor方法。落在相同叶节点的观测具有高度相似性,当叶节点足够小时可以相信这些观测独立同分布。
KNN算法是基于某种距离度量找到邻居,而树中叶节点里的观测都是邻居
对此,根据树模型得到的处理效应估计为
\[ \begin{aligned} \hat \tau(x) &= \frac{1}{|\{i:W_i = 1, X_i \in L\}|}\sum_{\{i:W_i = 1, X_i \in L\}}^{Y_i} \\ &-\frac{1}{|\{i:W_i = 0, X_i \in L\}|}\sum_{\{i:W_i = 0, X_i \in L\}}^{Y_i} \end{aligned} \]
若是森林,则综合B棵树的估计结果
\[ \hat \tau(x) = B^{-1}\sum_{b=1}^B \hat \tau_b(x) \]
为了能够实现上述的估计,树模型也需要满足无混杂条件,因此需要引入诚实树的概念。对于任一观测,该观测要么用来分裂,要么用来估计因果效应。只有这样,对因果效应的估计才有一致性和渐近正态性。
对于诚实树,有两种构建方法——双重样本树和倾向树。
双重样本树,顾名思义,将样本分为两个独立子集,一个子集用于分裂(仅使用X和W),另一个子集用于在叶节点内估计处理效应(使用X,W,Y)。
倾向树,将指示变量W视为分类目标的响应变量,构建分类树,即用X去预测W(某种程度上就是在做倾向得分的事),然后再在生成的叶节点内基于Y估计处理效应。