一介绍
上一篇ZZ介绍了本篇综述的摘要和引言,了解到了本篇文章主要是关于基于“潜在结果框架”的因果推断方法综述。下面我们继续解析论文,探索作者给我们描绘的因果世界,首先附一下上篇内容:
因果推断文献解析|A Survey on Causal Inference(1)
论文原文点击文末【阅读原文】即可查看。
为了区分是原文内容还是ZZ自己的理解,下面ZZ自己的旁白用粗体标出。
二正文解析
2. 因果推断基础
本章节,作者将介绍因果推断的一些基础概念和符号表示,包括任务描述,数学符号表示,前提假设,面临的挑战和一般的解决办法,最后会给出一个启发性的例子,该例子贯穿全文。
因果推断的任务是评估实施某种策略对我们关心的结果指标的影响。举例来说,对于一种疾病有两种治疗方案A和B,对于既定的患者群,治疗方案A的康复率是70%,治疗方案B的康复率是90%。那么,两种治疗方案的康复率的差值就是因果推断关心的指标。
上述的情况是理想的情况,我们可以获得同一患者群在治疗方案A和B的康复率。实际上,我们只能观测到一种情况。为了近似这种理想情景,我们只能使用随机试验;在治疗方案完全随机分配每一个患者时,我们可以近似的认为获取不同治疗方案的群体是一致的。
但是我们已经知道,完全随机试验存在种种限制,我们期望仅从观测数据中推理出结论。观测数据是一个包括“被实施了不同策略的个体”的集合,同时我们获取了每个个体的策略效果(结果),也许也包括了个体的一些其他属性特征,但是我们不知道每个个体与被分配的策略之间是否存在这特定的关系,即不知道是否某些特定属性的个体被分配了特定的策略。
到了这里,作者为了我们描述这样一个场景:我们不能做随机试验,只是收集了一些样本数据。这些样本数据涉及了我们关心的不同策略和策略对应的结果指标,同时也会有一些我们可收集到的这些样本的其他属性特征。我们需要对这些数据下手,来进行因果推断,来评估不同策略对关心的结果带来的差异。大家的目光肯定转移到,那到底怎么评估呢?作者说,大家别急,在进行方法介绍之前,我们先来了解一下其中的专业术语:
2.1 定义
潜在因果模型关心每一个样本(个体单元)的策略与结果之间的因果关系,策略效果根据不同策略的潜在结果的差异来评估。作者首先就介绍了上述的三个基本概念:unit, treatment, and outcome。
Unit:基本分析对象,可以是一个公司,一个患者,一个个人等等,ZZ习惯称呼为其样本。
Treatment:对分析对象Unit可执行的策略,例如某个患者可以采用的治疗方案A和B,A和B都是策略。用
来表示策略,其中
表示策略的总数。对于二分类问题, W=1 代表试验组, W=0 代表对照组。
Outcome:顾名思义,试验结果,但是在潜在因果框架下,我们需要细分一下不同的outcome。
Potential outcome:潜在结果,对于任何一个样本,任何一个策略都存在一个潜在结果,
策略下的潜在结果表示为:
。
Observed outcome:观测结果,即可观测到的结果,也称为真实结果,是潜在结果的一种实际表现。使用
来表示观测结果,如果一个样本被实施了策略
,那么它的的观测结果表示为:
。
Counterfactual outcome:反事实结果,对于一个样本来说,除了它真正被实施的策略以外,所有其他策略的潜在结果都是反事情结果;反事实结果也是潜在结果的一种,可以简单理解为潜在结果=可观测结果 反事实结果。同样的,如果一个样本被实施了策略
,那么它的的反事实结果表示为:
,其中
。如果只有两个策略,那么反事情结果:
。
作者介绍完了三个基本概念之后,进一步来看,我们获取的样本数据不止策略和结果,还有我们可搜集的样本其他属性特征,作者把他们分为了策略前特征和策略后特征 pre-treatment variables and the post-treatment variables 。下面我们来解释一下:
pre-treatment variables:不受策略所影响的特征成为策略前特征,这个比较好理解,比如人的年龄,性别等等;也称为环境变量;
post-treatment variables:与策略前特征相对应,策略后特征就是受策略影响的特征变量,举个例子就是患者服药之后的身体理化特征。
在下文中,提到的特征指的都是策略前特征。策略后特征会特殊说明。那么了解了这些基本概念之后,我们有必要来刻画一下因果推断关注的核心指标:不同策略结果的差异,即策略效果Treatment Effect 。
Treatment Effect:策略效果可以根据以上的概念计算,作者将策略效果分为了四个层次:
- 整体层次,策略效果称作平均策略效果(Average Treatment Effect (ATE)):
其中,
和
分别代表整个群体的策略潜在结果和对照潜在结果。注意:这里不是我们AB实验中实验组与对照组的差值,而是整体群体,每一个个体都有两种潜在结果,进行相减求期望。
- 某策略组层次,策略效果称作策略组的平均策略效果(Average Treatment effect on the Treated group (ATT)):
其中,
和
分别代表在策略组样本上的(
)的策略潜在结果和对照潜在结果。这里 Y(W=1)|W=1 是可观测结果。
- 某子群层次,即整体的某一个子集上的策略效果,称为条件平均效果(Conditional Average Treatment Effect (CATE)):
其代表含义即在特定条件下(
)的集合的策略效果,有时也称为分层实验效果。
- 个体层次,称为个体策略效果(Individual Treatment Effect (ITE)),对于第 i 个个体,其表示为:
当结果
没有上标的时候,就代表潜在结果,个体水平也可以看成是子群层次的特例,毕竟个体水平也是整体的一个子集。
作者为什么要将策略效果分成这几个部分呢?我们要注意它们之间的转换关系,表面上,他们只是不同层次集合的策略效果的衡量,其实这是一个逐渐简化的过程,反过来看,我们一旦可以评估个体水平的策略效果,那么任何层次的效果都可以看作是某些个体效果的加权平均值(期望值)而已。后文将使用缩简代替这些概念,希望大家再回头熟悉一下这些概念。
在本小节的最后部分,作者使用上面定义的符号语言,重新定义了一些因果推断的目标:给定数据集:
,
是样本数量;因果推断的目标是计算
。
2.2 举个例子
场景:利用一份过往的治疗记录数据,来衡量几种不同药物在不同剂量水平下的治疗效果差异。
数据:治疗记录数据,包括患者的人口属性,患者当初使用的特定剂量下的特定药物,以及患者的治疗效果。
现实:对于每个患者,只有一种特定剂量水平下的特定药物的记录,对于该药物的其他剂量水平和其他药物的任何剂量水平都是未知的,即反事情结果。
挑战:我们需要通过这样的数据,推断出所有的反事实结果,进而精确的计算 ATE、ATT、CATE、ITE 指标。
对应关系:在上面这个例子中,样本是患者的治疗记录;策略是药物和剂量的组合
,
代表第 i 个患者服用了第一种药物和剂量的组合配方。Y 代表治疗效果,可以是一直身体理化指标可衡量药物的效果或者患者康复水平。
代表第
个患者服用了第一种药物和剂量的组合配方的潜在效果。另外,患者的人口特征可能包括年龄,性别,临床表现等等,其中年龄和性别是不受药物影响的策略前特征,临床表现是受策略影响的策略后特征。
2.3 前提假设
下面介绍三个因果推断常用的三个假设:
假设1:Stable Unit Treatment Value Assumption (SUTVA) ,样本-策略值稳定性假设,其包含两层含义:
- 第一,任意个体的潜在结果不受其他个体接受的策略所影响,即个体之间是独立的;
- 第二,对于每个样本,某个策略没有不同形式或版本来导致不同的潜在结果。
假设2:Ignorability,可忽略性,给定环境变量后,策略分配与策略会产生的潜在结果是独立的:
即不能根据策略产生潜在结果的好坏来选择策略:
策略的分配也不会影响到潜在的结果分布:
举个反例:比如推荐系统,经过预测点击率来选择素材曝光就不满足这个假设。这个假设也被称为无混杂假设,对于同样背景的样本,策略分配是完全随机的。
假设3:Positivity,正向假设,对于任何一个个体,任何策略都可能被分配到,即:
为什么要说明这个假设呢?因为我们的目的是评估不同策略的差异,如果某些策略完全不能被观测到,或者根本没有意义,那我们的工作就没有意义。
另外,可忽略性和正向假设统称为强可忽略或者强可忽略策略分配假设。
在以上三个假设的前提下,我们推导出可观测结果与潜在结果的关系:
这个很容易理解,就是在以上三个假设之下,某策略下观测到的结果就是该策略的潜在结果。即以上三个条件保证观测结果与实际的潜在结果是无偏的。
同时根据上面给出可观测结果与潜在结果的关系,我们重写
指标如下:
公式看着很多,很长,但是小伙伴们不要被劝退,我们来解析一下:
公式(7)中我们可以发现,虽然
都有,但是核心只有 ITE 一个指标,其他指标都是由 ITE 转化出来,所以我们一起来推导一下公式(7)中的 ITE 即可,首先我们把原始 ITE 公式和重写之后一起贴在下面:
首先我们知道,对于某个体
,其真实分配的策略
只有一种情况,在只有两个策略的情况下(作者都是以两个策略为例给出的基本公式,后面不再强调),
或者
,那么对于
的情况:
那么对于W_{i}=0的情况:
那么将两种情况合并在一起就是,无论
或者
:
那么公式(7)就推导完毕,很简单很常规的一个合并公式。
那么介绍到这里,事情逐渐明了,在三个假设下,我们只需要使用公式(7)就能搞定需求了。那么对于公式(7),我们只需要搞定
就行了。那么对于
中
和
我们都是可知的,只需要搞定
一个指标就齐活了,问题都简化到这种程度了。
但是,但是啊,就这么一个指标
给我们带来了很多困难。接下来我们跟着原文作者继续深入吧!
2.4 混杂和一般的解决办法
接上面进展,对于
我们有一种最好用的估计方式,就是找到和第
个样本的一样背景变量的样本
,并且样本
和样本
的策略不一样,那么就有
,就解决了这个问题。
有了上面ZZ的过度,就比较容易理解原文作者所说,衡量
时,在三个前提都满足的情况下,再利用上面ZZ解析说的估计思路时,直接用试验组的效果均值减对照组的效果均值就得到了
的估计值:
但是,此时我们必须面对因果推断中绕不开的难题:混杂因子的存在。具体来说,混杂因子的存在让我们无法使用上面简单的估计来衡量实验效果,即混杂因子使上面的产生了错误的结果。那么混杂因子到底是什么?
Confounders:混杂因子,混杂因子是同时影响策略分配和策略结果的变量。
混杂因子是特殊一类策略前变量,策略不能影响它,但是它会影响策略。比如上述例子中的年龄,年龄会影响治疗效果,对于同一种药物,年轻人可能会康复的更快;年龄也会影响治疗策略,年轻人可能更倾向于更激进一些的治疗策略,或者的同一种药物,年轻人可以服用的剂量更大。这时,作者恰当的给出了一个例子:
整体来看,Treatmeant A的治疗效果好于Treatmeant B,但是分年龄段来看,无论是年轻人还是老年人,Treatmeant A的治疗效果都弱于Treatmeant B;这是著名的辛普森悖论。
主要原因是两组性别分布不均,整体来看,Treatmeant A的治疗效果好,是因为A组的年轻人更多,导致整体的治疗效果更好。由于混杂的存在,在应用上面 ATE 的估计公式时,我们得到了错误的结论。
混杂的存在不仅仅如此,即使我们不使用上面估计ATE 的公式,退一步回到估计
时,混杂依旧给我们造成了困难,即选择性偏差。
Selection bias:选择性偏差是指观测到的数据与我们目标数据分布不一致的问题,即观测数据无法代表我们感兴趣的数据。混杂影响力个体的策略选择,导致了选择偏差。如图1所示:年龄这个混杂导致了选择治疗策略的分布差异。这加大了估计
的难度,我们难以找到合适的
。
如果我们在某个策略组
上训练潜在因果模型
,这个模型在其他组
预测效果会非常差,这是机器学习中的变量迁移问题。
所以说了这么多,就是混杂必须处理,处理了掉混杂,我们才能继续玩耍。下面作者介绍了一般混杂调整的方法(这里的混杂是我们可观测到的,观测不到的混杂会在4.2章节讨论):
对于混杂带来的第一种现象辛普森悖论,一般的处理方法好多知乎应该知道,就是计算分层加权平均
:
因为一旦直接估计出反事实
后,一切的问题都迎刃而解,所以接下来的因果推断主要围绕着这个方向展开。我们回到根源,想估计反事实
时,混杂带来的第二种现象:选择性偏差问题,我们一般有两类方法来解决。
- 1.生成近似无偏差的样本空间,有样本权重更新,基于匹配的方法,基于树的方法,混杂平衡方法,平衡表示学习方法和基于多任务学习的方法。
- 2.首先根据观测数据生成基本模型,然后对选择偏差造成的有偏估计进行矫正。代表方法是元学习。在接下来的章节中,作者将会对这些方法进行详细介绍。
三休息一下
呜呼,读起来挺快,写出来真慢。今天码不动了,明天再继续吧!看得过瘾的小伙伴赶紧点赞吧!
本篇我们介绍完了该论文中的基本背景知识,明确了任务目标;并通过一顿操作,将问题简化到了极限,求解反事实结果
。但是我们遇到了混杂这个拦路虎,接下来,我们将跟随作者一起,领略一下学术大牛们是如何将这个拦路虎干掉的。
对了,喜欢的朋友也可以支持一下,关注公号:人人都是数据分析师。起飞就在现在!