51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1130|回复: 1
打印 上一主题 下一主题

[转贴] 小流量AB测试能做吗?能!

[复制链接]
  • TA的每日心情
    擦汗
    4 小时前
  • 签到天数: 1026 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2022-3-10 09:55:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
     AB测试对于产品和运营优化的重要性有目共睹。为了能更快的得到试验结果,试验流量越大越好。
      但是当流量不够的时候怎么办呢?小流量AB测试能不能做?能!下面有多个节约流量的方法。
      消除异常数据的影响
      当点击量作为指标时,有时会看到少量设备贡献了数万的点击。这些设备可能是出了bug处于异常状态,也可能是在运行自动化测试,总之不会是正常的业务数据。如果将这些数据计入统计结果,将会对结果的准确性产生很大的影响。严重的情况只能重做试验,相当于本次试验流量全浪费掉了。所以极端用户的数据不进行统计,实践中让点击量最大的1%用户数据不参与计算。
      正确统计进入试验的用户数
      转化漏斗中的每个步骤都可以进行AB测试。假设在转化漏斗的第3层的页面进行AB测试,在统计试验UV的时候,比较科学的方法是将进入到该页面的用户统计为试验UV,而不是所有访客。如果没进入该页面的用户也统计为试验UV,则会稀释试验数据。下面举个例子看一下稀释的效果。
      AB测试需要样本量的经验公式为:

     δ是希望检测到的最小变化,p为转化率,σ是样本的标准差。
      假设到达该页面的访客为10%,该页面转化率为50%,如果想检测出10%的提升(50%提升到55%),根据公式计算大概需要1600试验样本,对应总访客16000。如果把所有访客作为试验样本参与统计,则该种算法下页面转化率为5%(只有原来的十分之一),同样想检测出10%的提升(5%提升到5.5%),则需要30400试验样本,对应总访客也是30400。
      这个例子里节约了大概1/2的流量,如果试验页面的转化率更高,前面漏斗的转化率更低,节约效果会更明显。
      点击转化率比点击数量更容易获得统计显著的结果
      有些场景下,如果认为用户多次点击和单次的点击差别并不大(比如下载,注册,看广告等),可以观察点击转化率指标的统计结果。转化率是去重的,用户只要点击过就计算为1,否则计算为0。同样的试验样本,点击量的标准差是一定大于转化率的。
      仍然用上面提到的公式举例:
      假设用户点击量的分布为0次20%,1次20%,2次20%,3次20%,4次20%。
      则点击量均值为2方差为2,想检测出10%的提升需要800样本量。
      转化率为80%,方差为0.16,想检测出10%的提升需要400样本量。
      这个例子里节约了1/2的样本量,如果点击量的分布更加分散,节约效果会更明显。
      原始版本的流量不要浪费掉
      在有些情况下,为了稳妥起见往往只会让一小部分流量(比如总用户的1%)看到试验版本,99%的用户看到原始版本,如果统计试验数据的时候,看到原始版本的用户只挑出和看到试验版本用户数相同的人数(总用户的1%)来参与统计,则另外98%的流量相当于浪费了,他们实际上是对试验有帮助的。当试验版本和原始版本样本数不相同时,有一个计算等效样本数的公式:
      N = (1/Ncontrol + 1/Nexperimnet)-1
      当Ncontrol=Nexperimnet时计算得出N=Nexperimnet/2
      如果原始版本(即control版本)的流量全部参与统计,则Ncontrol>>Nexperimnet计算得出N=Nexperimnet
      等效样本数量翻倍了,相当于又节约了1/2的流量。
      善用分层试验
      想优化的地方太多了,同时跑多个试验是常态,是不是流量就不够用了?如果试验之间互相不会干扰,可以考虑分层试验。分层试验即允许同一个用户同时参加多个试验,通过流量分配的随机算法保证试验结果的代表性。原来流量只能做一个试验,现在不相关的试验可以一起做了,效率成倍增加。
      同层试验共用原始版本数据
      同层的多个试验,大家的原始版本是完全相同的,分开各自统计显然浪费了数据。以4个试验为例:
      如果每个试验有独立的原始版本和试验版本,流量分配都是总流量的1/8,则根据上面提到的等效样本量公式,每个试验的等效样本数为总流量的1/16。如果4个试验的原始版本合并为公共的原始版本(占总流量1/2),则每个试验的等效样本数为总流量的1/10。等效样本量提升了60%。
      如果多个AB测试试验优化的是同一指标,还可以进一步的对公共原始版本的流量进行微调。令n为试验数量,则 (Ncontrol/Nexperimnet)2 = n 时等效样本数量达到最大值。n=4代入得到原始版本占总流量1/3,每个试验版本占总流量1/6,最终每个试验的等效样本数为总流量的1/9。等效样本量又提升了11%。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2021-6-9 14:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2022-3-11 16:30:29 | 只看该作者
    技术上一般能做,业务上看有没有必要做
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-29 13:16 , Processed in 0.085549 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表