前置知识:随机森林、双重机器学习 DML、因果效应评估_异质性
广义随机森林 GRF
广义随机森林(Generalized Random Forests,GRF)
- 对随机森林的推广,将预测结果扩展为任意统计量
- 能够实现非参数分位数回归、异质性因果效应估计等
为简化理解,下文中均默认广义随机森林的预测目标为异质性因果效应值,此时广义随机森林等价于因果森林;对于其他场景
GRF 与传统随机森林的区别
- 样本使用:传统随机森林使用全部样本来进行叶子节点的分裂和结果预测;GRF 仅使用一部分样本来用于叶子节点分裂,另一部分样本用来计算干预效应作为该叶子节点的预测值
- 分裂标准:传统随机森林的常用分裂标准多为信息增益、基尼指数等信息熵指标;GRF 的分裂标准是最大化叶子节点间的干预异质性,而不仅是追求预测结果的准确性
- 预测结果:传统随机森林的每棵树预测时,都是先寻找预测样本最近的叶子节点,再将该节点的所有观测样本的均值作为预测结果;GRF 则需要计算预测样本与训练样本的相似度权重,并根据训练样本的干预效应进行全局加权平均,得到最终的预测结果
诚实树(honesty tree):把样本分为两部分,一部分用于树的结构确定(节点分裂),另一部分用于估计感兴趣的参数(效应评估);GRF 通过构建诚实树来避免过拟合,提高估计值的可靠性
GRF 的算法步骤
(1)数据准备(诚实估计 Honest Estimation)
- 将样本划分为两个部分,分别用于确定树结构和效应估计
- 最终输出的效应估计值,独立于分裂过程中所用到的样本
(2)树的分裂生长
- 树的生成目标是最小化目标参数的误差,该目标等价于最大化叶子节点间的异质性(叶子节点间效应估计的均方误差 MSE);假设两个待划分叶子节点分别为 $C_{1}$ 和 $C_{2}$,其节点对应的样本数分别为 $n_{C_{1}}$ 和 $n_{C_{2}}$,其节点对应的效应估计为 $\hat{\theta}{C\{1}}$ 和 $\hat{\theta}{C\{2}}$ ,则分裂准则对应的具体公式如下: $$
\triangle(C_1,C_2)=\frac{n_{c_1}n_{C_2}}{n_P^2}(\hat{\theta}_{C_1}-\hat{\theta}_{C_2})^2 $$
- $(n_{c_1}n_{C_2})/n_P^2$ 用于平衡左右节点的样本量差异,效应估计 $\theta$ 可通过线性回归来计算
- 该过程的计算复杂度较高,因此一般通过梯度法+局部数据来进行效应值的近似估计
理想情况下,可以认为 GRF 中同一个叶子节点的数据是同质的
(3)森林的集成,重复以上步骤并生长出足够多的独立因果树
(4)推理预测阶段
- GRF 在推理阶段会遍历树的每个叶子节点,并计算训练样本 $i$ 与测试样本 $x$ 的相似度 $\alpha_{i}(x)$,即第 $i$ 个训练样本和样本 $x$ 落入同一个叶子节点的频率;因此 $\Sigma_{i=1}^n\alpha_{i}(x)=1$
- 最后根据每棵叶子节点的自适应权重和预测结果,给出局部矩估计;实际预测时,GRF 会通过梯度下降法或类似优化算法来求解以下公式
$$\Sigma_{i=1}^{n} \alpha_i (x) \cdot \psi(\theta(x), ν(x)) = 0$$
- 其中 $ψ$ 为评分函数,其在不同任务中会有不同的定义形式;$ν(x)$ 为冗余参数,描述了除干预变量之外的其他特征的影响
对于因果效应估计问题,其对应的常见评分函数可表示如下; $$\psi_{\theta,\nu}(O_i)= \begin{pmatrix} Y_i-\nu-\theta W_i \end{pmatrix} \begin{pmatrix} 1 \\ W_i \end{pmatrix}$$
- 此时,局部矩估计的公式可以拆成两个方程;方程 1 目的是尽可能挖掘冗余参数的预测性能,来剔除因果效应之外的影响;方程 2 的目的是尽可能找到干预变量所对应的因果效应估计,排除冗余参数的影响
- $\sum_{i=1}^n\alpha_i(x)(Y_i-\nu-\theta W_i)\cdot1=0$ ,方程 1 要求模型预测的整体平均值,要等于观测结果的整体平均值
- $\sum_{i=1}^n\alpha_i(x)(Y_i-\nu-\theta W_i)\cdot W_{i}=0$,方程 2 要求在干预组内部,模型预测的整体平均值,也要等于干预组观测结果的整体平均值
(5)异质性因果效应(正交随机森林)
- 引入双重机器学习 DML 的思想,对 Y 和 T 进行局部中心化
- 利用残差(中心化)后的 $\tilde{Y}$、$\tilde{T}$ 来估计异质性因果效应 CATE
GRF 的分析总结
GRF 的优点:
- 能够自动发现不同子群体间差异,捕捉异质性因果效应
- 非参数模型,擅长处理高维特征,捕捉复杂非线性关系
- 灵活性高,作为统一的估计框架能够处理多种类型问题
GRF 的缺点:
- 因果推断时,需要满足条件无混杂性假设,否则结果可能有偏
- 模型性能受到树的数量、叶子节点最小样本数等超参数的影响
- 内存和计算的消耗大,不适用于样本量较少或效应微弱的情况
参考:
因果推断笔记 | 广义随机森林 GRF(Generalized Random Forests)
论文阅读:广义随机森林 GRF(Generalized Random Forests)论文笔记补充