(五)AB测试及两个案例 学习简要笔记 #统计学 #CDA学习打卡

2024-04-24 06:20

本文主要是介绍(五)AB测试及两个案例 学习简要笔记 #统计学 #CDA学习打卡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一. AB测试简介

1)假设检验的一般步骤

2)基于假设检验的AB测试步骤

二. 案例1:使用基于均值的假设检验进行AB测试

1)原始数据

2)提出原假设H0和备择假设H1

3)使用均值之差的t检验,计算出t统计量的值和P值

4)进行假设检验

5)AA测试(简单随机抽样)

6)AA测试(分层抽样)

7)AA测试(系统抽样)

8)AB测试

三. 案例2:基于假设检验与A-B测试的支付宝点击率策略提升效果分析

1)原始数据

2)计算3组营销策略的点击率的平均值

3)假设检验进行判断


一. AB测试简介

AB测试(A/B test)是一种常用的实验设计方法,用于比较两个或多个不同的版本(例如产品、网页设计、广告等)在某个指标上的表现差异。而假设检验是AB测试的统计分析方法,用于判断这些差异是否具有统计学意义。

其实AB测试类似于初中生物说的对照试验。对用户分组,每个组使用一个方案(方案应遵从单变量前提),在相同的时间维度上去观察用户的反应(体现在业务数据和用户体验数据上)。需要注意的是各个用户群组的组成成分应当尽量相似,譬如新老用户很有可能表现出较大的偏好差异。最后根据假设检验的结果,判断哪些版本较之原版有统计意义上的差异,并根据效应量选出其中表现最好的版本。

1)假设检验的一般步骤

(a)提出原假设H0和备择假设H1
(b)用均值之差或者比例之差作为检验统计量Z检验或者t检验,并计算统计量及p值
(c)根据p值与显著性水平判断是否拒绝H0

2)基于假设检验的AB测试步骤

(a)H0假设:A组转化率等于B组转化率;H1假设:A组转化率不等于B组转化率
(b)用均值之差t检验或者比例之差z检验,并计算统计量及p值
(c)判断p值是否小于显著性水平0.05,判断是否拒绝H0

二. 案例1:使用基于均值的假设检验进行AB测试

1)原始数据

2)提出原假设H0和备择假设H1

H0:版本A和B在统计上存在显著差异
H2:版本A和B在统计上没有显著差异

3)使用均值之差的t检验,计算出t统计量的值和P值

4)进行假设检验

通常情况下我们在做AB测试前需要做AA测试,也就是从A里面通过不同的抽样方式选定一定样
本AA,再与A进行测试

5)AA测试(简单随机抽样)

6)AA测试(分层抽样)

7)AA测试(系统抽样)

8)AB测试

我们假设有两个版本A和B,通过生成正态分布的样本数据进行比较。然后计算两个样本的均值和标准差,并使用独立样本t检验进行假设检验。根据显著性水平alpha的设定,判断是否拒绝零假设,进而得出结论。

三. 案例2:基于假设检验与A-B测试的支付宝点击率策略提升效果分析

1)原始数据

2)计算3组营销策略的点击率的平均值

根据原始数据计算3营销策略的点击率如下:

我们可以得到:
对照组(dmp id=1)的点击率0.012551,
策略1组(dmp_id=2)的点击率0.015315
策略2组(dmp_id=2)的点击率0.026192

从点击率来看,策略一和策略二在对照组的基础上都有一定的提升。其中策略一提高了0.2个百分点,策略二提高了1.3个百分点,只有策略二满足了我们对点击率提升最小值1个百分点的要求。接下来需要进行假设验证,来看看策略二的点击率提升是否显著。

3)假设检验进行判断

记对照组点击率为p1,策略二点击率为p2,则:

(a)H0假设:p1>=p2策略2组点击率大于等于对照组点击率
    H1假设:p1<p2策略2组点击率小于对照组点击率

(b)计算A组和B组样本的转化率

(c)用转化率之差作为检验统计量z检验

(d)计算p值

(e)判断p值是否小于显著性水平0.05,判断是否拒绝H0

可以看到,p约等于0<0.05。所以拒绝原假设,认为策略2点击率的提升在统计上是显著的。两种营销策略中,策略二对广告点击率有显著提升效果,因而在两组营销策略中应选择第二组进行推广。

Bye!

这篇关于(五)AB测试及两个案例 学习简要笔记 #统计学 #CDA学习打卡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/930982

相关文章

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

C语言实现两个变量值交换的三种方式

《C语言实现两个变量值交换的三种方式》两个变量值的交换是编程中最常见的问题之一,以下将介绍三种变量的交换方式,其中第一种方式是最常用也是最实用的,后两种方式一般只在特殊限制下使用,需要的朋友可以参考下... 目录1.使用临时变量(推荐)2.相加和相减的方式(值较大时可能丢失数据)3.按位异或运算1.使用临时

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

java两个List的交集,并集方式

《java两个List的交集,并集方式》文章主要介绍了Java中两个List的交集和并集的处理方法,推荐使用Apache的CollectionUtils工具类,因为它简单且不会改变原有集合,同时,文章... 目录Java两个List的交集,并集方法一方法二方法三总结java两个List的交集,并集方法一

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

Python如何计算两个不同类型列表的相似度

《Python如何计算两个不同类型列表的相似度》在编程中,经常需要比较两个列表的相似度,尤其是当这两个列表包含不同类型的元素时,下面小编就来讲讲如何使用Python计算两个不同类型列表的相似度吧... 目录摘要引言数字类型相似度欧几里得距离曼哈顿距离字符串类型相似度Levenshtein距离Jaccard相

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操