A/B Test 介绍
AB Test属于析因实验中最简单的一种:单因子实验,即只让一个因子发生变化,其他因子保持不变。
具体而言,A/B-test是为同一个目标制定两个方案,在同一时间维度,分别让组成成分相同(相似)的用户群组随机的使用一个方案,收集各群组的用户体验数据和业务数据,最后根据显著性检验分析评估出最好版本正式采用。
所以AB Test一般包含两组试验:
实验组(Treatment):实验因子发生变化,如用了新的模型,服务端用了新的redis版本等。
对照组(Control):实验因子保持在原来的水平或者某个baseline,如用原来的模型,使用旧版本的redis等。
A/B Test 数学原理
从 A/B 测试的试验原理来看,它是统计学上假设检验(显著性检验)的一种形式。
假设检验是先对总体的参数提出某种假设,然后利用样本数据判断假设是否成立的过程。逻辑上运用反证法,统计上依据小概率思想。
- Z检验:一般用于大样本(即样本容量大于30)平均值差异性检验的方法。它是用标准正态分布的理论来推断差异发生的概率,从而比较两个平均数的差异是否显著。
- T检验:主要用于样本含量较小(例如n < 30),总体标准差σ未知的正态分布。T检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。
假设有来自A组和B组中的每一组的5,000个样本,其中A组为参考方案,B组为实验方案。
由于每次实验结果要么转化成功,要么失败,所以A,B的分布可看作是伯努利分布;
A ∼ B ( N , λ a ) A \sim B(N, \lambda_{a}) A∼B(N,λa)
B ∼ B ( N , λ b ) B \sim B(N, \lambda_{b}) B∼B(N,λb)
所以可以设置原假设和备择假设分别是:
H 0 : λ b − λ a ≤ 0 H_{0}: \lambda_{b}- \lambda_{a}\leq0 H