AB 测试的概念来源于生物医学的双盲测试,双盲测试中病人被随机分成两组,在不知情的情况下分别给予安慰剂和测试用药,经过一段时间的实验后再来比较这两组病人的表现是否具有显著的差异,从而决定测试用药是否有效

1、互联网公司的 AB 测试

互联网公司的AB测试也采用了类似的概念:将 Web 或 App 界面或流程的两个或多个版本,在同一时间维度,分别让两个或多个属性或组成成分相同(相似)的访客群组访问,收集各群组的用户体验数据和业务数据,最后分析评估出最好版本正式采用
初识AB测试 - 图1

2、AB 测试的应用场景

AB 测试应用场景由小到大可分为:

  • 控件层面:如通过对比按钮文案、颜色、位置、形状等差异对转化率造成的影响,从而确定转化率最高的按钮形态;
  • 功能层面:如通过 AB 测试确定最优的推荐算法、定价策略;
  • 产品层面:通过灰度发布,在确保改版安全有效后再面向全量用户发布。

    3、AB 测试的使用

    AB 测试是一个反复迭代优化的过程,它的基本步骤可以划分为:

  • 目标:设定项目目标即AB测试的目标;

  • 方案:设计优化的迭代开发方案,完成新模块的开发;
  • 分流:确定分流方案;
  • 测试:按照分流比例开放线上流量进行测试;
  • 数据:收集实验数据进行有效性和效果判断;
  • 对比:对比试验结果确定发布新版本、调整分流比例继续测试或者在试验效果未达成的情况下继续优化迭代方案重新开发上线试验。

    4、AB测试的两个重要问题

    4.1 分流策略

    AB 测试是对线上生产环境的测试,测试版本的流量通常不宜过大。尤其对于那些影响范围较大的改版。但是,测试版本的流量如果太小又可能造成随机结果的引入,试验结果失去统计意义。

为了规避这种因为样本量不足造成的试验结果不可用,在 AB 测试设计时可以采用如下措施:

  • 试验设计时预估进入试验的样本量,做分流规划时避免分配给测试集的样本量过少;
  • 除了进行AB测试外增加关于数据有效性考量的AA测试,将原始版本的流量中分出两个和测试版本相同的流量也进入测试;
  • 如果参与测试新版本已经分配了很大的流量比例,但是仍然存在样本量不足的情况,这时就只能通过拉长试验时间的方式来累积足够的样本量进行比较了。

    4.2 效果分析

    AB测试实验效果的分析通常分为两个步骤:
  1. 实验有效性的判断:
    即判断实验的分流是否已经到达所需要的最小样本量,从而能够以较大的概率拒绝两类统计错误的发生。最小样本量的判断可以采用假设实验目标指标符合正态分布下,两类错误发生概率的分位数的方式进行估算。或者更一般的可以采用AA测试,对两个老版本的实验结果计算 P 值,从而判断其是否存在显著差异。如果AA实验的结果不存在显著差异,那么可以认为实验结果是有效的,进而可以对新老版本的实验结果进行进一步的判断
  2. 实验结果的比较:
    在确认实验有效后对实验的结果进行判断,通常通过比较新实验版本和老版本是否存在显著差异(前述的P值判断),以及计算实验结果指标的置信区间(通常选用指标的95%置信区间),从而判断新版本是否相对老版本存在显著提升或下降。

关于最小样本量、测试时长、实验结果对比,有很多线上计算工具供使用,如:https://abtestguide.com/calc/
初识AB测试 - 图2