正交双重机器学习笔记

正交/双重机器学习笔记

双重机器学习是一种用于估计异质处理效应的方法,其中所有潜在混淆变量/控制变量都被观察到。

问题:

  • 数量太多(高维度),以至于经典统计方法不适用
  • 它们对处理和结果的影响无法令人满意地通过参数函数建模(非参数)

这两个问题都可以通过机器学习技术来解决。

该方法首先将问题简化为估计两个预测任务:

  1. 从控制变量预测结果 Y Y Y
  2. 从控制变量预测处理决策 treatment

然后,该方法将这两个预测模型组合在最后的阶段估计中,以创建一个异质处理效应的模型。该方法允许使用任意的机器学习算法进行这两个预测任务,同时保持与最终模型相关的许多有利的统计性质(例如较小的均方误差、渐近正态性、置信区间的构建)。

relevant estimator classes——估计因果效应的不同估计器

不同估计器所实施的方法论

**CausalForestDML **是_RLearner的子类,它使用因果森林作为最终模型(参见[Wager2018]和[Athey2019])。因果森林在该库中作为scikit-learn预测器实现,在CausalForest类中提供。该估计器通过“Bootstrap-of-Little-Bags”方法实现置信区间的计算,具体描述见[Athey2019]。利用这个功能,我们也可以构建CATE的置信区间。

**Note: **CATE的含义,即条件平均处理效应。CATE代表了由一组协变量定义的特定子群体的平均处理效应。

from econml.dml import CausalForestDML
from sklearn.ensemble import GradientBoostingRegressor
est = CausalForestDML(model_y=GradientBoostingRegressor(),
                      model_t=GradientBoostingRegressor())
est.fit(y, t, X=X, W=W)
point = est.effect(X, T0=t0, T1=t1)
lb, ub = est.effect_interval(X, T0=t0, T1=t1, alpha=0.05)

Causal Forest是一种结合了双重机器学习的残差化处理和因果森林的方法。它通过拟合一个解决局部矩方程问题的森林模型来实现。

在Causal Forest中,首先使用双重机器学习(double machine learning)对处理变量和结果变量进行残差化处理。通过建立预测模型来估计处理变量和结果变量之间的非线性关系,并从原始观测值中减去这些预测,得到残差项。这种残差化处理可以帮助解决内生性问题和处理效应的非线性关系。

接下来,使用因果森林(causal forest)方法来拟合森林模型。因果森林是一种基于决策树的方法,用于估计处理效应。它通过将数据集随机划分为多个子集,并构建多个决策树来估计处理效应。然后,通过整合这些决策树的结果,得到对处理效应的估计。

这种组合方法的好处在于,双重机器学习可以帮助处理内生性和非线性关系,而因果森林可以提供对处理效应的非参数估计。它们的结合有助于更准确地估计处理效应,并提供对估计结果的统计不确定性的评估。

具体的DML方法也就出来了,其核心思想即分别用机器学习算法基于X预测T和Y,然后使用T的残差回归Y的残差

去偏:计算T的残差是正交于变量X的,所以X的作用被剔出了,即此时T的残差独立于X,而Y的残差中剔除了X对于Y方差的影响

对残差建模,得到ATE:(平均处理效应)指的是在一个总体中,处理或干预对结果变量的平均因果效应。它代表了接受处理的组与对照组之间的平均结果差异。

加入X与T的交互项,估计CATE:(条件平均处理效应)特定条件下处理对结果的影响程度

双重机器学习模型假设:

$Y=\theta(X) \cdot T+g(X)+\epsilon \quad $

$T=f(X)+\eta \quad $

E [ ϵ ∣ X ] = 0 ; E [ η ∣ X ] = 0 ; E [ η ⋅ ϵ ∣ X ] = 0 \mathbb{E}[\epsilon \mid X]=0 ;\quad \mathbb{E}[\eta \mid X]=0 ; \quad \mathbb{E}[\eta \cdot \epsilon \mid X]=0 E[ϵX]=0;E[ηX]=0;E[ηϵX]=0

计算残差:

Y ~ = Y − q ( X ) \tilde{Y}=Y-q(X) Y~=Yq(X)

T ~ = T − f ( X ) = η \tilde{T}=T-f(X)=\eta T~=Tf(X)=η

Y ~ = θ ( X ) ⋅ T ~ + ϵ \tilde{Y}=\theta(X) \cdot \tilde{T}+\epsilon Y~=θ(X)T~+ϵ

最终结果:

θ ^ = arg ⁡ min ⁡ θ ∈ Θ E n [ ( Y ~ − θ ( X ) ⋅ T ~ ) 2 ] \hat{\theta}=\arg \min _{\theta \in \Theta} \mathbb{E}_n\left[(\tilde{Y}-\theta(X) \cdot \tilde{T})^2\right] θ^=argminθΘEn[(Y~θ(X)T~)2]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值