【测试】AB测试总结
文章目录
一、AB测试
1.1 什么是AB测试
1.2 AB测试的优缺点
二、假设检验
2.1 假设检验原理
2.2 假设检验步骤:
2.3 样本量的确定
2.4 样本质的控制
三、ABtest案例
一、AB测试
1.1 什么是AB测试
在互联网中AB测试通常指:为web或者app界面、流程设定两个或多个版本,在同一时间维度下,分别让类似的客户群体来访问,收集各群主的用户体验数据和业务数据,最后根据显著性检验分析评估出最优的版本。
1.2 AB测试的优缺点
AB测试的优点:通过实验对比,建立数据驱动,不断优化产品,还能降低新产品、新特性的发布风险。
AB测试的缺点:制作AB版本的开发、数据收集的工作量较大、以及后期维护成本增加,ROI低;同时AB测试还受场景限制,产品版本发布后,无法增加或更改AB测试场景。
为了解释显著性检验,这里先引入假设检验这个概念。
二、假设检验
2.1 假设检验原理
对总体特征做某种假设,然后通过样本研究统计推理,最终对此假设做出接受或者拒绝的判断,常见的假设检验有:Z检验、t检验、F检验、卡方检验。
2.2 假设检验步骤:
提出假设
确定适当的统计量
规定显著性水平
计算检验统计量
做出统计决策
需要注意:
提出假设:在假设检验中通常会提出两个命题,分别为H0和H1命题。H0是我们希望被推翻的命题,H1是我们希望被证实的命题。
确定适当的统计量:当样本数量大于30用Z检验;当样本数量小于30 ,近似服从正太分布且总体方差已知用Z检验;同样当样本量小于30,近似服从正太分布且总体方差未知用T检验;但如果样本量小于30,不服从近似正态分布,则不能用Z检验或者T检验
显著性水平:它是指H0命题为真,拒绝H0的概率。其实它代表小概率事件发生的概率。通常显著性水平用α表示,α可以取0.05或者0.01,它表示接受原假设正确性概率为95%或99%。
计算检验统计量:带公式计算出P值,P值是指在H0为真时,当前观测样本发生更加极端的概率。通俗的说如果p值很小,说明是小概率事件,在H0假设为真时尽然出现了小概率事件,当然要拒绝H0啦,反之则接受呗
当然这里我们可能经常犯统计学中两种错误:
第一类错误:当H0为真时,我们拒绝了H0,发生的概率为α
第二类错误:当H0为假时,我们却接受了H0,发生的概率为β

2.3 样本量的确定
理论上样本量越大越好,实际工作样本量越少越好。
这是因为样本量很少的情况下,实验结果可能被异常样本带偏,最终可能得到不准确的结果。但是使用样本量太大,相应的试错成本也会增大,那么如何确定合适的样本量就成了AB测试中的一个难题了?
这里给大家推荐计算计算样本量的网站:Sample Size Calculator
其实样本量和红框中这四个影响因子有关,这里做简要的说明:
Conversion Rate:可以把它理解为旧方案的的点击率,很容易理解,当旧方案中点击率越少,我们则需要更多的样本。
Minimum Detectable Effect:可以把它可以解释为“预想提升的转化率”,如果实验完毕后转化率提升的值高于或等于这个值,认为优化有用,反之优化程度可以忽略不计。
参数越大(比如10%),说明我们期望实验能够检测出10%的差别即可。检测这么大的差别当然比较容易(power变大),所以保持power不变的情况下,所需要的样本量会变小。
参数越小(比如1%),说明我们希望实验可以有能力检测出1%的细微差别。检测细微的差别当然更加困难(power变小),所以如果要保持power不变的话,需要的样本量会增加。
Statistical Significance:这参数为可以通过1-α得到
Statistical Power:这个参数可以通过1-β
对于某一具体的检验来说,当样本量n一定时,α越小,β越大。实际应用中通过增加样本量来减少β
2.4 样本质的控制
如果我们发现测试结果两个版本没有显著性区别,原因可能有三个,一:的确没有显著性区别;二:正如上面所提,实验分流没有达到所需要的样本量,从而能够以较大概率拒绝两类统计错误的发生,三:样本质量出现了问题,比如引入了异常的随机结果,举个例子:比如淘宝要对历史订单这个页面进行改版,设计了相应的AB测试,测试的目标是提升这个页面单个用户(UV)产生的GMV,也即是单日GMV/单日UV。但是某个用户在实验组里买了高价值的商品,它则可能带偏最终结果,为了控制质量的问题,我们可以采取AA测试。
其实将原始版本流量中分出两个和实验版本相同的流量进入测试。如上图,A2和A3进行AA测试,和B进行AB测试,其实通过观察A2和A3是否存在显著性差异,就可以确定分流是否有效,换句话说可以确定分流的质量怎么样 .
三、ABtest案例
题目如下:
这里我们不能直接给出实验版本B的转化率比实验版本A的转换率高,因为他可能是由一些随机因素导致的,这里我们可以按照显著检验过程进行如下计算:
(1)提出假设
其中H0是我们希望推翻的假设、H1是我们被证实的命题。
(2)确定适当的统计量
其中
计算达到Z=0.849105726
(3 )规定显著性水平
这里我们规定α=0.5
(4)计算检验统计量
查表可得
Z_{\alpha}\approx1.64(5)做出统计决策
因为Z<
Z_{\alpha} ,所以不能拒绝原假设,即认为B版本不一定比A版本所带来的的线索-车辆成交转化率要高。猜你喜欢
- 【测试】软件测试岗位常见的七中测试方法
- 软件测试是保证软件质量的一个非常重要的环节,而软件测试方法有很多种,测试人员要根据实际需求和目标选择合适的测试方法,才能提高软件测试的效率和准确性,确保软件质量和可靠性。下面将介绍软件测试常见的七种测试方法。黑盒测试黑盒测试又称功能测试,该测试方法验证被测对象使用质量及外部质量表现。采用黑盒测试方法,测试工程师将测试对象看作一个黑盒子,完全不考虑程序内部逻辑结构和内部特性,只依据需求规格说明书、设计文档及其他需求描述文档,检查被测对象是否与期望需求一致。白盒测试白盒测试,又称结构测试、逻辑驱动测
- 【网络】http面试题
- 一、http协议 HTTP协议是什么 HTTP(HyperText Transfer Protocol:超文本传输协议) 超文本可以说是“超级文本”或者说是“带超链接文本”。超链接文本可以有图片、动图、文字、视频。从本质上说它是一个内容文本,我们对网站的浏览,实际上是对内容的浏览。对于这些内容,都有统一的路径,我们称之为URL地址 http(s): //<主机>:<端口>/<路径> http:表示协议,有http和https协议 主机可以是ip也可以是域名,如
- 【网络】聊聊从输入URL到页面展示这中间发生了什么
- 原文地址https://zhuanlan.zhihu.com/p/6003067781、解析URL:首先会对 URL 进行解析,分析所需要使用的传输协议和请求的资源的路径。如果输入的 URL 中的协议或者主机名不合法,将会把地址栏中输入的内容传递给搜索引擎。如果没有问题,浏览器会检查 URL 中是否出现了非法字符,如果存在非法字符,则对非法字符进行转义后再进行下一过程。2、缓存判断:浏览器会判断所请求的资源是否在缓存里,如果请求的资源在缓存里并且没有失效,那么就直接使用,否则向服务器发起新的请求
- 【网络】开源协议有哪些,都有什么差异
- 在IT行业中,开源协议是用来定义如何使用、修改、分享和分发软件的法律条款。不同的开源协议在保留版权、允许的使用方式、对衍生作品的要求以及对分发的限制等方面有所不同。以下是一些常用的开源协议及其主要特点:1. MIT License (MIT)特点:非常宽松,基本上允许任何形式的使用、修改和再分发,只要保留版权声明。适用场景:适合那些希望自己的代码被广泛使用,且不想对使用者施加太多限制的项目。2. GNU General Public License (GPL)特点:要求任何发布/分发的衍生作品也
- 【支付宝】支付宝服务商支付
- 通过第三方应用授权,服务商在取得商家授权后,可以代商家调用支付宝开放接口,以完成相应的业务逻辑(如代替商家发起当面付的收单请求等)。 授权采用标准的 OAuth2.0 流程,要进行第三方代调用,服务商需要在第三方应用中添加对应功能并获得商家授权,本文介绍服务商的第三方应用如何取得商家应用的授权。
- 【网络】为什么有些POST请求会触发两次HTTP请求?
- 这个问题需要从浏览器的「同源策略」开始讲起。什么是同源策略呢?我的理解是,为了安全起见,浏览器只允许「同源」下的资源相互访问和共享,限制跨源请求。同源又是什么呢?所谓同源就是两个URL如果协议,主机(即IP),端口都相同,那么就称两个URL同源。协议:协议是定义了数据如何在计算机内和之间进行交换的规则的系统,例如 HTTP、HTTPS。主机:是已连接到一个计算机网络的一台电子计算机或其他设备。网络主机可以向网络上的用户或其他节点提供信息资源、服务和应用。使用 TCP/IP 协议族参与网络的计算机
- 【行业动态】TIOBE4月榜单发布:C/C++深受内存安全影响、PHP辉煌不再!
- 4 月 TIOBE 编程语言榜单已发布,一起来看看本月有什么值得关注的新变化吧!01 C、C++ 深受“内存安全”的影响相较上个月,4 月 TIOBE 榜单的 Top 5 并没有太大变化,依旧是 Python、C、C++、Java、C#。不过,值得注意的是,Top 5 之列只有排名第一的 Python 是继续保持着正向增长的趋势,比上个月上涨了 0.78%,达到 16.41% 的市场份额。一直以来,Python 凭借简洁的语法和清晰的代码结构使得初学者能够快速上手,不仅在 Web 开发