小白入门 A/B Testing 之置信区间

5,078 阅读3分钟

想像一下,如果我抛起三枚硬币,落地分别是正正反,那么我可以说抛硬币正面朝上的概率是三分之二吗?显然是不行的, 概率和频率并不是一个东西。同理,少数几次AB测试的结果也不能证明版本A和版本B的优劣。我们需要统计学上的严格论证和计算,来判断一个实验结果是否显著,是否可信。

置信区间 (Confidence Interval)

在AB实验中,实验者会统计不同方案下的各项指标,通过对比指标可以直观的反应出不同方案的优劣。有同学会问为什么不能通过对比A方案和B方案的各项指标,从而直接决策得到最优方案呢?

事实上,任何一次实验都很难有效统计所有用户的行为(总体),实验可以视为从总体中随机抽取若干个个体,作为样本。仅仅分析样本的指标就下结论,很容易导致一叶障目不见泰山。究竟样本能否代表总体,在考虑抽样误差情况下可以得到怎样的结论,就需要分析置信度和置信区间了。

置信区间 描述了测试版本比对照版本(即原始版本)在95%的置信水平上的提升范围。例如:当测试版本在实验报告的数据变化中显示[+80%,+90%],说明测试版本上线到全量用户后有95%的几率实现80%-90%的提升。

不要被上面的图吓到,网上你会搜到很多关于这个知识的专业解释,但比较晦涩难懂,特别是我这种小白。所以还是看下面的例子会比较好理解:

平均身高

我们测量了 40个随机选择的男人的身高,结果是:

  • 平均 身高为 175cm,
  • 标准差 为 20cm。

95%置信区间是(后面会解释计算方法):

意思是所有男人(假设我们可以全部测量)的真平均身高很可能是在 168.8cm 和 181.2cm 之间。

但这有可能还是不对的!这里只是说在 95% 的实验区间里会包含真平均身高,但剩下的 5% 的也许就不会。

所以我们的置信区间有二十分之一(5%)的机会不包含真平均身高。

计算置信区间

1. 写下样本的数量 n,接着求这些样本的平均值 X 和 标准差 s:

样本的数量:n = 40

平均:X = 175

标准差:s = 20

2. 决定我们用哪个置信区间,通常是 90%、95% 和 99%。

然后通过概率再查 "Z"值:

{Z}=\frac{\overline{x}-\mu}{(\sigma\sqrt{n})}

Z
80% 1.282
85% 1.440
90% 1.654
95% 1.960
99% 2.576
99.5% 2.807
99.9% 3.291

95% 的 Z 值是 1.960 (也可以通过查表得知)

3. 把 Z值代入以下的公式来求置信区间

\overline{x}\pm{Z}\frac{s}{\sqrt{n}}

  • X 是平均
  • Z 是在上面查到的 Z值
  • s 是标准差
  • n 是样本的数量

结果是:

{175}\pm{1.960}\times\frac{20}{\sqrt{40}}

即:175cm ± 6.20cm

就是:从 168.8cm 到 181.2cm 的范围

参考资料:

A/B Testing Basics: Confidence Interval

置信区间计算