实验与统计
数据分析里最难的一步不是「算出差异」,而是判断「差异是真还是碰巧」。本篇给产品实验者够用的统计直觉:如何设计干净的 A/B 实验、如何读懂 p 值与置信区间、如何避开那些让实验结论失效的常见坑。
分工说明:面向统计学习的评估指标(准确率、F1、交叉验证)见AI 方向·机器学习基础,本页聚焦因果推断的实验视角——我们关心产品改动对用户行为的影响,而不只是预测精度。
实验设计的四要素
| 要素 | 关键问题 | 常见错误 |
|---|---|---|
| 假设 | 要验证的核心指标假设是什么 | 一版试一堆指标 |
| 样本量 | 能检测出预期的效应量吗 | 样本太小直接下结论 |
| 随机化 | 两组除了改动外是否可比 | 按渠道/地区分组引入偏差 |
| 时长 | 覆盖了完整的用户周期吗 | 只跑一个周末或遇到大促 |
样本量直觉:先想效应量
- 效应越小越难检测,需要越大样本:要检测 1% vs 0.5% 的提升,样本量远大于 5% vs 4.5%;
- 样本量公式交给工具,但要有量级直觉:「改动能带来的收益越小、基线越稳,就越要等得起」;
- 用历史数据估基线方差,再反推最小可检测效应(MDE)与所需时长。
读实验结果:p 值、置信区间与功效
p 值到底在说什么
- p 值 = 「假设没效果的前提下,观测到这么大差异(或更极端)的概率」;
- p<0.05 说人话是「如果改动无效,出现这种结果的概率不到 5%」——不是「有 95% 概率改动有效」;
- 长期跑实验不断看 p 值会膨胀假阳性(提前停车/偷看问题):跑之前定好时长与停止规则。
置信区间更好用
- 给出「效应量的可能范围」而非单一 yes/no:
提升 +2.1% (95% CI: +0.3% ~ +3.9%); - 区间包含 0 → 结论是「不确定」而非「没效果」;区间整体为正但下界很小 → 效果可能真实但小到不值得上线。
功效与两类错误
| 错误 | 含义 | 代价 |
|---|---|---|
| 第一类错误(假阳性) | 无效改动被当有效 | 上线了没用的功能 |
| 第二类错误(假阴性) | 有效改动被判无效 | 错杀了好改动 |
样本量设计就是在这两类错误之间配预算,默认取 α=0.05、功效 80% 起步。
四个常见偏差
| 偏差 | 例子 | 应对 |
|---|---|---|
| 幸存者偏差 | 只看完成注册的新用户 | 进入实验后按「注册意图」整体归组 |
| 新奇效应 | 新功能新鲜感带来的虚假提升 | 跑足周期,看衰减后仍成立与否 |
| 干扰效应 | 对照组用户被实验组影响(社交/市场互通) | 隔离单元(账户/地区),避免串扰 |
| 多重比较 | 拆 20 个子群总有一个显著 | 主指标预注册,子群结论降级为线索 |
抽样与统计直觉速查
- 中心极限定理:样本均值近似正态,所以均值类检验才成立;样本量够大时不必假设总体正态;
- 极端值敏感的指标(客单价、时长)优先用中位数或分位数,或用对数变换后再检验;
- 不要用「统计显著」替代「业务显著」:微小但显著的效果,也要看投入产出再决定是否上线;
- 天然实验/准实验(如政策分批上线)无法随机化时,明确写下不可验证的假设,结论降级为相关性,见分析工作流的相关与因果提醒。
常见坑速查
| 坑 | 表现 | 应对 |
|---|---|---|
| 偷看 p 值 | 天天刷新显著性 | 预先定样本量与时长 |
| 多重比较失控 | 拆 20 个群找显著 | 主指标 + 预注册,子群只当线索 |
| 新奇/厌倦效应 | 首周提升次周消失 | 跑完整用户周期 |
| 组间不均匀 | 实验组恰好更多付费大户 | 分层随机 + 预检验基线 |
| 忽略护栏 | 转化升但退款也升 | 配护栏指标一并看 |
| 小样本大结论 | 千级样本吹翻倍 | 先估 MDE 再启动 |
检查清单
- [ ] 假设明确到「改动 A 对指标 B 的效应」,主指标预注册
- [ ] 基于历史方差估算样本量与实验时长(含停止规则)
- [ ] 随机化单元与干扰控制(隔离)有明确方案
- [ ] 报告同时给效应量与置信区间,不只写 p 值
- [ ] 子群分析标注为探索性结论
- [ ] 结论附带护栏指标与业务显著性评估
相关:分析工作流 · 指标体系与埋点 · 预测/评估指标见AI·机器学习基础 · 实验驱动的产品决策见产品·产品指标与增长