X-learner:Meta-learners for Esti

作者: 爿臣戈王耑 | 来源:发表于2020-05-02 21:19 被阅读0次

    Meta-learners for Estimating HeterogeneousTreatment Effects using Machine Learning 笔记

    论文地址:Meta-learners for Estimating HeterogeneousTreatment Effects using Machine Learning

    摘要

      在实验和观察性研究中, 异质化的treatment的评估和分析受到了人们越来越多的关注。我们描述一些元算法,他们可以利用机器学习和统计学中的任何监督学习或者回归方法来评估条件处理效应( Conditional Average Treatment Effect,CATE)函数。元算法建立在基本算法(随机森林-RF、贝叶斯加权回归树-BART、神经网络的等)的基础上评估CATE,该算法并没有直接评估的基本算法。本文介绍了一种新的元算法-\color{red}{X-learner},该算法在treatment组数据远大于contal数据时也是有效的,并且利用了CATE的函数结构特性。例如,如果CATE函数是线性的,并且在treatment和contal中响应函数都是Lipschitz连续,X-learner可以在正则条件下获得参数率定(对参数进行校准测定,这里个人觉的就是在样本不均衡下也可以到准确的参数评估)。然后我们介绍了使用RF和CART作为基础学习器的X-learner的版本。在广泛的模拟研究中,虽然没有一个元学习器效果始终是好的,但是X-learner总体上表现的很好。在政治学中的两个说服性实验组,展示了X-learner如何用于teatment制度上,并阐明潜在的机制。

    Lipschitz(利普希茨)连续定义:有函数f(x),如果存在一个常量K,使得对f(x)f定义域上(可为实数也可以为复数)的任意两个值满足如下条件:
    |f(x_1)-f(x_2)| \leq |x_1-x_2|*K
    那么称函数f(x)满足Lipschitz连续条件,并称Kf(x)的Lipschitz常数。Lipschitz连续比一致连续要强。它限制了函数的局部变动幅度不能超过某常量

    介绍

      随着包含有关人类及其行为的细粒度的数据信息的增长,研究人员、商业、政客越来越关注treatment的效果的个人效果的不同性。他们希望可以比在随机试验和观察研究中通过估计评估实验效果(ATE,Average Treatment Effect)的数据更多的信息。取而代之是他们寻找评估CATE的个性化treatment方案和更好的理解因果机制。我们这里介绍了一个新的评估器:X-learner,并使用一个统一的元学习框架对它和其他的CATE评估器进行表证。并通过两个随机试验数据集比较了他们的性能。
      在第一个随机实验,我们评估了邮件对选民投票率的影响,在第二个实验组,评估了上门交谈对性别歧视的影响。实验组,发现treatment效果是不一样的,我们通过CATE来量化这种差异。
      为了评估CATE,我们使用了统计学和机器学习中的回归或监督学习的方法,这些方法已经成功的广泛被其他的应用使用。具体的讲,我们我们的元算法是基于二值的treatment实验。元学习器把估计CATE拆分为多个子回归问题,然后这些问题可以用任何回归或者监督学习方法来解决。
      在大多场景评估异构treatment效果的元算法中需要有两个步骤。1)它使用基学习器分别评估treatment和contal结果的条件期望。 2)计算他们(treatment和contal)之间的差异。基学习器可以使用线性回归或者基于树的方法。当使用树学习器时被称为Two-Tree评估,我们因此将这种方式称为T-learner。“T”就是“two”的缩写。
      另外一种评估CATE效果是利用所有的特征和treatment信号进行训练模型。让treatment信号为空时表示特殊情况,就是contral情况。预测CATE时是修改treatment信号的值进行预测,两次结果的差值作为最终的结果(就是把treatment当做特征使用,训练一个模型,使用时先把treatment信号置为1预测一遍,在置为0预测一遍,两个预测做差表示CATE)。这种元算法就是S-learner,“s”就是“single”的缩写。
      不是所有的捕获treatment异构效果的方法都是元算法。例如,一些研究所人员通过估计有意义的子群体的评价treatment效果来分析效果的异构性。例如文献8中的因果森林。由于因果森林是基于RF的方法,因此在模拟研究中可以与RF的元算法进行比较,并在结果中我们发现因果森林和基于RF的元算法表现的很好,但是也有其他的元算法效果也可以因果森林效果更好。
      本文的贡献主要是引入了一种新的元算法:X-learner。它是建立在T-learner的基础上,并将训练集中的每个观测值用在一个类似“X”形状的公式上。假设我们可以直接观测到Treatment的效果,我们可以通过一些方法来刻画这个CATE函数。但是在实际中我们的实验样本不可能同时处于Treatment和control的,X-learner就是利用观测到的结果来评估CATE的。
      与其他的CATE评估方式比,X-learner有两个优点。第一,它可以证明可适应结构性,例如CATE的的稀疏性或平滑性。这特别有用,因为CATE通常为0或者近似为线性。第二,当一个treatment组(通常为control)的数据量比另外一个treatment大很多时特别有用,发展这种亲口的原因是对照组的数据比较容易获取。

    框架和定义

      我们采用 Neyman–Rubin潜在结果框架,并假设一个超群体或分布P,从中给出N个独立的随机变量作为训练集。即(Y_i(0),Y_i(1),X_i,W_i ) \sim \mathcal{P},这里X_i \in \mathbb{R^d}表示的是一个d维的特征向量,W_i \in {0,1}表示的是否是treatment, Y_i(0) \in \mathbb{R}表示的是对照组的结果,Y_i(1) \in \mathbb{R}表的treatment的结果。在这些符号表示下,平均treatment(ATE)效果可以表示为:ATE:=\mathbb{E}[Y(1)-Y(0)]
    定义对照组的相应\mu_0和实验组的相应\mu_1:\mu_0(x):=\mathbb{E}[Y(0)|X=x],\mu_1(x):=\mathbb{E}[Y(1)|X=x]
    此外我们定义以下符号
    \begin{split} X \sim \Lambda, \\ W \sim Bern(e(X)), \\ Y(0)=\mu_0(X)+\varepsilon(0), \\ Y(1)=\mu_1(X)+\varepsilon(1) \\ \end{split} \tag{1}
    这里\Lambda是X的分布,\varepsilon(0)\varepsilon(1)是独立于X和W的非零均值随机变量,e(x)= \mathbb{P}(W=1|X=x)表示的是倾向得分(一个样本被分配到treatment组的概率)。
      因果推断的根本问题是,对于训练集中的每一个样本,要么观察到处于对照组(W_i=0)下的结果,要么观察到处于实验组(W_i=1)下的结果,不能同时观察到。因此我们将观测数据定义为\mathcal{D}=(Y_i,X_i,W_i)_{1\leq{i} \leq{N}}.这里\mathcal{D}\mathcal{P}决定的。为了避免所有的样本都处于对照组或者实验组概率为一个极小的非零值问题,我们将根据treatment的样本数量为条件来分析不同的评估器的效果差异。也就是说,对于一个固定的n0<n<N ,我们的条件是\sum_{i=1}^N{W_i}=n。这样使得我们根据实验组的样本n、控制组的样本m=N-n下来描述评估器的效果。
      对于一个具有特征x_i的个体i,判定是否对其treatment,我们需要计算个体treatment效果(ITE, Individual Treatment Effect) D_i,定义为
    D_i :=Y_i(1)-Y_i(0)
    然而,在实际中我们是观察不到D_i的,并且如果没有强大的附加假设就无法识别D_i,我们虽然可以构造数据生成过程与观察数据的相同分布,但是却和D_i的分布不同。所以,我们这评估CATE效果用以下定义
    \tau(x) := \mathbb{E}[D|X=x]=\mathbb{E}[Y(1)-Y(0)|X=x]
    个人认为,就是说单独的个体treatment差异是无法评估到的,但是可以评估一组相同特征下的子群体treatment差异。
    我们注意到CATE的最佳估计也是在最小均方误差下的ITE的最佳估计。为了证明这点,我们假设D_i一个估计量\hat{\tau_i},然后分解为
    \mathbb{E}[(D_i-\hat{\tau_i} )^2|X_i=x_i]=\mathbb{E}[(D_i-\tau(x_i))^2|X_i=x_i]+\mathbb{E}[(\tau(x_i)-\hat{\tau_i})^2] \tag{2}。由于我们无法影响公式2中的第一项,所以我们优化最小CATE的MSE也就是优化最小化ITE的MSE。
    在本文中,我们最小化期望均方误差(EMSE)来估计CATE。
    EMSE(\mathcal{P},\hat{\tau}) = \mathbb{E}[(\tau(\mathcal{X}-\hat{\tau(\mathcal{X}})^2].
    这里的\mathbb{E}取决于\hat{\tau}\mathcal{X} \sim \Lambda\mathcal{X}独立于\hat{\tau}
      为了帮助我们估计\tau,我们假设这里没有其他的混淆因素。
    条件1 (\varepsilon(0),\varepsilon(1)) \bot W|X
    在特征相同的情况下,是否被treatment要独立于结果误差。
    条件2 存在倾向得分的最小e_{min}最大e_{max}边界值,使得所有的x都符合,0<e_{min}<e(x)<e_{max}<1

    元算法

      在这个章节中,我们正式的介绍元算法(元学习),它是以特征的方式组合监督学习或回归估计,同时它允许采用任何形式的基学习器。元算法因此具有很高的灵活性,可以在不同的子问题中利用先验知识来评估CATE:可以选择特定类型的数据,可以直接利用现有的数据分析管道。
      我们首先会议一下S-learner 和T-learner,然后我们提出X-learner,这是一种可以利用不平衡(例如,实验组或者对照的样本远大于另外一个)数据的优势和CATE结构的新元算法。
      T-learner分为两个步骤,第一步,用一个基学习器来拟合对照组的相应函数,\mu_0(x)=\mathbb{E}[Y(0)|X=x]
    基学习器可以在对照组的样本{(X_i,Y_i)}_{W_i=0}采用任何监督学习或者回归估计,我们用符号\hat{\mu_0}表示。第二步,我们估计treatment的相应函数,\mu_1(x)=\mathbb{E}[Y(1)|X=x],
    在实验组的数据上进行训练,我们用符号\hat{\mu_1}来表示。那么T-learner可以通过以下公式得出:
    \hat{\tau_T}(x)=\hat{\mu_1}(x) -\hat{\mu_0}(x) \\ \tag{3}

       S-learner,是否treatment是被当做特征使用的。因此评估公式为\mu(x,w) := \mathbb{E}[Y^{abs}|X=x,W=w],这里可以用任何基学习器,我们用\hat{\mu}表示模型的估计量,因此CATE估计量表示为:\hat{\tau_S}(x) =\hat{\mu}(x,1) -\hat{\mu}(x,0) \tag{4}.

    X-learner

    这里我们提出X-learner并提供一个例子说明它的动机。X-learner学习器可以分为三步

    1. 用任意的监督学习或者回归算法估计相应函数,用\hat{\mu_0}\hat{\mu_1}表示估计量。
      \mu_0 = \mathbb{E}[Y(0)|X=x] \tag{5}, \mu_1 = \mathbb{E}[Y(1)|X=x] \tag{6}
    2. 根据对照组的模型来计算实验组中的个人treatment效果,根据实验组的模型来计算实验最中的个人treatment效果。用公式表示为:
      \tilde{D_i^1} :=Y_i^1-\hat{\mu_0}(X_i^1) \tag{7},
      \tilde{D_i^0} :=\hat{\mu_1}(X_i^0)-Y_i^0 \tag{8}
      注意到,如果\hat{\mu_0}=\mu_0\hat{\mu_1}=\mu_1,则\tau(x)=\mathbb{E}[\tilde{D^1}|X=x]=\mathbb{E}[\tilde{D^0}|X=x]
        使用任意的监督学习或者回归算法计算\tau(x)有两种方式:一种是利用treatment组训练的模型计算得到的\hat{\tau_1}(x),另一种是利用对照组训练的模型计算得到的\hat{\tau_0}(x).
    3. 通过阶段2中计算得到的两个估计量进行加权计算CATE估计量:
      \hat{\tau}(x)=g(x)\hat{\tau_0}(x)+(1-g(x))\hat{\tau_1}(x) \tag{9}
      这里g \in [0,1] 是一个权重函数。

    备注1 \hat{\tau_0}\hat{\tau_1}都是\tau的估计量,而g是把这些估计量合在一起提高\hat{\tau}的准确度。根据我们的经验,我们发现倾向得分作为g是很好的,所以选择g=\hat{e},如果在实验组和对照组的样本数据比例很大或者很小时,选择g=1或者g=0也是有意义的。对于某些估计量来说,它有可能估计\hat{\tau_0}\hat{\tau_1}的协方差矩阵,然后选择g来最小化\hat{\tau}

    元学习器背后的直觉(动机)

      X-learner可以使用对照组的信息来为实验组服务得到更好的估计量,反之亦然。我们通过一个简单的例子来说明这个。假设我们想要研究一种treatment的效果,我们用CATE估计量来作为x的单变量函数。然而,我们发现实验组的样本很少,对照组的样本很多。这种情况出现在行政管理和在线数据中:对照组的数据要比实验组的数据丰富的多。Fig1(a)现实了实验组的结果(圆圈)和对照组的结果(叉号)。在这个例子中CATE是常量且等于1。这里是人工模型数据生成的.

    用一个不平衡的样本案例描述X-learner背后直觉
      目前让我们只看实验组(treatment)的结果,当我们估计时,我们必须注意不用出现过拟合,因为我们只有10个样本。我们可能打算使用线性模型,(虚线)来评估。对于对照组,我们注意到当区间的观测值似乎是不同的,最终我们用一个在之间跳跃的分段线性函数来建模(实线)。这是一个相对复杂的函数,因为有很多数据我们不担心过拟合问题。
      在T-learner模型现在将计算(见Fig1中C的实线部分),这是一个在跳跃的相对复杂的函数,然而真实的是一个常量。所以这里是有问题的,因为我们估计CATE方程时是基于只有10个样本的实验组训练的模型。(换句话就是,实验组的样本太少,计算的\hat{\mu_1}是不准确的,从而利用\hat{\tau_T}(x)=\hat{\mu_1}(x)-\hat{\mu_0}(x)计算的\hat{\tau}也是不准确的)。

    这里指出T-learner在实验组和对照组样本极不均匀时的预测的错误CATE结果

      在选择计算treatment组的预测值时选择了一个比较好的估计量,正确的避免了过拟合,最终我们选择了一个相对复杂的CATE评估方式。我们可以选择一个在0到0.5之间跳跃的分段线性函数,但是当只考虑treatment组时这显然是不合理的。但是,如果我们还要考虑对照组的,则这种公式将是自然选择。换句话说,我们应该改变\mu_1\mu_0,希望以这种方式估算他们的差是对\tau的良好的估计。

    这里是说我们计算treatment效果时用到了对照组的模型,如果只考虑treatment组这是不合理的。但是我们的目标不是找treatment和control,而是找treatment和control的差,通过这种方式可以更好的拟合\tau

    X-learner使得我们可以做到这一点。它使我们能够利用CATE结构信息来高效的利用结构的不平衡设计。X-learner第一阶段时和T-learner相同的,但是第二阶段,从reatment的观测结果减去对照组训练的模型估计量,从实验组训练的模型减去对照组的观测结果,从而估算出treatment的结果。\tilde{D_i^1} :=Y_i^1-\hat{\mu_0}(X_i^1),
    \tilde{D_i^0} :=\hat{\mu_1}(X_i^0)-Y_i^0
    这里我们用Y_i^0Y_i^1分别表示对照组和实验组的观测结果,X_i^1X_i^0分别是相应的特征向量。Fig1(b)展示了计算treatment的效果\tilde{D}。根据公式7、8 可以计算出 \hat{\tau_1}\hat{\tau_0}。然后再利用以下公式计算出最终的评估结果。
    \hat{\tau}(x)=g(x)\hat{\tau_0}(x)+(1-g(x))\hat{\tau_1}(x)

    这里计算\hat{\tau_1}是利用实验组的观测数据减去对照组模型预测的结果,\hat{\tau_0}是利用实验组模型预测结果减去对照组的观测数据。要说明的是\hat{\tau_1}(fig1_b中蓝线)计算的更准确一些,因为对照组模型是准确的,但是实验组模型是过拟合的。所以fig1(b)蓝线更接近正确值(treatment真实效果为1)。

    如果我们选择g(x)=\hat{e}(x),即使用倾向得分作为g,\tau将和\hat{\tau_1}(x)非常相似,因为我们在对照组中有更多的观察结果,即\hat{e}很小。Fig1(c)显示了T-learner和X-learner的效果。
      在这个例子中我们选择S-learner很难评估,因为如果才有RF的基学习器进行训练时,S-learner第一个分裂可能把97.5%的实验组的样本分裂出去,造成后续分裂时缺少实验组的样本。

    换句话说就是实验组和对照组的样本比例极不均衡时,如果使用S-learner训练时几次分裂就会把所有的实验组样本使用完。

    仿真结果(略)

    这里说元算法的基学习器的选择会最对最终的结果有很大的不同。
    指出S-learner是否treatment当做和其他特征一样的权重是不是最明智的。
    指出T-learner没有合并实验组和对照组,这对预测CATE是不利的,因为只是拟合各自的数据集,没有表现出实验组和对照组之间的相应功能。
    指出当实验组和对照组的样本非常不均衡时,X-learner是牛逼的。

    收敛速度比较(略)

    应用(略)

    通过2个数据证明X-learner的优越性。

    结论

    这篇文章综述了CATE估计的元算法,包括S-learner和T-learner。然后提出了一个新的X-learner,它可以将任何监督学习或者回归算法组合转换来评估CATE。X-learner适合于各种场景,例如当实验组数据要比对照组数据多出很多时,理论和数据均表明X-learner能够很好的拟合treatment的效果。

    附录:


    S-learner
    T-learner
    X-learner

    相关文章

      网友评论

        本文标题:X-learner:Meta-learners for Esti

        本文链接:https://www.haomeiwen.com/subject/owbhghtx.html