目录
[A/B 测试](#A/B 测试)
[什么是 A/B 测试?](#什么是 A/B 测试?)
[为什么要做 A/B 测试?](#为什么要做 A/B 测试?)
[A/B 测试核心指标怎么选?](#A/B 测试核心指标怎么选?)
[完整 A/B 测试流程是什么?](#完整 A/B 测试流程是什么?)
[原假设 H0 和备择假设 H1 是什么?](#原假设 H0 和备择假设 H1 是什么?)
[p 值是什么?](#p 值是什么?)
[显著性水平 α 和功效 Power](#显著性水平 α 和功效 Power)
[一类错误 & 二类错误](#一类错误 & 二类错误)
[中心极限定理 CLT](#中心极限定理 CLT)
[peeking 问题(多次偷看结果)](#peeking 问题(多次偷看结果))
A/B 测试
什么是 A/B 测试?
将用户随机分成两组:
- A 组:对照组(原有版本)
- B 组:实验组(新策略 / 新功能)通过统计假设检验判断指标差异是否显著,从而决定是否上线新版本。
为什么要做 A/B 测试?
- 避免凭感觉决策
- 量化新策略真实效果
- 降低上线风险
- 用数据证明 "有效"
A/B 测试核心指标怎么选?
- 核心:转化率、点击率、留存、人均时长、收入
- 辅助:用户结构、设备分布、地域分布原则:少而精,优先业务北极星指标
完整 A/B 测试流程是什么?
- 明确实验目的 与核心指标
- 计算所需样本量 & 实验天数
- 随机分流,保证两组用户同质
- 上线实验,埋点收集数据
- 数据清洗,检查分流均匀性
- 做假设检验(t 检验 / 卡方)
- 根据 p 值、置信区间判断是否显著
- 给出结论:上线 / 不上线 / 延长实验
统计学
原假设 H0 和备择假设 H1 是什么?
- H0:两组无差异
- H1:两组有差异 只有拒绝 H0,才能说 B 版本更好。
p 值是什么?
在原假设成立(两组无差异)的情况下,观察到当前差异或更极端结果的概率。
- p < 0.05 → 差异显著,认为策略有效
- p > 0.05 → 差异不显著,不能认为有效
显著性水平 α 和功效 Power
- α(一类错误):假阳性,没效果说有效果,常用 0.05
- Power = 1−β:真有效果能检测出来的概率,常用 0.8
一类错误 & 二类错误
- 一类(α):误判有效(假阳性)
- 二类(β):漏判有效(假阴性)
什么是置信区间?
有 95% 把握认为真实提升幅度落在这个区间内。
中心极限定理 CLT
样本量足够大时,样本均值近似服从正态分布,因此可以用 t 检验。
不同指标对应什么检验?
- 转化率 / 点击率(0/1 数据)→ 卡方检验 / 双比例 z 检验
- 时长、分数、金额(连续值)→ 独立样本 t 检验
- 数据不正态、异常值多→ Mann-Whitney U 检验(非参数)
样本量由什么决定?
- 基线转化率
- 最小可检测提升 MDE
- 显著性水平 α=0.05
- 统计功效 Power=0.8
期望提升越小,需要样本量越大。
实验没到样本量能停吗?
不能。样本不足 → 检验功效低 → 容易得出错误不显著结论。
为什么必须随机分流?
保证两组用户性别、年龄、活跃度、设备等分布一致,排除干扰变量。
什么是辛普森悖论?
整体看 B 更好,按维度拆分后 A 更好。原因:用户结构分布不均。避免:随机分流 + 分层分析 + 检查组间一致性。
peeking 问题(多次偷看结果)
频繁看结果会提高一类错误,导致假显著。解决:
- 固定实验周期
- 不中途停止
- 使用多重检验校正
实验前要检查什么?
- 分流是否均匀(用户结构一致)
- 埋点是否正常
- 有无污染、交叉影响
- 有无系统波动(活动、节假日)
显著就一定上线吗?
不一定。还要看:
- 提升幅度是否业务显著
- 有无负向指标
- 实现成本、风险
- 长期影响