机器学习-算法理论

小样本AB test:Bias消除,Variance降低

2020-12-09  本文已影响0人  shudaxu

AB test基于统计学远离。通过随机划分,均匀分布的假设来实现控制变量对照的作用。但是对于小样本则会面临很多问题,有的产品流量不小,但是关键指标的贡献者很少,也是小样本状态。譬如直播打赏。
常见的问题有如下两个:

抽样不均(非完全randomized)(修正bias)

指标数值不稳定(variance过大)

Refer:
[1]:pre-experiment数据很重要。最简单的方式,就是将ab组进行实验前的数据diff记录下来,作为原始差值,但是一般情况下,如果这个差值太大,可能用这两个组的实验数据会有较大偏差,因而会影响实验的结论。

[2]:衍伸问题1: 多维度限制下构建正交的无偏分组。
在特定指标的维度,构建无偏且正交的分组?这也是一个比较难以解决的问题。
因此,这种方案某些情况下也比较难以实操。

[3]An Introduction to Propensity Score Methods for Reducing the Effects of Confounding in Observational Studies。我们用高维的特征向量X,构建对treatment(分组)的预估作为propensity score,在各个分组内,ps相近的样本,视为类似的样本。然后对ps进行分桶,分不同桶来统计treatment的ATE(Average Treatment Effect)。这个思路本质其实也是消除X不同带来的影响(影响一部分来自X的差异,一部分来自Treatment。所以用propensity score相近的条件,来近似视为X相近。X为高维度向量,直接匹配X相近不现实,况且也不一定是X所有的维度都在分组上不均)。

具体使用方法推荐stratification与matching:

- PS5:注,当我们研究的变量是总GMV等,其实metric是针对所有用户的GMV和,但是我们Propensity Score是在用户维度计算的,这里是不匹配的。所以一种方式是我们要将研究的目标变量替换成GMV均值,但是这里其实是有问题的,因为总gmv提升显著不一定人均提升显著。
能否参考Control Variate中的Variance计算?(TODO:这个方法假设实验组对照组的metic是独立的,这里似乎有点问题,因为做了matching后理论上就不是independent的了)
另外,paired test如何进行。

- TODO:此处显著性计算?Matching方法可以直接计算显著性,但是这个显著性本身其实是有问题的,因为只要你增大Matching的数量,显著性就会提升。对于Stratification方法,每个分组的显著性也可以直接计算。但总体差异的显著性如何计算?

[4]:variance reduction。
其实有很多思路,譬如在Monte-Carlo Simulation中的Stratified Sampling。
其中一个非常基本,非常直觉,也非常重要的推论是:降低单个分组(AB组)本身指标的variance,与降低Treatment effect的variance是等价的。
因为\overline Y_a,\overline Y_b可以认为是独立的,所以:Var(\overline Y_a- \overline Y_b) = Var(\overline Y_a) + Var(\overline Y_b)

见Improving the Sensitivity of Online Controlled Experiments by Utilizing Pre-Experiment Data以及Improving the Sensitivity of Online Controlled Experiments: Case Studies at Netflix
https://booking.ai/how-booking-com-increases-the-power-of-online-experiments-with-cuped-995d186fff1d

上述两种方法,本质我们都是用一些维度变量(covariate)上的信息来解释整体的variance:也类似ANCOVA。covariate选取的要点是,该变量必须是实验treatment无关的(不受实验影响)。可以证明的是,对于离散变量。使用stratification与Covariates Control是等价的。

[5]: statistical power and p-value : https://www.quora.com/What-is-the-relationship-between-statistical-power-and-the-p-value

[6]:anova and linear regression,其他ABtest相关,https://github.com/DSXiangLi/Paper_CausalInference_abtest

[7]上述两个问题解决方法的差异:
1、解决不均问题,调整了结论(通过PSM计算出来的均值diff,可能跟直接计算出的结论完全不同)
2、解决variance问题,用covariate解释了variance,但是没改变结论

[8]一些其他的思考:
我们每日实验统计,作为单独的对照,是否也是stratified by each day?

[9]关于检测对象的问题。
首先,针对上述方法,我们analysis unit都是用户,randomization unit也是用户。所以可以直接进行variance的计算,以及p-value的检验。但是当我们分析的对象不是用户时,比如是“每日总GMV”,此时需要作出一些修改。(这里相当于要将所有数据进行日级别的聚合,analysis unit是day)
本质就是:ATE本来是在用户级别算average的,现在要在天级别算average。

可以看出,DTE与ATE在当前假设(个体的指标的分布与weekday无关)下,理论值是等价的。

我们用最基本的方式可以计算出Var(Y_{cv}^{(c)}),Var(Y_{cv}^{(t)})后,便可以计算 Var(a Y_{cv}^{(t)} - b Y_{cv}^{(c)})=a^2Var(Y_{cv}^{(t)})+b^2Var(Y_{cv}^{(c)})

[10]:Improving the Sensitivity of Online Controlled Experiments by Utilizing Pre-Experiment Data见,2.3semi-parametric method,2.2parametric method(ANCOVA)的问题是:使用了线性模型,且要求Covariate包含所有的confounder(residual与输入无关的必要条件,如果有一些实验的treatment assignment非完全随机,明显受到一些因素的影响时,会比较麻烦,需要把这些因素全部纳入。

[11] U statistics
https://en.wikipedia.org/wiki/Mann%E2%80%93Whitney_U_test以及
https://tech.ebayinc.com/engineering/significance-testing-for-ratio-metrics-in-experiments/

[12]A Decision Theoretic Approach to A/B Testing

[13]连续推断导致FDR提升,Always Valid Inference: Continuous Monitoring of
A/B Tests

[14]:Tests for Two Proportions

[15]多变量:Variance Reduction
Three Approaches to Control Variates 3.2 Multiple Control Variates

[16] 二分变量(比例)的test:### Hypothesis Testing for Means & Proportions

上一篇下一篇

猜你喜欢

热点阅读