AB测试介绍与案例分析

发布网友 发布时间:2024-10-01 01:07

我来回答

1个回答

热心网友 时间:2024-10-01 07:19

1、AB测试的概念

为web或APP界面或流程制作两个或多个版本,在同一时间维度,分别让组成成分相同(相似)的访客群随机访问这些版本,收集各群组的用户体验数据和业务数据,最后分析评估出最好版本正式采用。

简单地说就是,通过设计对照实验,对比之后看看哪个版本的效果更好。

这里有3个关键点:

2、AB测试的流程

注意点:

3、AB测试的原理(假设检验)

1)零假设与备选假设

零假设和备择假设是参数空间的真子集,且不能相交。

零假设常表述为研究没有改变,没有效果,不起作用等,备选假设与零假设互为相反。

2)检验方向

根据备选假设来确定检验方向:

3)抽样分布类型

4)检验类型和检验统计量

确定了检验类型,就可以确定检验统计量了。

5)显著性水平

显著性水平α一般取0.1、0.05或0.01,通过与检验统计量比较,可得出接受或拒绝零假设的结论。

二、AB测试案例分析

1、明确问题

案例数据是对web新旧页面的AB测试结果,目标是判断新旧两版页面在用户的转化情况上是否有显著区别。

2、熟悉数据

导入常用分析包:

导入数据文件ab_data.csv,并查看前5行:

数据集的字段及其含义如下:

共有294478行数据,每个字段都没有空值null,【user_id】和【converted】字段是整数型,其他字段均为字符串型。

3、数据清洗

1)异常值处理

上面提到,【group】字段与【landingpage】有逻辑对应关系,即treatment(实验组)看到的应该是new_page(新页面),而control(对照组)看到的应该是old_page(旧页面)。

查看是否包含存在分组group与展示页面版本landing_page不符的情况:

发现实验组和对照组都有逻辑关系不符的情况,正常情况下需要深入查找原因,这里因为数据量不多,暂且选择删除掉这些异常数据。

2)重复值处理

根据AB测试的设计原则,同一用户不能既看到旧版本,又看到新版本,所以这里根据用户ID去除重复值。

去重后数据集还有290584行数据。

AB测试中两个版本的用户数量最好是接近的,这里再查看一下新页面的用户占比:

新页面的用户占比大约50%,新版和旧版页面的用户占比还是很接近的。

4、假设检验

1)确定零假设和备选假设

2)根据备选假设确定检验方向

根据备选假设(p1 < p2),含有小于的判断句,确定检验方向是单尾检验中的左尾检验。

3)判断抽样分布类型

本次实验满足的判断结果只有0和1(转化和未转化),符合0-1分布。

4)确定检验类型和检验统计量

双样本,且样本大小n > 30,所以用Z检验。

检验统计量z的计算公式为:

其中,Pc是转化率的联合估计。

5)确定显著性水平α

这里的显著性水平α取0.05。

5、计算检验统计量

下面分别用公式计算和Python函数得到检验统计量,并进行判断。

1)公式计算

计算新旧版的用户数及其转化率(即样本的平均值):

计算转化率的联合估计:

最后,根据上面的计算结果得出检验统计量z:

查找Z分布α=0.05时对应的分位数,以便与检验统计量z进行比较:

判断是否落入拒绝域:

2)Python函数计算

得到的z值和前面计算的完全相同,落在拒绝域,故拒绝零假设。同时我们也得到了p值,用p值判断与用检验统计量z判断是等效的,这里p值约等于0.016, p < α,同样也拒绝零假设。

6、效应量

假设检验并不能衡量差异的大小,它只能判断差异是否比随机造成的更大。因此,我们在报告假设检验结果的同时,需要给出效应的大小。

对比平均值时,衡量效应大小的常见标准之一是Cohen's d:

Cohen's d 除以的是标准差,也就是以标准差为单位,样本平均值和总体平均值之间相差多少。

由于是双样本的,这里的标准差需要用合并标准差代替,也就是以合并标准差为单位,计算两个样本平均值之间相差多少。

双样本的并合标准差计算公式如下:

其中s是合并标准差, n1 和 n2 是第一个样本和第二个样本的大小,s1 和 s2 是第一个和第二个样本的标准差。减法是对自由度数量的调整。

d的绝对值接近0.2,说明差异较小;d的绝对值接近0.5,说明差异中等;d的绝对值大于0.8,说明差异很大。

这里求得d的值约为-0.00797,绝对值很小,说明两者虽有显著性水平5%时统计意义上的显著差异,但差异的效应量很小。可以简单地理解为显著有差异,但差异的大小不显著。

7、分析结论

旧版页面平均转化用户数为0.120个,标准差为0.325;

新版页面平均转化用户数为0.123个,标准差为0.328。

双样本 z = -2.15,p = 0.016(α=0.05),单尾检验(左尾),拒绝零假设,即新页面的转化率比旧页面的转化率高。

效应量 Cohen's d = -0.00797,显著效果小,说明新旧页面的转化率差异不大。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com