news 2026/4/23 13:56:14

AB实验的关键认知(六)分流单元与分析单元

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AB实验的关键认知(六)分流单元与分析单元

—关注作者,送A/B实验实战工具包


在设计 AB 实验时,我们经常会遇到这样的灵魂拷问:
“这个实验是按人 (User)分流,还是按访问 (Session)分流?”
“我按人分流了,最后能不能算点击率 (CTR)的 P 值?”

这两个问题触及了实验设计的底层逻辑:分流单元 (Diverting Unit)分析单元 (Analysis Unit)的匹配关系。

如果这两个单元没对齐,轻则用户体验崩塌(同一个用户一会看到红按钮,一会看到绿按钮),重则统计结论失效(明明不显著却算出了显著)。

今天我们就来厘清这对“相爱相杀”的概念。


1. 粒度层级:俄罗斯套娃

首先,我们要建立一个粒度 (Granularity)的概念。在互联网数据中,粒度是像俄罗斯套娃一样层层嵌套的:

  1. 用户粒度 (User ID):最粗。一个用户对应唯一的 ID,包含他所有的生命周期行为。
  2. 会话粒度 (Session ID):中等。一个用户在一天内可能打开 App 5 次,产生 5 个 Session。
  3. 页面/请求粒度 (Pageview/Request ID):最细。一个 Session 内可能浏览了 10 个页面,产生 10 个 PV。

理解这个层级关系,是做对实验的前提。

---

2. 如何选择分流单元?——体验连贯性原则

分流单元决定了“谁”进入实验组,“谁”进入对照组。选择的核心原则只有一条:保证用户体验的连贯性 (Consistency)。

场景 A:必须按用户分流 (User ID)

如果实验涉及视觉、交互、功能流程的改动,必须用 User ID。

  • 例子:UI 改版(红按钮 vs 蓝按钮)。
  • 逻辑:如果你按 PV 分流,用户刷新一下页面,按钮从红变蓝,再刷新又变红。用户会觉得 App 出 Bug 了,产生困惑和沮丧,导致流失。

场景 B:可以按会话/请求分流 (Session/Request ID)

如果实验改动是后端逻辑、算法、广告,且用户感知不强,可以用更细的粒度。

  • 例子:搜索排序算法、广告出价策略。
  • 逻辑:用户这次搜“苹果”出结果 A,下次搜“苹果”出结果 B,通常是可以接受的。
  • 好处:粒度越细,样本量越大(PV 数远大于 UV 数),实验越容易显著,迭代越快。

3. 黄金定律:分流粒度≥ \ge分析粒度

分析单元决定了我们在计算指标时,是以什么维度聚合数据的(分母是谁)。

  • DAU留存率ARPU→ \rightarrow分析单元是User
  • 点击率 (CTR)转化率 (CVR)→ \rightarrow分析单元通常是PVSession

在统计学上,为了保证T 检验有效,必须遵守一个铁律:
分流单元的粒度,必须粗于或等于分析单元的粒度。

Granularity(Diverting) ≥ Granularity(Analysis) \text{Granularity(Diverting)} \ge \text{Granularity(Analysis)}Granularity(Diverting)Granularity(Analysis)

我们来看看三种情况:

情况 1:完美匹配 (User Split→ \rightarrowUser Metric)

  • 分流:按 User ID。
  • 指标:人均时长、留存率。
  • 评价最标准。满足 IID(独立同分布)假设,直接算 P 值没问题。

情况 2:绝对禁区 (Session Split→ \rightarrowUser Metric)

  • 分流:按 Session ID(粒度细)。
  • 指标:DAU、留存率(粒度粗)。
  • 评价错误!严禁操作!
  • 原因:这直接破坏了独立同分布 (i.i.d.)的核心原则。
    • 用户 Bob 有两个 Session。Session A 进了实验组,Session B 进了对照组。
    • 在算 DAU 时,Bob 既给实验组贡献了 +1,又给对照组贡献了 +1。
    • 两组数据不再独立,你的 T 检验前提崩塌,算出来的结论是垃圾。
    • 延伸阅读:关于独立同分布的重要性,强烈推荐阅读我的这篇博客:《AB实验的关键认知(二)独立同分布》,里面详细拆解了为什么它是实验的生死线。

情况 3:技术深水区 (User Split→ \rightarrowPV Metric)

  • 分流:按 User ID(粒度粗)。
  • 指标:点击率 CTR(分母是 PV,粒度细)。
  • 评价允许,但要小心。
  • 问题:这属于“分流单元 > 分析单元”。虽然满足独立性(人与人独立),但方差计算变复杂了
    • 同一个用户产生的 10 个 PV 是高度相关的(自相关性)。如果不处理这种相关性,直接把所有 PV 混在一起算 T 检验,会导致方差被低估,P 值虚低(容易假阳性)。
  • 解法:必须使用Delta MethodBootstrap来校正方差。简单的P = Z / p ( 1 − p ) / N P = Z / \sqrt{p(1-p)/N}P=Z/p(1p)/N公式在这里失效了。

总结:避坑指南

为了不把实验做废,请在设计阶段对着下表自查:

分流单元 (Diverting)分析指标 (Metric)分析单元 (Analysis)判定结果备注
User ID留存率、ARPUUser通过标准做法
User ID点击率 (CTR)PV⚠️需校正需用 Delta Method 估算方差
Session ID点击率 (CTR)Session/PV通过适合算法/广告实验
Session ID留存率、DAUUser禁止违背独立性,指标无意义

一句话心法:你可以把一个人拆成很多次行为去分析,但绝不能把一个人的多次行为拆给不同的组。


如果这篇文章帮你理清了思路,不妨点个关注,我会持续分享 AB 实验干货文章。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 17:00:58

YOLOv9推理只需一条命令,官方镜像真香

YOLOv9推理只需一条命令,官方镜像真香 在产线质检的凌晨三点,工程师盯着屏幕等待第17次训练失败的日志;在智能安防项目交付前一周,团队还在为CUDA版本冲突导致的检测框偏移焦头烂额;在高校实验室里,研究生…

作者头像 李华
网站建设 2026/4/23 7:23:25

DeepSeek-R1-Distill-Qwen-1.5B GPU适配:CUDA 12.8环境配置教程

DeepSeek-R1-Distill-Qwen-1.5B GPU适配:CUDA 12.8环境配置教程 你是不是也遇到过这样的问题:想跑一个轻量但能力扎实的推理模型,结果卡在环境配置上——CUDA版本对不上、PyTorch装错、模型加载报错、GPU显存爆满……别急,这篇教…

作者头像 李华
网站建设 2026/4/18 10:12:03

Qwen3-4B科研辅助应用:论文润色系统部署案例

Qwen3-4B科研辅助应用:论文润色系统部署案例 1. 引言:为什么科研需要AI润色助手? 你有没有遇到过这样的情况:辛辛苦苦写完一篇论文,反复修改了好几遍,结果导师看完还是说“语言不够精炼”、“表达不够学术…

作者头像 李华
网站建设 2026/4/17 23:44:40

告别复杂依赖,Unsloth一键安装指南

告别复杂依赖&#xff0c;Unsloth一键安装指南 你是不是也经历过这样的时刻&#xff1a;想快速微调一个大模型&#xff0c;刚打开文档就看到满屏的conda install、pip install --no-deps、xformers<0.0.26、bitsandbytes、accelerate……还要手动检查CUDA版本、PyTorch兼容…

作者头像 李华
网站建设 2026/4/17 20:07:18

Cute_Animal_For_Kids_Qwen_Image应用场景拓展:贺卡/贴纸/课件制作

Cute_Animal_For_Kids_Qwen_Image应用场景拓展&#xff1a;贺卡/贴纸/课件制作 你是否在为孩子的手工课、生日贺卡或课堂教具设计发愁&#xff1f;想要一些既安全又富有童趣的插图&#xff0c;但又不想花大把时间找图或请设计师定制&#xff1f;现在&#xff0c;借助 Cute_Ani…

作者头像 李华