假设检验与 A/B Test

本文深入解析置信区间、置信度概念及假设检验步骤,区分两类错误,详解A/B测试流程与统计学知识,助你掌握实验设计与数据分析技巧。
  • 置信区间和置信度你了解吗?

在假设检验的过程中,我们往往使用样本来估计总体。根据中心极限定理,我们知道从总体中进行N次样本抽取,N次样本的均值会围绕总体均值上下波动。因此,置信区间就是为总体的均值提供了一个可波动的范围,置信度就是我们对于这个数值存在于我们计算出的这个范围的可信程度。例如,在95%的置信度下,置信区间为[a,b],也就是说,抽取100次样本,其中约有95次样本的均值能够落在[a,b]范围内。”

  • 假设检验的步骤?

第一步,提出两个假设。原假设是( );备择假设命题是( )。

第二步,构造统计量。

第三步,确定显著性水平( ),确定拒绝域。

第四步,求出p值(小于或者等于拒绝域向上的一个样本数值的概率)。

第五步:如设定显著性水平 α = 0.05,统计结果为 p ≤ 0.05,则推翻了原假设,证明在该显著性水平下,接受备择假设。

  • 假设检验的错误类型?

类型I: 在给定原假设是正确的情况下拒绝原假设的概率(False positive)
α = P(reject H0 | H0 true) 拒真

类型II: 在给定备择假设是正确的情况下接受原假设的概率(False negative)
β = P(accept H0 | H1 true) 取伪

  • 假设检验怎么选择统计量?
    在这里插入图片描述
  • 相关知识
    在这里插入图片描述
  • 相关公式
    在这里插入图片描述
  • A/B test是什么

A/B Test 是一种将网页或APP的两个版本相互比较以确定哪个版本的性能更好的方法。

实际工作中,我们会遇到很多情况需要我们评估各种不同的方案,以及应该采用哪些策略来测试我们的产品或广告。A/B Test 就是一个帮我们选出更好的方案的办法。
当进行A/B测试时,A组是对照组,B组是实验组,B组在某个因素上与A组不同。
然后,把用户随机地分到这两组,比较这两组的用户行为是否有显著的差异。如果有,那我们就会认为,导致这个行为差异的原因,是B组里的那个与A组不同的因素。如果B组的用户产生了更多的购买行为,我们就可以下结论:B组中那个与A组不同的因素能够显著提高用户的购买行为。

  • A/B test工作原理

在 A/B Test 中,你可以设置访问网页或应用程序屏幕并对其进行修改以创建同一页面的第二个版本。然后,一半的流量显示页面的原始版本(称为控件),另一半显示页面的修改版本(称为变体)。
当用户访问页面时,利用埋点可以对用户点击行为数据采集,并通过统计引擎进行分析(进行A/B test)。然后,就可以确定这种更改(变体)对于给定的指标(如用户点击率CTR)是否产生显著性影响。

  • 进行A/B test的目的是什么

A/B test可以让个人、团队和公司通过用户行为结果数据不断对其用户体验进行仔细更改。这允许他们构建假设,并更好地了解为什么修改的某些元素会影响用户行为。这些假设可能被证明是错误的,也就是说他们对特定目标的最佳体验的个人或团队想法利用A/B test证明对用户来说是行不通的,当然也可能证明是正确的。

所以说 A/B test不仅仅是解决一次分歧的对比,A/B test可以持续使用,以不断改善用户的体验,改善某一目标,如随着时间推移的转换率。

  • A/B test流程(面试喜欢问)

①确定目标:目标是用于确定变体是否比原始版本更成功的指标。可以是点击按钮的点击率、链接到产品购买的打开率、电子邮件注册的注册率等等。

②创建变体:对网站原有版本的元素进行所需的更改。可能是更改按钮的颜色,交换页面上元素的顺序,隐藏导航元素或完全自定义的内容。

③生成假设:一旦确定了目标,就可以开始生成A / B测试想法和假设,以便统计分析它们是否会优于当前版本。

④收集数据:针对指定区域的假设收集相对应的数据用于A/B test分析。

⑤运行试验:此时,网站或应用的访问者将被随机分配控件或变体。测量,计算和比较他们与每种体验的相互作用,以确定每个用户体验的表现。

⑥分析结果:实验完成后,就可以分析结果了。A / B test分析将显示两个版本之间是否存在统计性显著差异。

  • A/B测试设计的四步框架:

一,确定实验的样本单位(unit of diversion)
二,选定实验观测指标(metric of measurement)
三,确定实验运行周期(duration)
四,确定实验所需样本数量(sample size)

  • A/B test需要注意的点

1、先验性:通过低代价,小流量的实验,在推广到全流量的用户。

2、并行性:不同版本、不同方案在验证时,要保重其他条件都一致。

3、分流科学性和数据科学性:分流科学是指对AB两组分配的数据要一致,数据科学性是指不能直接用均值转化率、均值点击率来进行AB test决策,而是要通过置信区间、假设检验、收敛程度来得出结论。

  • A/B test中要知道的统计学知识

AB test | 数据分析师面试必知 !

### A/B 测试中的分层抽样实现 在 A/B 测试中,分层抽样是一种用于提高实验效率的技术。通过将总体划分为若干个具有相似特征的子集(即“层”),可以减少样本间的方差并提升统计检验能力。如果某些工具不可用,则可以通过 `ranuni` 函数结合多个数据步骤来获取分层样本[^1]。 以下是基于 SAS 或其他编程环境实现分层抽样的方法: #### 方法概述 为了确保每层内的分布均匀以及各组之间的平衡性,在实际操作过程中通常采用如下方式完成分层采样: - **定义层次变量**:识别影响目标指标的关键因素作为分层依据; - **计算比例分配**:按照每一层在整个群体所占的比例决定其应抽取的数量; - **随机选取个体**:利用伪随机数生成器从指定范围内挑选适当数量的对象加入到最终集合里去; 下面给出一段 Python 实现代码示例: ```python import pandas as pd from sklearn.utils import resample def stratified_sample(df, strata_column, sample_size_per_stratum): """ Perform stratified sampling on DataFrame. Parameters: df (pd.DataFrame): Input dataset. strata_column (str): Column name used for stratification. sample_size_per_stratum (int): Number of samples per stratum. Returns: pd.DataFrame: Sampled dataframe. """ sampled_dfs = [] # Iterate over each unique value in the specified column for category_value in df[strata_column].unique(): sub_df = df[df[strata_column]==category_value] # Ensure we don't request more than what's available within any given layer n_samples = min(len(sub_df),sample_size_per_stratum) # Use scikit learn utility function 'resample' here instead of manually implementing it via numpy etc... sampled_subdf=resample( sub_df, replace=False,# No replacement allowed since this would violate independence assumption required by most tests anyway.. n_samples=n_samples, random_state=42 # For reproducibility purposes only; remove or set differently depending upon your needs! ) sampled_dfs.append(sampled_subdf) result=pd.concat(sampled_dfs).reset_index(drop=True) return result ``` 此函数接受三个参数:输入的数据框 (`df`)、用于分层的列名(`strata_column`) 和每个层所需的样本量(`sample_size_per_stratum`) 。它遍历给定列的不同类别值,并从中提取固定大小的小样本。最后将这些部分重新组合成一个新的DataFrame返回。 值得注意的是,这种方法假设您已经知道应该为每个层收集多少观察结果。如果您不确定最佳数值是多少,可能需要先执行一些探索性数据分析(EDA),或者考虑使用更复杂的算法自动确定合适的划分界限和相应的配额设置方案。 另外需要注意的一点是关于替代否的选择——这里选择了无放回的方式(replace=False),因为这样能够更好地保持原始资料内部结构特性不变的同时也满足独立同分布的要求。当然也可以根据具体情况调整这个选项。 此外,还可以引入像SMOTE这样的技术处理不平衡分类问题的情况下的合成少数族类过采样策略[^2] ,尽管这超出了单纯讨论分层取样的范畴但仍值得提及作为一种潜在解决方案当遇到极端不均衡状况之时可尝试应用此类手段加以缓解负面影响程度从而获得更加稳健可靠的结论推断过程。 综上所述,实施有效的分层抽样不仅可以显著降低估计标准误差约百分之五左右对于绝大多数试验而言而且还能使得原本不具备统计学意义的变化变得明显起来进而促进更多有利新功能上线发布进程加快步伐节省资源消耗成本效益俱佳的做法确实非常有价值[^3].
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值