ABtest实验原理、流程、应用以及面试常问问题。

ABtest作为互联网量化策略和ROI的黄金准则,常用来验证一个产品功能是否能够上线的手段。
ABtest原理:假设检验
简化理解,即存在两组随机均匀分布的用户,对其中一组进行某种改动,实验结束后分析两组用户行为数据,通过显著性检验,判断这个改动对于我们所关注的核心指标是否有显著的影响。
ABtest实验流程

① 实验开始之前,分析业务数据,明确产品改动点。
② 确认改动点之后,设计需要观测实验数据的核心指标。
③ 实验样本量越大,结果越可信,但对用户的影响范围就越大,因此计算实验需要的最少样本量。然后结合目前DAU计算实验周期。
④ 计算样本量之后,设计流量分割策略,对样本流量进行分流和分层,保证样本随机均匀分布,避免出现辛普森悖论。实验初期,优化方案流量设置较小,根据情况逐渐增加。
⑤ 一般实验正式上线前会通过一小部分流量观察一段时间,观察产品改动是否会产生极端影响,这就是灰度实验。
⑥ 实验正式上线,采集实验数据并分析,如果统计显著性达到95%以上并且能维持一段时间,可以结束实验。若是在95%以下,则可能需要延长测试时间,但如果很长时间都不能达到95%甚至90%,则考虑中止实验。
⑦ 根据实验结果评估是否发布新版本、调整分流比例继续测试或者重新优化迭代方案。
实验流程中细节
1、ABtest实验计算样本量基于大数定律和中心极限定理。

  • 大数定律:实验条件不变,随机实验重复多次,随机事件的频率可以近似为随机事件概率。
  • 对于独立同分布且具有相同期望和方差的n个随机变量,当样本量很大时,样本的均值近似服从标准正态分布N(0,1)。
    样本计算公式一般如下:

    公式中,一般情况下,α=0.05,   z 1 − α 2 \ z_{1-\frac{\alpha }{2} }  z12α=1.96,α为犯第一类错误的概率,1-α为置信水平。β=0.2,   z 1 − β \ z_{1- \beta }  z1β=0.84,β为犯第二类错误的概率,统计功效定义为1-β。
      σ \ \sigma  σ为样本标准差,   δ \ \delta  δ代表实验组与对照组预期差值。
    当观测指标为绝对值类指标时:
    在这里插入图片描述

当观测指标为比率类指标时:
在这里插入图片描述
2、辛普森悖论
数据分组得到的结论与总体得到结论不一致,称为辛普森悖论。这一现象通常是由于流量分配不均匀导致的,因此需要均匀合理的分割流量。
流量分割常见的有分流和分层。
分流是按照地域、性别、年龄等把用户均匀地分为几个组,每个用户只能出现在1个组中。但这存在缺点不能同时做多个实验,效率比较低。
分层是同一份流量可以分布在多个实验层,也就是说同一批用户可以出现在不同的实验层,前提是各个实验层之间无业务关联,保证这一批用户都均匀地分布到所有的实验层里,达到用户“正交”的效果就可以。所谓的正交分层,其实可以理解为互不影响的流量分层,从而实现流量复用的效果。
3、显著性检验
对于样本数>30的通过使用Z检验,通过计算两组均值之差的z值和理论z值比较,判断两组之间的差异是否显著。
z值得计算:

  • 当观测指标为绝对值类指标时:

  • 当观测指标为比率类指标时:

z值>设定置信水平下的理论值,则拒绝原假设,认为改动有效果,否则接受原假设认为没有效果。
面试常问
一、ABtest中第一类错误和第二类错误
第一类错误是原假设为真,却拒绝了原假设。在实际中即一个产品的改动没有显著收益而我们却认为有。
第二类错误是原假设不为真,我们却接受了原假设。现实中即一个产品的改动带来收益,由于我们却认为没有。
增加样本量可以同时降低这两类错误的概率,若样本量不变则减低其中一类错误的概率会导致另一类错误概率增大。但在实际工作中,我们往往更加不能接受第一类错误,因为如果一个产品不好的改动会带来很大的负面影响,可能会影响日活和留存。而提升留存和日活很难,但降低很容易,因此更加不能接受上线一个不好的优化改动。
二、如果你发现AB测试的结果在统计上来说是显著,但是在实际中却不显著,这是为什么?
这个可能的原因是我们在AB测试当中所选取的样本量过大,导致和总体数据量差异很小,这样的话即使我们发现一个细微的差别,它在统计上来说是显著的,在实际的案例当中可能会变得不显著了。举个栗子,对应到我们的互联网产品实践当中,我们做了一个改动,APP的启动时间的优化了0.001秒,这个数字可能在统计学上对应的P值很小,也就是说统计学上是显著的,但是在实际中用户0.01秒的差异是感知不出来的。那么这样一个显著的统计差别,其实对我们来说是没有太大的实际意义的。所以统计学上的显著并不意味着实际效果的显著。
三、如果你发现你在AB测试当中所选取的指标在统计上来说都是不显著的,你该怎么去判断这个实验的收益?
对于这种情况,我们所选取的一种通用的方式是将这个指标去拆分成每一天去观察。如果指标的变化曲线每一天实验组都高于对照组,即使他在统计上来说是不显著的,我们也认为在这样一个观测周期内,实验组的关键指标表现是优于对照组的,那么结合这样一个观测,我们最终也可以得出这个优化可以上线的结论。
四、实验组优于对照组就能上线?
不一定。在做这个优化的时候,可能会对其他部门产生一些负向的影响,进而导致公司收入的下降。所以我们在进行AB测试的时候,必须要综合评估所有方面的一些指标变动,同时对于收益和损失来做一个评估,才能确认这个优化可以最终上线。
五、AB测试是必须的么?
面试官问:AB测试成本很高,每个调整都需要AB测试么?
但是比如说面试官问到每一个关于我们现在想要上线一个小改动,或者说要上线一个小调整,你会如何去验证这个调整的收益?你都用AB测试去进行回答的话,他可能会反问,AB测试是需要成本的,你不觉得每一次我们如果都需要通过一个AB测试去验证的话,成本过高吗?对于这种情况,你可以说如果只是验证一个小按钮或者一个小改动,我们可以在界面上去设置一个开关,用户可以通过开关的形式自行决定采用哪一种方式。那么最后我们可以通过这个开关的相关指标去判断用户对于哪一种形式有更大的倾向性。或者有时候我们可以去做用户调研,比如说通过访谈或者说是设计问卷的形式,去收集一些用户的反馈或者他们关于这些小变动的体验,所以并不是绝对的。
六、AB测试的优缺点是什么?
优点:
可以科学量化策略的效果,避免拍脑袋决定造成的损失。
为创新项目提供数据支持,有利于探究新想法。
缺点:
数据采集积累,降低了策略的迭代效率。
不同策略的维护和开发,增加了开发工作量。
七、实验效果不显著怎么办?
实验效果不显著的原因可以分成两类:
第一类:线上策略不佳,无明显差异。再观察每天的指标对比,若无好的效果,中止实验。
第二类:实验的灵敏度不够高。
针对第二类问题,我们可以通过以下方法进行优化

  • 增加样本量:根据显著性检验的原理,只要实验组和对照组差值及样本方差不变的情况下,样本量足够大,我们总是可以得到显著性的结果。
    减少样本均值的方差:减少样本均值方差的方法有减少离群值的影响,缩减方差(CUPED)的方法。
  • 更换指标:更换一个方差更小的指标,比如某购物平台,实验指标一开始是用户购买的平均金额,我们可以更换为用户是否购买。对同一批样本,是否购买属于0-1分布,样本的均值方差自然比用户购买的平均金额小很多。
    参考文章
    【长文干货】AB测试:原理流程、实际案例及面试指南
    数据分析岗 | AB实验框架+高频考点(一)
  • 13
    点赞
  • 115
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值