(五)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

相关文章

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 基本操

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

SpringBoot实现动态插拔的AOP的完整案例

《SpringBoot实现动态插拔的AOP的完整案例》在现代软件开发中,面向切面编程(AOP)是一种非常重要的技术,能够有效实现日志记录、安全控制、性能监控等横切关注点的分离,在传统的AOP实现中,切... 目录引言一、AOP 概述1.1 什么是 AOP1.2 AOP 的典型应用场景1.3 为什么需要动态插

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck