1.目标

A/B 测试一般是比较实验组和对照组在某些指标上是否存在差异,当然更多时候是看实验组相比对照组某个指标表现是否更好。ABTest是希望通过如何改进新版优于旧版,而不是通过ABTest证明新版弱于旧版而下线实验,所以需要有效的分析数据。

2.计算公式

统计学里有最小样本量计算的公式,公式如下:

 

AB test架构 ab test原理_数据

从这个公式可以知道,在其他条件不变的情况下,如果实验两组数值差异越大或者数值的波动性越小,所需要的样本量就越小。

3.两类错误

第一类错误α叫弃真错误或显著性水平,即原假设为真时却被我们拒绝的概率; 第二类错误β叫采伪错误,即原假设为伪我们没有拒绝的概率。在一定样本量的情况下,减小一类错误必然会增大另一类错误,在实践中我们一般会优先控制第一类错误,因为原假设是非常明确的。

对α与β的理解:对两类错误上限的选取(α是5%,β是20%),我们可以了解到A/B实验的重要理念:宁肯砍掉4个好的产品,也不应该让1个不好的产品上线。

4.流程

1.确定改变点

保证单一因素原则,控制变量,即一次实验不能糅合多个影响因素

2.确定核心指标

2.1绝对值指标(较少) 2.2比率类指标(常见) 2.2.1转化率、点击率、复购率等

 

3.计算实验所需的最小样本流量与试验周期

通过公式或工具计算

 

4.设计流量分割策略

4.1辛普森悖论:细分结果与总计结果相悖 4.2除改变点外,其他影响结果的变量应保持一致 4.3分流分层原理 4.3.1分流 一份数据分流为多份数据 4.3.1分层 一份数据分层到多个数据层(各个数据层正交,互不影响)

 

5.灰度实验

相当于游戏中的内侧。灰度测试是指如果软件要在不久的将来推出新功能,或者进行重大修改,你必须首先做少量的试验工作,然后慢慢增加数量,直到这个新功能覆盖所有系统用户

 

6.显著性检验

5.有什么缺点?

(1)制作AB版本的开发、数据收集的工作量较大、以及后期维护成本增加

(2)AB测试受场景限制,产品版本发布后,无法增加或更改AB测试场景; 

(3)通常应用于短期即刻行为,可以优中选优却无法一劳永逸由于用户的需求和行为是不断进化的,「最优解」往往只是临时的。

(4)需要的用户人数多,要有足够的样本量。

6.A/B test显示B组提升了20%,如何验证是否属于正常波动

对试验结果我们要积极的进行多维度的细分分析,除了总体对比,也看一看对细分受众群体的试验结果,不要以偏盖全,也不要以全盖偏。一个试验版本提升了总体活跃度,但是可能降低了年轻用户的活跃度,那么这个试验版本是不是更好呢?一个试验版本提升总营收0.1%,似乎不起眼,但是可能上海地区的年轻女性iPhone用户的购买率提升了20%,这个试验经验就很有价值了。

7.如何选择采用哪种假设检验?

Z检验:一般用于大样本(即样本容量大于30)平均值差异性检验的方法。它是用标准正态分布的理论来推断差异发生的概率,从而比较两个平均数的差异是否显著。在国内也被称作u检验。

T检验:主要用于样本含量较小(例如n < 30),总体标准差σ未知的正态分布。T检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。

卡方检验:卡方检验是统计样本的实际观测值与理论推断值之间的偏离程度,实际观测值与理论推断值之间的偏离程度就决定卡方值的大小,如果卡方值越大,二者偏差程度越大;反之,二者偏差越小;若两个值完全相等时,卡方值就为0,表明理论值完全符合。

 (卡方不大可能?只能检测差距,检测不出谁好谁坏?)

补充:

(1)做 A/B 测试的目的,就是为了验证某种改变是否可以提升产品、业务,当然也可能出现某种改变会对产品、业务造成损害的情况,所以这就有一定的试错成本。那么,实验范围越小,样本量越小,试错成本就会越低。所以,要在统计理论和实际业务场景这两者中间做一个平衡:在 A/B 测试中,既要保证样本量足够大,又要把实验控制在尽可能短的时间内。

(2)A/Btest,如果不能保证足够多的试验次数,和足够大的样本量,将没有任何意义。实际上,假设检验的前提条件过于完美,需要样本服从独立同分布;假设检验P<0.05, 也不能拒绝H0,因为独立同分布的假设压根无从验证。再说,0.05的合法性?实际上是拍脑袋出来的。