一文搞懂AB Testing的分层分流

从零开始学运营,10年经验运营总监亲授,2天线下集训+1年在线学习,做个有竞争力的运营人。了解详情

在网络分析中,A / B测试(桶测试或分流测试)是一个随机实验,通常有两个辩题,A和B。如果你还对这个测试不是很明白,那就来文中看看~

一、定义

在网络分析中,A / B测试(桶测试或分流测试)是一个随机实验,通常有两个辩题,A和B。利用控制变量法保持有单一变量的前提下,将A、B数据进行对比,得出实验结论。

二、简述

通常网站会利用分层和分流的机制保证本站的流量高可用,原因有以下几点:

(1)网站的流量是有限的

(2)实验的对象是多层的或同一层内互不干扰的

  • 多层:例如网站不仅仅有UI层(界面),通常还有算法层等。
  • 同一层内互不干扰:例如网站的推荐位有多个(首页推荐位、商详页推荐位)。

(3)AB tests的需求是大量的

AB 是一种科学的利用数据证明方案可行性的手段,一般在网站中广泛使用。如果流量不进行分层、分流可能会导致流量饥饿,即实验一在进行中占用了全站的80%的流量,实验二就只能使用20%的流量。

因此良好的分层、分流规则可以充分使用网站的流量。

三、分层规则

1. 正交、互斥

在介绍分层规则之前,先介绍一下正交和互斥的概念。

(1)正交

如何理解正交?

例如:我们有100个兵乓球,随机拿出来50个染成蓝色,50个染成白色,则我们有蓝色、白色兵乓球各50个,现在我们把这100个兵乓球重新放在袋子中摇匀,随机拿出50个兵乓球,那么这50个兵乓球颜色蓝色和白色各25。

当然举这个例子并不是非常的恰当,因为样本太少了,此处举例只为说明正交的意义。

正交实验:每个独立实验为一层,层与层之间流量是正交的,一份流量穿越每层实验时,都会再次随机打散,且随机效果离散。

(2)互斥

如何理解互斥?

例如:我们有100个兵乓球,每25个为一组,分别染成蓝、白、橘、绿。若X实验拿的是蓝色、白色则Y实验只能拿橘色和绿色,我们说X实验的和Y实验是互斥的。

互斥实验:实验在同一层拆分流量,且不论如何拆分,不同组的流量是不重叠的。

2. 分层、分流规则

基于Goolge论文:《Overlapping Experiment Infrastructure:More, Better, Faster Experimentation》

流量从上往下流过分流模型:


(1)规则详述:

  • 域1和域2拆分流量,此时域1和域2是互斥的。
  • 流量流过域2中的B1层、B2层、B3层时,B1层、B2层、B3层的流量都是与域2的流量相等。此时B1层、B2层、B3层的流量是正交的。
  • 扩展:流量流过域2中的B1层时,又把B1层分为了B1-1,B1-2,B1-3,此时B1-1,B1-2,B1-3之间又是互斥的。

根据以上规则我们可以不断的在此模型中增加域、层,并且可以互相嵌套。这要与实际的业务相匹配,拆分过多的结构可能会把简单的业务复杂化,拆分过少的结构又可能不满足实际业务。

(2)使用场景

例1:B1层、B2层、B3层可能分别为:UI层、搜索结果层、广告结果层,这几层基本上是没有任何的业务关联度的,即使共用相同的流量(流量正交)也不会对实际的业务造成结果。

但是如果不同层之间所进行的试验互相关联,如B1层是修改的一个页面的按钮文字颜色,B2层是修改的按钮的颜色,当按钮文字颜色和按钮颜色一样时,该按钮已经是不可用的了。因此建议同一类型的实验在同一层内进行,并且需要考虑到不同实验互相的依赖。

例2:域1的此种分流的意义在于,当我们做一个实验,并且希望其他任何实验都不能对我实验进行干扰,保证最后实验的可信度。

有兴趣的朋友可以去看一下Goolge的原文。

 

本文由 @ 任秀明 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

赞赏是对原创者的最大认可
7人打赏
评论
欢迎留言交流
  1. 我想知道是根据什么把流量分开的呢,依据啥啊

    回复
    1. 下一篇文章专门介绍随机抽样 :oops:

      回复
    2. 好呀

      回复
  2. 大佬,已订阅 :shock:

    回复
    1. 你才是大佬,已互订。

      回复
  3. 看得一脸懵逼 :cry:

    回复
    1. 慢慢来 :idea:

      回复