实验跑两周、看到显著就全量?假阳性可能已从 5% 抬到 20%
声明:本文为独立方法论沉淀,基于公开资料与个人实践整理,不代表任何雇主或客户观点。 tl;dr(4 条) 经典固定窗 t / Z 检验只允许到点看一次。实验期间每天刷看板、一看到 p<0.05 就停,属于 optional stopping——名义 5% 的假阳性会被抬到 20% 量级(精确数字取决于偷看次数和停止规则,不是普适常数)。 序贯检验(sequential / anytime-valid)在设计阶段就把「允许反复查看」写进 Type I 控制:α-spending、SPRT、mSPRT、always-valid p-value / 置信序列是三族主流实现。 合法早停有代价:对弱效应更慢、置信区间更宽;早停的点估计偏乐观(winner’s curse),不能直接拿去做财务 forecast;它也不能让 30 天留存提前成熟。 小团队默认策略:序贯检验 + 至少跑满 7 个完整自然日 + guardrail 达标 + 无 SRM 才允许早停。选实验平台时直接问一句:是否 peek-safe / always-valid,而不是问会不会算 p-value。 一、一个每天都在发生的错误 我做实验诊断时最常见的场景不是"团队不会算 t 检验",而是: 实验周一上线,看板每天刷新; 周三运营发现转化率 p<0.05,业务群里一句"显著了,全量吧"; 周五全量,下周核心指标没动,甚至回落,但没人再把它和那次"显著"联系起来。 这个流程里,分流可能是对的、指标口径可能是对的、Welch t 也算得没错——错在决策时序。固定窗检验的统计保证有一个前提:分析次数和停止时间不依赖数据。你答应它"跑到第 14 天看一次",结果第 3 天看了一次、第 5 天看了一次、第 7 天显著就停,前提被破坏了。 固定窗检验不是"不能看监控",而是不能用未校正的中期显著性作为停实验的充分条件。看健康度(有没有崩、SRM 是否正常)随时可以;把"显著"当全量按钮,不行。 二、为什么多看几次,5% 就守不住了 直觉是这样的:在两组其实没有任何真实差异(A/A)的情况下,累计检验统计量是一条随机游走的线,5% 的显著性阈值是线两边的围栏。你答应只在终点看一次,误入围栏的概率就是 5%。但如果你每天都看一眼,这条线在 14 天里任何一天蹭进围栏你就宣布"赢了"——蹭到的机会自然随查看次数累积。 ...