A/B Test Questions Combo
侯劢祺AB Test 定义
基于小样本的后验方法;设立对照组和实验组对变量进行试验,建立假设检验对不同组的结果进行检验 (变量是否对结果造成 显著影响
)
核心:
随机分流 -> (对照组 & 实验组) -> (同一时间段) -> 假设检验 -> 是否有显著差异
AB Test 如何分流
分流(一定随机均匀分配),保证用户分布一致,这里有两种方式进行分流
分桶
用户整体切割几桶,用户只能在一个桶里(但是这个情况在现实中不现实),有一个解决办法就是同时上线几个多个实验
分层
将业务逻辑互拆的环节分成多层,每层共享同一批用户,用户随机后,处于不同的桶,用户会处于多层多个实验中,,只要多层之间互不影响;
这样保证每个实验都能用全流量切割的同时,也保证实验是置信的
AB Test 什么时候用T检验,什么时候用Z检验
- 选用Z检验
- 样本量足够大 ($n \ge 30 $)
- 总体标准差 $\delta$ 已知
- 常用于 点击量 CTR,转化率等指标
- 选用T检验
- 样本量较小 ($n \le 30$)
- 总体标准差 $\delta$ 未知,仅能获取标准差
- 常见例子: 新功能留存率,因初期用户量少(每组10-20人)并且无法得知总体留存的标准差
如何理解第一类错误 和 第二类错误
Type Error 1 (去真)
$H_{0}$ 为真,但实验结论错误拒绝了 $H_{0}$
例子:一个功能的改动,本来不能
给我们带来任何收益,但我们却误认为它能
够给我们带来收益Type Error 2 (纳伪)
$H_{0}$ 为假,但实验结论错误地接受 $H_{0}$
例子:一个功能的改动,本来能
为我门带来收益,但是我们却误认为它不能
够为我们带来收益
实际中,Type I Error 的出现是我们更加不能接受
$$\text{Type I Error 的概率(设定容忍误判B更好的概率)} = \text{显著性水平} \alpha = 0.5$$
$$\text{Type II Error (正确判断B比A好的概率)} = \beta => \text{统计功效} 1-\beta \text{ } power \le 0.8 $$
**核心矛盾:**Type I 和 Type II 两者不可以同时降低; Type I 和 Type II 属于此消彼长。降低 $\alpha$ 可以降低Type I Error 出现。 增加样本量则可以降低Type I 和 Type II的出现
AB Test在结果统计时显著但是在实际中时不显著?
这是由于样本量过大导致总体数据量差异很小。我们发现一个细微的差别,它在统计学上来说时显著的,但是在实际效果上并不显著。比如,我们优化开屏速度B版本的速度比A版要快0.001.虽然这个 0.001在统计学上是显著的但是,用户在实际使用的时候并不能察觉到它们之间的差异
AB Test选取的指标在统计学上来说都不是显著的,那么如何去判断这个实验的收益?
选取一个通用的方式:将指标拆分成每一天去观察,指标的 变化曲线
每一天的实验组都高于对照组,那么我们可能得出结论:实验组由于对照组,可以上线
如果在AB Test中发现实验中核心指标明显优于对照组,那这个优化就一定能上线吗?
不一定,比如说,提升产品的视觉展示效果,但是这个优化可能需要用用户等待内容展示时间作为代价。所以需要考虑一个功能/方面优化,会导致另一个功能/方面出现问题
AB Test是必须的吗?
如果只是验证一个小按钮或者一个小改动,我门可以在界面上设置一个开关,用户可以通过开关的形式自行决定采用哪一种方式。最后可以通过这个开关的相关指标去判断用户对于哪一种形式倾向性更高。或者我们可以采用用户调研