年薪XX万门槛最低的方式-AB测试

面试官A:你知道AB测试怎么做吗?

面试官B:你有AB测试的经验吗?

面试官C:AB测试的统计学原理可以简单说一下吗?

... ...

现在,互联网场景下,越来越多的公司or面试官开始考察AB-Test相关的知识

似乎是懂了AB测试,年薪就达到XX万(请自行脑补)

那么,为了大家都能年薪XX万,我们今天来聊下

AB-Test那些事儿

AB-Test的起源

AB测试的概念来源于医学的双盲实验。

用户被随机分组成两组,在不知情的情况下,拿到了测试用药和安慰剂。经过一段时间的实验后,比较这两组病人的表象是否具有显著的差异,从而决定测试用药是否有效。

同样,互联网公司们在采取AB测试时也用了同样的概念

将web或者app界面或者流程,拆分为多个版本,在同一时间段里,分别让同质化的用户使用。之后收集相关的业务数据,最后评估出最好的版本,从而达到效果最大化。

从本质上来说,AB-Test是对某唯一变化的有效性进行测试的实验

#请忽略我的强行过渡

很多同学说,知道了AB-test的起源,对我们实际工作并没有啥帮助

那么,接下来,让我们说说AB-Test的具体步骤把

AB-Test的步骤

开局先上图:

根据上图,我们把AB-Test拆分为实验前 + 实验中 + 实验后来大致讲解下实验的流程及步骤

实验前:

1、设定项目目标:即本次AB测试的主体是什么,一个页面优化,一个app功能,一个文案修改?

2、本次测试的用户群体:是面对整体用户,还是部分用户?是需要分版本生效,还是全部生效?

3、预计会达到的目标:比如点击率,如预期10%上涨至15%,需要有个心理预期

4、计算样本量:根据预计效果,以及显著性水平,计算出所需样本量

5、计算流量分配比例:当计算出样本量后,我们需要根据当前流量,制定分流计划,是分群还是分层,或者同时进行

6、规划整理以上内容,进行AB测试前的文档落盘,方便实验后进行效果观测和实验结果评估

实验中:

1、实验上线:根据事前设定的 测试功能,分流比例,投放人群进行线上AB测试

2、空白组确认:空白组,是否真的空白组,一定需要确认

3、AB生效确认:检验线上AB是否生效,以及AB测试是否按照计划比例分流

4、如果为了验证分流是否有效,及实验效果的显著性检验,我们在AB时,可以进行AA实验

实验后:

1、实验有效性检测:判断实验是否达到最小样本量,从而能够以较大概率避免两个统计错误的发生(弃真错误 &  取伪错误)。一般情况下,通过AA实验的显著性差异检验,就能判断实验结果有效

2、实验效果比较:即通过对比AB实验下,实验组及基准组的区别,是否有显著差异,是否达到预期,从而判断后续迭代策略

以上,就差不多是AB-Test的整体步骤

当然,在实验的过程中,也会碰到很多坑

我们也提前帮大家“预警“一下都有哪些坑

AB-Test的一些坑

1、用户属性一定要一致

如果上线一个实验,我们对年轻群体上线,年老群体不上线,实验后拿着效果来对比,即使数据显著性检验通过,那么,实验也是不可信的。因为AB测试的基础条件之一,就是实验用户的同质化。即实验用户群,和非实验用户群的 地域、性别、年龄等自然属性因素分布基本一致。

2、一定要在同一时间维度下做实验

举例:如果某一个招聘app,年前3月份对用户群A做了一个实验,年中7月份对用户群B做了同一个实验,结果7月份的效果明显较差,但是可能本身是由于周期性因素导致的。所以我们在实验时,一定要排除掉季节等因素。

3、AB测试一定要从小流量逐渐放大

如果上线一个功能,直接流量开到50%去做测试,那么如果数据效果不好,或者功能意外出现bug,对线上用户将会造成极大的影响。所以,建议一开始从最小样本量开始实验,然后再逐渐扩大用户群体及实验样本量。

4、如果最小样本量不足该怎么办

如果我们计算出来,样本量需要很大,我们分配的比例已经很大,仍旧存在样本量不足的情况,那么我们只能通过拉长时间周期,通过累计样本量来进行比较

5、是否需要上线第一天就开始看效果?

由于AB-Test,会影响到不同的用户群体,所以,我们在做AB测试时,尽量设定一个测试生效期,这个周期一般是用户的一个活跃间隔期。如招聘用户活跃间隔是7天,那么生效期为7天,如果是一个机酒app,用户活跃间隔是30天,那生效期为30天

6、用户是否生效 

用户如果被分组后,未触发实验,我们需要排除这类用户。因为这类用户本身就不是AB该统计进入的用户(这种情况较少,如果有,那在做实验时打上生效标签即可)

7、用户不能同时处于多个组

如果用户同时属于多个组,那么,一个是会对用户造成误导(如每次使用,效果都不一样),一个是会对数据造成影响,我们不能确认及校验实验的效果及准确性

8、如果多个实验同时进行,一定要对用户分层+分组

比如,在推荐算法修改的一个实验中,我们还上线了一个UI优化的实验,那么我们需要将用户划分为4个组:A、老算法+老UI,B、老算法+新UI,C、新算法+老UI,D、新算法+新UI,因为只有这样,我们才能同时进行的两个实验的参与改动的元素,做数据上的评估

9、特殊情况(实际情况)

样本量计算这步,可能在部分公司不会使用,更多的是偏向经验值;

假设检验这一步,部分公司可能也不会使用;

大部分公司,都会有自己的AB平台,产运更偏向于平台上直接测试,最后在一段时间后查看指标差异。

对于这两种情况,我们需要计算不同流量分布下的指标波动数据,把相关自然波动下的阈值作为波动参考,这样能够大概率保证AB实验的严谨及可信度

以上,就是本期内容,希望对你有帮助

你可能感兴趣的:(年薪XX万门槛最低的方式-AB测试)