属于我的ABtest体系
1 由相关到因果
对于ABtest的话,实际上是由变量的相关关系到因果关系的过渡。
那如何进行因果分析?
这里以定期接受体检就能长寿吗?为列子,判断这是相关还是因果?
我们可以用5步方式来尝试判断
- 第一步,将要素套入到“原因”与“结果”中,依据经验看是否合理;比如这里,因为我们去体检了,所以我们长寿了。
- 第二步,查看此事是否纯属巧合?如果是,那就不能判为因果
- 第三步,是否存在同时影响原因和结果的第三变量? 一个定期体检都人,比起不体检的人来说,本身更注重健康和养生。所以存在第三方变量
- 第四步,否存在逆向因果关系,试着思考一下,到底是定期体检结果使人健康长寿呢?还是希望健康长寿的人更主动做到了定期体检?如果是,那就不能判为因果
- 第五步、制造反事实——如果不定期体检,健康会不会变差?寿命会不会明显变短?如果否,那就不能判为因果
2 实验前
如何选指标?如何做假设?如何选实验单位?根据实验指标和单位,如何计算最小样本量?以及实验的周期?
2.1 确定实验的核心目标(定指标)
对于ABtest中常见指标的制定,一般需要多个指标进行结合,判断该实验是否有效。
一般需要的是以下三种指标就可以了!
- 核心指标
- 辅助指标
- 反向指标
2.2 指标分类
对于不同指标的检验方法是不同的,有的使用Z检验,有的使用t检验。
对于指标分类,分为以下两种:
-
相对值指标(常用)
例如:CTR
使用Z检验 -
绝对值指标
列如:DAU、点击次数
使用t检验
2.3 建立假设
原假设:h0
备择假设:h1
(注意:原假设一般是没有效果的,备择假设一般是有效果的)
2.4 选取实验的单位
根据以下3种方法进行选取:
-
用户粒度
这个是最推荐的,即以一个用户的唯一标识来作为实验样本。好处是符合AB测试的分桶单位唯一性,不会造成一个实验单位处于两个分桶,造成的数据不置信。
-
设备粒度
以一个设备标识为实验单位。相比用户粒度,如果一个用户有两个手机,那么也可能出现一个用户在两个分桶中的情况,所以也会造成数据不置信的情况。 -
行为粒度
以一次行为为实验单位,也就是用户某一次使用该功能,是实验桶,下一次使用可能就被切换为基线桶。会造成大量的用户处于不同的分桶。强烈不推荐这种方式。
2.5 确定测试的样本量(选单位)
公式计算:
工具计算:
2.6 确定实验的周期(算时间)
如果周期过短:没有足够的证据表示是改版产生的影响
周期过长:浪费人力物力
标准实验周期:科学的实验周期应该在2-4周范围内。尽量涵盖到目标样本量以及所有时间维度上(工作日、节假日)
3 实验中
这是ABtest的重中之重,核心是——》筛用户,验策略,保唯一。
这里不仅需要验证是否所有用户仅处于同一个桶,还需要验证线上实验桶策略是否符合预期(组间互斥、组内正交)!
首先让我们看看ABtest的整体流程。
然后让我们看看需要注意的点:
注意点1:
(在100%的用户进行50%、50%的划分的时候需要注意的点(流量分割))
重点使用以下两种模型进行流量的分割:
- 分流
- 分层
注意点2 :
先AA后AB,在流量分流,为避免互相影响,分流远一点
4 实验后
需要回收数据,通过计算P值或者置信区间Diff的方法,校验该功能是否有效
4.1 数据检验
绝对值指标用T检验,相对值指标使用Z检验
检验统计量(p值法、拒绝域法)
4.2 怎么进行验证(结果分析)
重点看选择的指标是否有效的提升!(强调没有其它因素干扰的情况下)
一个问题:
问:若多个指标下降怎么分析(也就是具体效果怎么计算)
答:假设检验,或者延长周期,查看七日留存率,杜绝偶然因素
5 场景、缺点、举例
5.1 场景
可以使用的场景:
- 产品迭代可以使用AB测试。比如界面优化,功能增加,流程增加,这些都可以使用AB测试。因为我们是在原有基础上做一定更新迭代,可以直接使用AB测试。
- 算法优化可以使用AB测试。同理,算法筛选,算法优化这些我们都可以使用AB测试来测试。因为我们也可以通过流量切分构造实验组和对照组来验证效果。
- 市场营销的部分场景可以使用AB测试。内容的筛选,时间的筛选,人群的筛选,我们也可以使用AB测试来实验验证效果。
不可以使用的场景:
- 变量不可控。比如我们业务有两个APP,我们想做一个策略,验证是否能够提高用户使用了A产品,再去使用B产品的概率。这种是不支持AB测试的,因为用户关闭一个APP后,非常多的不可控因素。
- 样本量较小也不支持AB测试。因为从统计学上来说,我们要验证一个数据是否有效,还是需要一定的样本量的。
- 至于全量投放。比如我们开了一个发布会,换了一个logo,这种全量投放,怎么做AB测试?你可以让用户不来参与发布会还是让用户不看到新logo?!
5.2 缺点
需要的用户人数大,可能的影响因素多,可以测试的选项数有很大限制等等。
5.3 注意事项
-
网络效应
1) 从地理上区隔用户 2) 从用户上直接区隔
-
学习效应
1) 一个是拉长周期来看 2) 只看新用户
-
多重检验问题
在实验结束前,不要多次去观察指标,更不要观察指标有差异后,直接停止实验并下结论说该实验有效。
6 总结
以下是总结的思维导图
: