当前位置: 首页 > news >正文

CUPED (Controlled-experiment using Pre-Experiment Data) 论文学习笔记

文章目录

    • 0 前置知识
    • 1 为什么要使用CUPED?
    • 2 CUPED核心原理与公式推导
      • 2.1 CUPED调整后指标的构建
      • 2.2 最优 θ \theta θ 的推导(方差最小化)
      • 2.3 方差缩减效果分析
      • 2.4 对ATE估计的无偏性验证
    • 3 参考

0 前置知识

  • A/B测试 (A/B Testing):通过随机分流,将用户分为对照组和实验组,并对不同组展示不同版本的产品设计(如界面、算法、功能),然后通过统计分析来比较哪个版本更能达成预期目标的实验方法。
  • 对照组 (Control Group):看到产品旧版本的用户群体。用于评估新版本效果的基准(Baseline)。
  • 实验组 (Treatment Group):看到产品新版本的用户群体。核心关注的就是实验组相对于对照组在关键指标上的变化。
  • P值 (P-value):P值衡量的是,如果“新旧版本毫无差异”(即原假设为真)的情况下,我们观测到当前这样,甚至更极端差异的概率。
  • 统计显著性 (Statistical Significance):通常我们设定一个阈值(显著性水平 α \alpha α,常用0.05)。如果P值 < α <\alpha <α,我们认为观测到的差异是“统计显著的”,意味着这不太可能是一个纯粹由随机性导致的偶然事件。我们因此有理由相信新版本确实带来了真实效果。反之,我们则认为差异不显著,没有足够证据表明新版本优于旧版本。
  • 置信区间:它提供了处理效应(Treatment Effect,即实验组均值 - 对照组均值)的一个可能范围的估计。例如,一个95%的置信区间为 [0.5, 1.5] 意味着,我们有95%的信心相信,真实的效应提升在0.5到1.5之间。置信区间不仅告诉我们效应是否显著(如果不包含0,则在对应水平上显著),还告诉我们效应的大小和不确定性。区间越窄,我们的估计越精确。
  • 统计功效:指当一个真实效应确实存在时,我们的实验能够成功检测到它(即获得一个显著的P值)的概率。通常我们希望统计功效在80%以上。
    统计功效为什么重要:低功效意味着,即使你的新版本真的很棒,实验本身也很可能因为“运气不好”而得出一个不显著的结论,导致你错误地放弃了一个好的产品迭代。提升统计功效是A/B测试优化的核心目标之一,而CUPED正是实现这一目标的利器。

1 为什么要使用CUPED?

在A/B测试等在线对照实验中,我们最关心的是处理效应,即新的策略、功能或算法(实验组)相比于旧的(对照组)所带来的真实改变。然而,实验结果往往受到用户天然异质性带来的“噪音”干扰。
假设我们要测试一个新的APP首页布局(实验组)是否比旧布局(对照组)更能提升用户的“会话时长”。有些用户本身就是重度用户,无论什么布局,他们的使用时长都很长;而另一些则是轻度用户。这种用户固有的、与实验处理无关的差异性,会导致实验指标(会话时长)的方差(Variance) 非常大。
高方差会带来两个严重问题:

  1. 灵敏度低:微小的真实提升(例如,平均会舍时长提升1%)很容易被巨大的随机波动所掩盖,导致我们无法在统计上得出显著的结论(即P值过高)。
  2. 效率低下:为了克服高方差,我们不得不增加样本量(更多用户)或延长实验时间,这直接导致了实验成本的增加和决策效率的降低。

CUPED 正是为了解决这一痛点而提出的。其核心思想是:利用实验前的数据,来剥离用户固有的异质性,从而降低实验指标的方差,提升实验的灵敏度(Sensitivity)和统计功效。

2 CUPED核心原理与公式推导

CUPED的本质是一种方差缩减(Variance Reduction)技术,其思想根源于统计学中的协方差分析(Analysis of Covariance, ANCOVA)

2.1 CUPED调整后指标的构建

CUPED并非直接分析原始的实验指标 Y Y Y(如:实验期间的会话时长),而是构建一个新的、经过调整的指标 Y c u p e d Y_{cuped} Ycuped

Y c u p e d = Y − θ ( X − E [ X ] ) Y_{cuped} = Y - \theta(X - E[X]) Ycuped=Yθ(XE[X])

其中:

  • Y Y Y: 实验期间的目标指标(e.g., 实验后用户日均会话时长)。这是一个随机变量。
  • X X X: 实验开始前的一个协变量(Covariate),它与 Y Y Y 高度相关(e.g., 实验前用户日均会话时长)。这也是一个随机变量。
  • E [ X ] E[X] E[X]: 协变量 X X X 在全体用户中的期望(均值)。这是一个常数。
  • θ \theta θ: 一个用于控制调整力度的常数。

核心直觉:如果一个用户在实验前的指标 X X X 就高于平均水平( X − E [ X ] > 0 X - E[X] > 0 XE[X]>0),我们有理由相信他在实验期间的指标 Y Y Y 也可能偏高。我们通过减去一项 θ ( X − E [ X ] ) \theta(X - E[X]) θ(XE[X]) 来“修正”这个用户的指标,将其“拉回”到更接近平均的水平,从而减少用户间的极端差异。

2.2 最优 θ \theta θ 的推导(方差最小化)

我们的目标是选择一个最优的 θ \theta θ 值,使得新指标 Y c u p e d Y_{cuped} Ycuped 的方差 V a r ( Y c u p e d ) Var(Y_{cuped}) Var(Ycuped) 最小。

首先,计算 Y c u p e d Y_{cuped} Ycuped 的方差:
V a r ( Y c u p e d ) = V a r ( Y − θ ( X − E [ X ] ) ) Var(Y_{cuped}) = Var(Y - \theta(X - E[X])) Var(Ycuped)=Var(Yθ(XE[X]))
由于 E [ X ] E[X] E[X] 是一个常数, V a r ( X − E [ X ] ) = V a r ( X ) Var(X - E[X]) = Var(X) Var(XE[X])=Var(X)。因此:
V a r ( Y c u p e d ) = V a r ( Y − θ X ) Var(Y_{cuped}) = Var(Y - \theta X) Var(Y

http://www.dtcms.com/a/285681.html

相关文章:

  • 软删除设计:为什么使用 deleted_at = ‘1970-01-01 00:00:00‘ 表示未删除?
  • 1-大语言模型—理论基础:详解Transformer架构的实现(1)
  • 零信任产品联合宁盾泛终端网络准入,打造随需而变、精准贴合业务的网络安全访问体系
  • python爬虫获取PDF
  • pdf格式怎么提取其中一部分张页?
  • PDF 拆分合并PDFSam:开源免费 多文件合并 + 按页码拆分 本地处理
  • Elasticsearch 和 solr 的区别
  • 【Docker#2】容器历史发展 | 虚拟化实现方式
  • C# 转换(引用转换)
  • uni-app 跳转页面传参
  • Docker --privileged 命令详解
  • Diffusion-VLA 中的 Reasoning Token 注入机制解析:语言推理如何控制扩散模型?
  • 2.3 前端-ts的接口以及自定义类型
  • k8s:手动创建PV,解决postgis数据库本地永久存储
  • 【unity实战】使用unity的Navigation+LineRenderer实现一个3D人物寻路提前指示预测移动轨迹的效果,并可以适配不同的地形
  • 搜索引擎优化全攻略:提升百度排名优化
  • 解决Flutter运行android提示Deprecated imperative apply of Flutter‘s Gradle plugins
  • 武汉江滩某码头变形及应力自动化监测
  • 麒麟操作系统unity适配
  • java前端基础--HTMLCSS、JavaScript、Vue、Ajax
  • Python网络爬虫实现selenium对百度识图二次开发以及批量保存Excel
  • unity实现梦日记式效果
  • CS课程项目设计3:支持AI人机对战的井字棋游戏
  • 「Java EE开发指南」如何用MyEclipse创建企业应用项目?(一)
  • UniApp -- 小程序自定义导航栏组件
  • 小程序常用api
  • 2025年算法备案发号规律总结与下半年发号预测
  • js中 new Set()实例的各个api使用
  • Http请求中的特殊字符
  • iOS加固工具有哪些?项目场景下的组合策略与实战指南