数据分析工作前瞻
统计检验
因果分析
一、RCT(随机试验)
1概述
随机试验是一种最常用的方法,我们在工作中常用的A/B test就是随机试验的一种。RCT最重要的就是找一个好的问题(可以测量、精确性),这需要
- 可以量化的因变量和自变量
- 控制变量后精确的试验环境
- 猜测可能的因果关系
在开启A/B test前可以考虑先进性AAtest,其作用可以参考这篇文章
AB test 中的AA test有什么作用? 在做实验后,除了记录我们关心的自变量和因变量,我们还要关注其他变量,理由如下:
- 验证试验的随机性
- 以广告为例,我们不仅想新的推荐模式有没有用,还想知道对谁有用
A/B测试理想中需要:
- 准备两个base组,1个exp组
- 在进行A/B测试前,先进行A/A测试来检验数据的波动,保证之后A/B测验的准确性。
- 若A/A实验结果显著,则A/B测验结果将会不置信,此时可以考虑
- 实验是否正确运行,配置是否正确,是否需要重新设置实验
- 利用DID等其他方法分析
- 若A/A实验不显著,则可以进行A/B测试
讲完了大致的流程,那么来回答这样一个问题,RCT是否能解决所有的问题?答案当然是不能。RCT不能解决Non compliance问题、不能解决heterogeneous treatment effect问题等等。
2.统计检验
T检验和卡方检验是统计学中常用的检验方法,分别对应不同场景,大概可以概括为
- t检验对比两组连续型变量的显著性,比如身高、收入等等
- 卡方检验对比两组二元变量的显著性,比如性别和购买行为是否有相关性
二.Observational Study(用于过去数据的分析)
以上是可以做RCT的情况。而如果没有RCT,我们也可以用已有数据进行因果推断。
比如我们可以用panel data跑简单的线性回归模型,一些产品间的差异我们就用one-hot encoding来控制。简单罗列一下有:
- instrumental variable(工具变量法)
- regression discountinuity(断点回归)
- synthetic control & matrix completion(合成控制和矩阵补全)
1.因果分析常见工具
- 匹配法(Matching estimator)
- 固定效应fixed effect
- 双重差分diff in diff
- 稳健标准差robus standard error
1.2DID(双重差分)
举个简单例子:考虑某一活动上线后,参与和未参与用户的活跃度变化
步骤如下:
- 计算没有参与活动的用户,在活动上线前后活跃度的变化(作为"时间效应")
- 计算参与活动的用户,在活动上线前后活跃度的变化
- 计算和的差别
上述是一个理想情况下的DID分析,为什么说是理想情况呢?因为我们假定数据符合平行趋势假定,即控制组与实验组的变化趋势是一致。我们可以通过看活动上线前后两组差异的变化是否显著来检验平行趋势。
如果平行趋势检验不通过,可以考虑重采样、matching和去除异常日期(数据)
2.因果分析超纲工具
- 动态面板dynamic panel
- 合成控制synthetic control
- 矩阵补全
- 优点:不同用户参加试验时间可以不一样;实验组可以有多个样本;没有模型的假设
- 缺点:无法做统计推断(实验组有多个用户且时间不一样);需要调参找;矩阵运算慢
3.机器学习在因果分析中的应用
基于决策树和随机森林的heterogeneous treatment effect