赞
踩
因果推断主要有两个理论框架:以Donald Rubin为代表的潜在结果(Potential Outcome, PO)框架,和以Judea Pearl为代表的图模型(Graphical Models, GM)框架。
相关性(correlation)和因果关系(causality)
机器学习(这里主要指有监督学习)的目标是给定x,预测y,得到的是x和y之间的相关关系,而不是因果关系。
内生性:在经济学和其他社会科学中,由于逆向因果和遗漏变量而导致的无法区分相关性和因果关系的问题。
基于Rubin因果模型/Pearl do算子。保持其他变量完全一致,只改变实验变量X,观察因变量Y的变化
问题: 同一个体不可能同时进入实验组和对照组,比如一个病人,只能用药或不用药,不可能同时观察到两种状态的结果
自然科学的基本方法。如果样本被随机的分进实验组或对照组,仍然可以得到因果关系的结论。比如,随机给病人用药或不用药,观察两组病人的康复情况。
问题1: 有时无法进行随机实验。例如,对一部分病人予以救治,对另一部分病人不予救治,有伦理争议
问题2: 实验并不真正随机,得到的结论也就不是真正的因果关系(逆向因果、遗漏变量)。例如研究上大学与收入水平的因果关系,是否上大学,和个人先天性因素(如智商或能力)有关,并非完全随机
社会科学的基本方法。并非为了实验目的而发生的外部突发事件,使得当事人仿佛被随机地分到了实验组或对照组,称为自然实验。自然实验可以认为是由“上帝之手”进行的随机实验,利用自然实验,可以进行与随机实验同等可信的因果推断。自然实验使得从观察数据而非实验数据中进行因果推断成为可能,是实证社会科学的基础。
例子1: 研究上大学与收入之间的因果关系。高考分数,分数线附近的考生,可以认为他们各方面没有系统差异,超过分数线或者没超过分数线,可以认为是“上帝之手”随机选择的结果。成绩超过分数线的,考上大学,进入实验组,没有超过分数线的,进入控制组。由于考试机制的原因,分数线附近的考生进行了随机分组实验,因此可以视为“准实验”。(陈强,2010
AB test中常用的方法。将样本随机分成AB两组,A组作为实验组,B组作为对照组。观察两组实验前后的相对差异的变化。
用最小二乘法估计以上方程,得到的系数βd表示的即是X和Y之间的因果关系(处理效应)。协方差为0,是为了保证没有遗漏变量/逆向因果,也就是说下图中U中全部的变量都得到控制(即加入方程中作为控制变量)。这一要求称为“外生性”(Exogenous)。
如果协方差不为0,称为存在“内生性”问题(Endogeneity),或称为存在未控制的混淆变量(Confounder)。此时得到的只是相关关系,而不是因果关系。
在存在遗漏变量或者逆向因果时,无法得到真正的因果关系。此时,可以基于工具变量(Instrumental Variable),使用两阶段最小二乘法(2 Stage Least Square)。(Theil 1953; Basmann 1957)。
所谓工具变量,是指与X相关,但与遗漏变量U不相关的变量Z。此时,在Z→X→Y这条路径上,可以排除遗漏变量U的干扰,得到真正X和Y间的因果关系。
使用统计学语言描述,工具变量,是符合如下要求的变量Z:
1.外生性(Exogenous):
2.与目标研究变量(Variable of Interest)相关:
此时,即可以用Z,近似替代原来方程中的X。具体做法是:
第一阶段:以X作为因变量,对Z做回归计算该回归的拟合值X'
第二阶段:以X'代替X,并估计原来的方程 这里X'符合外生性假设:,因此得到的关系是真正的因果关系。由于回归分成两个阶段,这种方法也称为“两阶段最小二乘法”。
基于机器学习模型进行因果推断,需要解决两个问题:
目前的文献都在解决第一个问题,据本文作者所知,对于内生性问题,目前尚没有可靠解决方案。
对于问题1,推荐一篇比较有影响力的文献 Wager&Athey(2018, JASA):基于随机森林做因果推断,目标估计条件平均处理效应(Conditional Average Treatment Effect),Wager&Athey对普通决策树进行改造,得到因果树。因果树使用控制变量X作为分裂特征,然后在末端子叶节点上对目标W进行因果推断。
传统的增益uplift模型有S-learner、T-learner、X-learner几种网络结构。
S-learner将干预变量T作为一维隐特征,融入底层的特征向量中,利用统一模型直接学习这一维特征的作用,线上进行预测时,将干预特征分别置为0和1得到两次预测值的差值作为Uplift分数。具体公式如下:
常规的S-learner模型效果一般,因为变量T在整个模型中的作用微弱,统一模型很难预估准其影响。在应用中一般采用将T变量融入顶层embedding的方式,放大T对预估结果的作用。由于在训练时同时使用了Uplift和Treat两组数据的样本,即原始的数据属于不同样本空间,但由于统一模型训练而使得底层特征的分布保持一致,所以也能取得较好的效果。
示例模型如下,添加一维是否投放干预的特征,同时为放大这一维特征的作用,采用在模型的顶部与输出的logits进行结合的方式,最终再经过一层全连接预测用户次留概率的增益uplift。
T-learner在其基础上做了进一步改进,两组样本进入不同的网络,treat组和control组分别用独立的模型训练。具体公式如下:
在线上预测阶段采用两个模型的预估分差值作为最终预测分数。这里由于两次训练,两个不同模型的叠加使得误差也得以放大,对模型的效果也有一定影响。
X-learner是一个两阶段建模模型,第一阶段类似于T-learner为两组样本单独训练模型,第二阶段再利用独立模型预估treat组和control组的因果效应作为权重系数(该权重采用倾向性得分匹配得到的分数T(x),倾向性匹配即判断样本属于treatment组的概率),线上预测时对两组模型的预测分数进行加权,作为最终的输出,具体公式如下:
也可以采用模型学习相对独立的Control net和Uplift net两个网络,训练时使用一维是否投放的特征来作为uplift网络和Control网络权重更新的信号,T=1时训练更新Uplift & Control两个网络的参数,T=0时训练更新control net网络的参数。此处模型的Loss公式为:
关于因果推断相关理念及解决方法可参考以下几篇博客:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。