导图社区 AB测试
这篇文章主要是对AB测试进行一次详细的讲解,不管是运营还是交互还是体验设计,都对该种方式热衷,现在就梳理出一份关于该测试的详细介绍。AB测试最核心的原理,就四个字:假设检验。检验我们提出的假设是否正确。对应到AB测试中,就是检验实验组
编辑于2022-06-21 15:45:01可口可乐的总裁罗伯特·伍德鲁夫曾说过一句话:“即使可口可乐的工厂被大火烧掉,给我三个月时间我就可以重建完整的可口可乐。” 所以说大火能够烧掉的都是花钱马上就可以重建的,只是多花一点时间。真正烧不掉的成果是什么?那就是在顾客的心智中,左右了顾客选择和认知的载体——品牌
短视频直播间引流,指利用系统自然推荐或商业化投放方式,通过让消费者观看直播预约短视频、15-30秒商品解说、利益点宣导等内容视频,引发消费者对直播内容的兴趣,在播前点击直播间预约或在播中进入直播间,并最终实现在直播间下单的销售转化方式。
智能终端 是搭载操作系统的智能硬件设备。基于网络与多元智能技术,智能终端不仅是信息平台,为用户提供丰富的内容应用;也是数据中台,与用户进行实时的数据交换与流动;还是渠道载体,产品与服务直接触达,用户即时调取互动;更是体验空间,为用户打造立体可交互的虚拟世界。
社区模板帮助中心,点此进入>>
可口可乐的总裁罗伯特·伍德鲁夫曾说过一句话:“即使可口可乐的工厂被大火烧掉,给我三个月时间我就可以重建完整的可口可乐。” 所以说大火能够烧掉的都是花钱马上就可以重建的,只是多花一点时间。真正烧不掉的成果是什么?那就是在顾客的心智中,左右了顾客选择和认知的载体——品牌
短视频直播间引流,指利用系统自然推荐或商业化投放方式,通过让消费者观看直播预约短视频、15-30秒商品解说、利益点宣导等内容视频,引发消费者对直播内容的兴趣,在播前点击直播间预约或在播中进入直播间,并最终实现在直播间下单的销售转化方式。
智能终端 是搭载操作系统的智能硬件设备。基于网络与多元智能技术,智能终端不仅是信息平台,为用户提供丰富的内容应用;也是数据中台,与用户进行实时的数据交换与流动;还是渠道载体,产品与服务直接触达,用户即时调取互动;更是体验空间,为用户打造立体可交互的虚拟世界。
AB测试
测试流程
可衡量的目标
+
有效的分流
+
结果的正确解读
促进产品的良性循环:
步骤
一、选取实验指标
一个实验只能有一个核心指标,可以有多个观测指标
核心指标是用于判断该实验是否显著
观测指标用于判断该实验对其余指标的影响
二、建立实验假设
建立零假设和备择假设
一般零假设是没有效果
举个栗子
零假设就是 新算法&老算法的页面点击率无明显差异
备择假设是有效果
举个栗子
备选假设是 新算法&老算法的页面点击率有显著差异
三、选取实验单位
用户粒度
这个是最推荐的,即以一个用户的唯一标识来作为实验样本
好处是符合AB测试的分桶单位唯一性,不会造成一个实验单位处于两个分桶,造成的数据不置信
设备粒度
以一个设备标识为实验单位
相比用户粒度,如果一个用户有两个手机,那么也可能出现一个用户在两个分桶中的情况,所以也会造成数据不置信的情况
行为粒度
以一次行为为实验单位,也就是用户某一次使用该功能,是实验桶,下一次使用可能就被切换为基线桶
会造成大量的用户处于不同的分桶。强烈不推荐这种方式
四、确定最小提升预期值
做实验需要考虑ROI(投资回报率)
如果开发成本很高,但是最终的提升只有0.01%,可能这个实验的收益提升并不能抵挡付出的成本
五、计算最小样本量
该步骤是要避免流量浪费,高效利用流量,把可用流量分到其他试验
还要避免在统计功效不足的情况下给出错误结论
计算最小样本量的公式
α和β分别是⼀类错误(拒真)和⼆类错误(取伪)的概率,通常取值为0.05和0.2
取值分别为1.98和0.84(这两个值是固定的,不需要计算)
最小样本量计算工具:https://www.evanmiller.org/ab-testing/sample-size.html
六、流量分割/分配
同层互斥分配/互斥实验
每个分层都拥有全部流量
在同一个分层中,多个试验共用100%的流量,试验之间流量互斥
例如在同一分层中,试验1占用了70%流量,则试验2最多只可使用30%流量
当同时运行多个试验时,如果希望试验结果尽可能精确,需要确保试验之间互不干扰,则建议将试验建立在同一分层,同一个用户只会进入该分层中的一个试验
分层流量正交/正交试验
分层意为复用用户流量
如果验1和试验2使用不同的分层,则试验1和试验2均可分配最多100%的流量
在此情况下,同一个用户将会同时进入试验1和试验2
当两个试验处于不同层时,需要确保试验内容互不相关,否则将会干扰试验数据
七、确定实验时长
时长决定因素
最小样本量
可接受的实验桶的大小比例
周活
实验时长=最小样本量/周活*实验桶比例
还要考虑一些情况
例如用户可能在工作日和周末特征/行为不一样,所以最少跑够7天
用户一开始可能觉得新奇所以转化率高,后续转化率才会趋于真实
八、数据统计
绝对值指标推荐用T检验,相对值指标推荐用Z检验
需要统计的结果:diff、p值、置信区间
算P值
也就是算当零假设成立时,观测到样本数据出现的概率
统计学上,将5%作为一个小概率事件,所以一般用5%来对比计算出来的P值
当P值小于5%时,拒绝零假设,即两组指标不同
当P值大于5%时,接受零假设,两组指标相同
算置信区间
一般情况下,都会用95%来作为置信水平
也就是说,当前数据的估计,有95%的区间包含了总体参数的真值
计算两组指标的差异值
如果算出的差异值置信区间不含0,就拒绝零假设,认为两组指标不同
但是如果包含0,则要接受零假设,认为两组指标相同
直接算出Z值或者T值,查表对比
九、得出结论
实验结果显著是否要推全
需要达到最⼩样本量,以及实验运⾏到计算的实验周期之后再去校验显著性
例如跑了一天,结果为显著提升,但是其实实验的样本量没有达到最小样本量,那就还要接着跑一跑
除了核⼼指标,还需要考虑平台的红线指标
例如核心指标显著提升,但是对其他指标有负面作用,那要考虑全局再决定
实验结果不显著怎么办
看MDE最⼩检测效应(实验能够统计的最⼩差异粒度)
需要看当前的mde是否⾜够⼩
如果⼤于最⼩提升预期值,则说明ab试验的灵敏度不够,可以延⻓试验时间,让更多的样本量进来
如果⼩于最⼩提升预期值,那么说明实验组就是不显著,⽴刻停 ⽌试验 mde计算公式
重点:数据检验
如何选择采用哪种假设检验
一般情况下,绝对值指标用T检验,相对值指标用Z检验
因为绝对指标的的总体方差,需要知道每一个用户的值,这个在AB实验中肯定不可能
相对值指标是二项分布,可以通过样本量的值计算出总体的值,就如同10W人的某页面点击率是10%,随机从这10W人中抽样1W人,这个点击率也是10%一样
Z检验
一般用于大样本(即样本容量大于30)平均值差异性检验的方法
它是用标准正态分布的理论来推断差异发生的概率,从而比较两个平均数的差异是否显著
也被称作u检验
T检验
主要用于样本含量较小(例如n < 30),总体标准差σ未知的正态分布
T检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著
卡方检验
卡方检验是统计样本的实际观测值与理论推断值之间的偏离程度
实际观测值与理论推断值之间的偏离程度就决定卡方值的大小
如果卡方值越大,二者偏差程度越大,反之,二者偏差越小
若两个值完全相等时,卡方值就为0,表明理论值完全符合
假设检验
H1是我们想要的假设,H0是要拒绝的假设
由于判断错了,我们把这类错误叫做第一类错误(Type I error),我们把第一类错误出现的概率用α表示
第一类错误就是在原假设成立的情况下错误地拒绝了原假设,即错杀了好人
犯第一类的假设检验称之为显著性检验,通过P值来判断:P值为z值的概率值(查表),p值越小说明反对原假设的证据越多。当P值<=显著性水平α, 则拒绝H0
这个α,就是Significance Level。一般选择5%,即保证第一类错误的概率不超过5%
Statistical Significance=1-level,表示有多大的把握不冤枉好人
第一类错误α不超过5%。也就是说Statistical Significance =1-α=95%
我们的判断又错了。这类错误叫做第二类错误(Type II error),用β表示
第二类错误就是没有成功拒绝不成立的原假设,即没有杀掉坏人
β = 1 - power
第二类错误β不超过20%。也就是说,Statistical Power = 1 -β = 80%
避免这两类错误的发生
第一类错误
在假设检验中,会预先设置第一类错误的上限α,也就是定义的显著水平,1-α被称之为置信区间
常我们设置为5%,严格一点的也会设置为2%
第二类错误
在显著水平固定的情况下,需要减少第二类错误β发生的概率
1-β即为规避第二类错误的概率,用power表示,也称之为检验效能
power的大小可以通过增加样本量来提高,通常需要power提升至80%或者更高
对α与β的理解
对两类错误上限的选取(α是5%,β是20%)
第一类错误通常是我们在实际工作当中所更加不能接受的
A/B实验的重要理念:宁肯砍掉4个好的产品,也不应该让1个不好的产品上线
AB测试软件市场
产品列举
部分产品介绍
易出错的注意事项
网络效应
这种情况通常出现在社交网络,以及共享经济场景
解决办法
从地理上区隔用户,这种情况适合滴滴这种能够从地理上区隔的产品,只要两个城市样本量相近即可
学习效应
类似,产品做了一个醒目的改版,比如将某个按钮颜色从暗色调成亮色。很多用户刚看到,会新奇去点击该按钮,导致点击率在一段时间内上涨,但长时间,点击率可能又会恢复到原有水平。这就是学习效应。
解决办法
拉长周期来看,不要一开始就去观察该指标,而是在一段时间后再去观察指标
另一种办法是只看新用户,因为新用户不会有学习效应这个问题,毕竟新用户并不知道老版本是什么样子的
多重检验问题
多次检验同一实验导致第一类错误概率上涨;同时检验多个分组导致第一类错误概率上涨
解决办法
在实验结束前,不要多次去观察指标,更不要观察指标有差异后,直接停止实验并下结论说该实验有效
实验注意点
用户属性一定要一致
AB测试的基础条件之一,就是实验用户的同质化
即实验用户群,和非实验用户群的 地域、性别、年龄等自然属性因素分布基本一致
一定要在同一时间维度下做实验
在实验时,一定要排除掉季节等因素
AB测试一定要从小流量逐渐放大
如果数据效果不好,或者功能意外出现bug,对线上用户将会造成极大的影响
建议一开始从最小样本量开始实验,然后再逐渐扩大用户群体及实验样本量
如果最小样本量不足
只能通过拉长时间周期,通过累计样本量来进行比较
是否需要上线第一天就开始看效果
由于AB-Test,会影响到不同的用户群体,所以,在做AB测试时,尽量设定一个测试生效期,这个周期一般是用户的一个活跃间隔期
用户是否生效
用户如果被分组后,未触发实验,我们需要排除这类用户
用户不能同时处于多个组
一个是会对用户造成误导(如每次使用,效果都不一样)
一个是会对数据造成影响,我们不能确认及校验实验的效果及准确性
如果多个实验同时进行,一定要对用户分层+分组
AB实验的严谨及可信度
样本量计算这步,可能在部分公司不会使用,更多的是偏向经验值
假设检验这一步,部分公司可能也不会使用
大部分公司,都会有自己的AB平台,产运更偏向于平台上直接测试,最后在一段时间后查看指标差异
应用场景
支持
算法优化
算法筛选
算法优化
AB测试的一个重要场景
上线前的算法,基本都是基于历史数据进行算法模型的训练、搭建
在本地模型效果再好,上线后也不一定有良好的表现
只有线上才是检验算法效果的决定性标准
产品迭代
界面优化
UI的优化
UI的优化,往往是很“艺术”层面的
往往看到真实数据前,谁也难以说明哪种设计能带来更好的数据效果
文案变化
页面布局
页面布局,主要指的是同页面中的不同元素的排列方式
功能增加
流程增加
市场营销
内容筛选
时间筛选
人群筛选
客户端性能
用户启动app时长
延时
内容加载方式
卡顿
内存耗损
app与手机交互方式
不支持
变量不可控
样本量较小
全量投放
背景
缘起
最早的AB测试本身是起源于医学,“双盲实验”
当一个药剂被研发后,医学工作人员需要评估药剂的效果。一般就会选择两组用户(随机筛选的用户),构建实验组和对照组。用这两组用户来“试药”。也就是实验组用户给真的药剂,对照组用户给安慰剂,但是用户本身不知道自己是什么组,只有医生指导。之后,在后期的观察中,通过一些统计方法,验证效果的差异性是否显著,从而去校验药剂是否达到我们的预期效果。
定义
就是在正式发版上线前,将用户流量对应分成几组,让用户分别看到不同的方案设计,根据几组用户的真实数据反馈,进行数据效果的校验
A/B测试的本质是分离式组间试验,也叫对照试验
当不确定哪个产品方案或者流程效果好的时候,将多个方案作为多个版本,让用户随机访问其中一个版本,收集各组用户的数据,分析、评估各个版本效果,最终采用效果好的版本
理论支撑
中心极限定理和假设检验
中心极限定理:在样本量足够大的时候,可以认为样本的均值近似服从正态分布
假设检验一般指的是统计是否显著,即为是否有差异性
意义
AB测试有利于优化用户体验、提升漏斗或者单个节点的转化率,从而使得产品或活动的最终效果变得越来越好
从本质上来说,AB-Test是对某唯一变化的有效性进行测试的实验