(五)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中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 中的 equals 和 hashCode 方法关系与正确重写实践案例

《Java中的equals和hashCode方法关系与正确重写实践案例》在Java中,equals和hashCode方法是Object类的核心方法,广泛用于对象比较和哈希集合(如HashMa... 目录一、背景与需求分析1.1 equals 和 hashCode 的背景1.2 需求分析1.3 技术挑战1.4

Java中实现对象的拷贝案例讲解

《Java中实现对象的拷贝案例讲解》Java对象拷贝分为浅拷贝(复制值及引用地址)和深拷贝(递归复制所有引用对象),常用方法包括Object.clone()、序列化及JSON转换,需处理循环引用问题,... 目录对象的拷贝简介浅拷贝和深拷贝浅拷贝深拷贝深拷贝和循环引用总结对象的拷贝简介对象的拷贝,把一个

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

Python Counter 函数使用案例

《PythonCounter函数使用案例》Counter是collections模块中的一个类,专门用于对可迭代对象中的元素进行计数,接下来通过本文给大家介绍PythonCounter函数使用案例... 目录一、Counter函数概述二、基本使用案例(一)列表元素计数(二)字符串字符计数(三)元组计数三、C

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程