小白入门 A/B Testing 之样本数

1,211 阅读3分钟

在前面几篇文章中已经概况讲解了如何做 A/B 实验与检验原理。那么到底需要多少样本可以满足实验的需求呢?

样本量越多越好吗?

有人会说当然是"样本量越多越好"!注意,这个越多越好,我们是否能保证正在做实验的版本万一带来了极大的负面影响,比如造成了交易量下跌,你还会觉得是越多越好吗?所以这里要取一个平衡。通过科学方法取最小样本数来验证实验,并保证在推全量后依然有极大概率验证我们的假设。

这里有一篇讲的深入浅出的文章,有兴趣可以看原文。这里大致总结一下,多少样本数量主要取决于你预期的指标与原指标的差别。比如说你原来的转化率 CR 为 5% ,现在如果你期待新方案想提高到 10% 才算有效,那么这个样本数量是不需要太多的。 如果你期待的方案是提高到 6%,两者只差 1% ,这样的变化是微小的,所以需要更多的样本与证明。

换句话说,相差越大,样本要求更少。和我们自然观测指标的场景一致。人们往往对变化较大的比较有把握,对于微小的差别很难去判断是否有效。

最小样本量

上面说了结论,那么这个结论是如何得出来的呢?其实这里有一个最小样本量公式,先贴出来:

其中 n 是每组所需样本量,因为 A/B 测试一般至少2组,所以实验所需样本量为2n;α和β分别称为第一类错误概率和第二类错误概率,一般分别取0.05和0.2;Z为正态分布的分位数函数;Δ为两组数值的差异,如点击率1%到1.5%,那么Δ就是0.5%;σ为标准差,是数值波动性的衡量,σ越大表示数值波动越厉害。从这个公式可以知道,在其他条件不变的情况下,如果实验两组数值差异越大或者数值的波动性越小,所需要的样本量就越小。

如果已经不记得上面几个变量的含义的话,再重新回顾一下之前提到的 α 和 β. 先回顾一下两类假设。

真实情况
我们的判断 没区别(H0) 有区别(H1)
有区别 第一类错误: 冤枉啊 Power: 正确
无区别 正确 第二类错误:遗漏
  • α 又称为 Significance Level ,还记得第一类错误吗?这个就是第一类错误出现的概率,是我们要尽可能避免的 (宁缺毋烂),所以这里取值通常为 5%
  • β 又称为 第二类错误 (Type II error) ,β = 1 - power。通常取 20%。
  • power 是指的判断零假设正确,也就是 Statistical Power,我们做实验目的是为了检测出差别。如果 power 低,证明即使新方案真的有效果,实验也不能检测出来。换句话说,我们的实验无卵用. 通常取 80% 以上。

样本量计算工具

这个工具可以在线计算 A/B 样本量: