常见因果推断方法梳理

因果推断到底在做什么?

因为相关性不等于因果性(详情参考selection bias和confounding bias),所以我们需要通过控制变量去找到因果关系,而因果推断就是一个尝试“找到两个完全一样的样本,然后通过控制变量去找到因果关系”的过程。



因果推断的分类和常见的因果推断方法

有三种核心的因果推断方法:统计实验(Statistical Experiment)、准实验(Quasi-experiment)、反事实(Counterfactuals)

图:因果推断的方法分类

1.统计实验(Statistical Experiment)

这种情况下,我们可以通过随机分组来产生实验组和控制组,从而实现“完美”的控制变量。一般使用统计学的假设检验就好,而假设检验也是因果推断中准确度最高的方法。

假设检验很简单,在这里就不详细讲了。


2.准实验(Quasi-experiment)

这种情况下,实验组和控制组的产生不随机,存在某个因素影响不同组的分流,因此实验组和控制组是“没有完全的控制变量”,所以我们就需要人为地进行样本的调整,让实验组和控制组实现“完美的控制变量”。

准实验(Quasi-experiment)常见的方法有:Matching匹配、Weighting加权、DID双重差分

Matching匹配:常见的策略是PSM(Propensity Score Matching,PSM详解 ->),本质就是为每个样本找到“双胞胎”,从而实现控制变量。实践中惠对于实验组(对照组)的unit,我们在对照组(实验组)里面找和他相似的unit,然后将两者的差异当做干预对于这个unit的效果,求一个平均就得到干预对于这一群人的平均效果ATE。

*Matching缺点就是会浪费一些数据,同事对于高维的情况,我们会难以判断两个样本是否相似。

图:matching概念图解

Weighting加权:常用的策略是IPW(Inverse Probability Weighting Estimator,IPW详解 ->),本质就是给每个样本一个“倾向性分数”,通过这个分数来给每个样本赋权,从而实现控制变量,让实验组和对照组的差异变小。

理论上可以证明IPW估计出来的差异是ATE(Average Treatment Effect,即我们想要知道的treatment的效果)的无偏估计,但是当具有某种特性的x的units在实验组或者对照组出现的比例很小的时候,会导致我们估计出来的倾向性得分趋进于0或者1,然而倾向性得分是在units的权重函数的分母上面的,使得IPW虽然无偏(bias=0)但是波动很大(variance很大)。为了解决这个问题,人们通常会利用估计出来的倾向性得分的分位数将所有样本分层(stratification),然后将每一层里面的样本当做同质的,计算一下每一层里面实验组和对照组之间的差异,然后以每一层的样本量为权重,每一层差异的加权平均,当做所有样本的干预效果(bias增加,variance下降)。

*IPW的准确性直接取决于倾向性分数的构建。

图:加权概念图解

DID双重差分:本质就是找到一个有“平行趋势”的样本,然后对比两个样本之间的差异来确定Treatment Effect。 DID详解 ->


3.反事实(Counterfactuals)

这种情况下,不存在控制组,我们只能通过机器学习模型来产生反事实的样本结果。

常见的方法有:增益模型(Uplift model)、因果森林、马尔可夫链、夏普里值

Uplift model:用于估算ITE(Individual Treatment Effect)。以广告投放为例,uplift model的核心逻辑就是先用小样本做一个实验组(投广告)和对照组(不投广告),然后分别用实验组和对照组的数据建模,预测他们人们购买的概率,实验组为模型A(预测看完广告购买的概率),对照组为模型B(预测没看广告购买的概率)。接下来对每一个人都跑一遍模型A和模型B,两者的概率差即为uplift value。基于uplift value和两个模型的预测结果,我们可以很容易把人分为以下四个象限,就能够知道什么人应该投广告,什么人不需要投广告。

Uplift model详解 ->

图:用uplift model分出的四象限人群,从而针对性地采取措施

因果森林:To Be Continued…

马尔可夫链:常用于渠道归因,本质是基于移除效应来找到每个节点的贡献.

缺点是马尔可夫链只是基于统计数据的伪归因,用这个归因的话往往链的前几个节点就是最重要的(这不一定在现实中是正确的);且马尔可夫链不考虑单个节点的重复曝光(吸收马尔可夫链可以一定程度解决这个问题,因为马尔可夫链允许节点之间的游走)

马尔可夫链详解 ->

夏普里值:常用于渠道归因和解释机器学习模型,本质是“考虑节点的所有顺序”来实现归因。

夏普里值的渠道归因 ->

夏普里值解释机器学习模型 ->



Next
Next

数据和统计学常识