← 返回 QuantGrowth 首页

3-sigma异常检测:最简单的监控方法,以及它的边界

数据
数据数据指标

预测方法(Prophet、ARIMA)需要建模、训练、维护,监控体系里还需要一个更轻的兜底手段——不建模型,直接用统计规则判断"这个点正不正常"。3-sigma 法就是其中最古老、最简单、也最被广泛使用的一个:它几乎不需要任何算法基础设施,一条 SQL 就能落地,但正因如此,它的适用边界也最需要被理解清楚。

一、原理:正态分布的 68-95-99.7 法则

3-sigma 法则的表述:若数据服从正态分布,某值与平均值的偏差超过三倍标准差,则认为是异常数据。判断区间为:

[\mu - 3\sigma,\ \mu + 3\sigma]

其中 ​\mu 是均值、​\sigma 是标准差。正态分布落在各区间内的概率是固定的:

范围 区间内概率 区间外概率
1 倍标准差​\mu \pm \sigma 68.27% 31.73%
2 倍标准差​\mu \pm 2\sigma 95.45% 4.55%
3 倍标准差​\mu \pm 3\sigma 99.73% 0.27%

也就是说,正常情况下一个点落在 3σ 区间外的概率只有约 0.3%(每 1000 次约 3 次)。一旦观察到这种小概率事件,更合理的解释不是"运气差",而是"数据生成过程变了"——要么业务真的异动,要么埋点/链路出了故障。3-sigma 法则也常被称为 68-95-99.7 原则
截屏2026-08-29 18.27.56

二、例题:一个完整的判断过程

某产品阅读转化率最近两周的均值为 ​\mu = 36.51\%,标准差为 ​\sigma = 5.98\%,判断 4 月 12 日(当日转化率 16.23%)是否为异常点:

  • $3\sigma = 3 \times 5.98% = 17.94%$;
  • 下限:​\mu - 3\sigma = 36.51\% - 17.94\% = 18.57\%
  • 上限:​\mu + 3\sigma = 36.51\% + 17.94\% = 54.45\%
  • 4 月 12 日实际值 16.23% 低于下限 18.57%,落在 3σ 区间外,判定为异常点。

图片 1
整个过程只用了均值和标准差两个统计量,没有任何模型——这正是 3-sigma 法在监控体系里的价值:成本极低、无延迟、可解释

三、从统计过程控制到指标监控

3-sigma 不是互联网发明的方法。它的源头是 统计过程控制(SPC,Statistical Process Control):1924 年,贝尔实验室的 Walter Shewhart 为产品质量控制设计了控制图(Control Chart),用中心线(CL = 均值)、上控制限(UCL = μ+3σ)、下控制限(LCL = μ−3σ)三条线判断生产过程是否"失控"。

这套"三线判断"逻辑被业务指标监控完整继承:

  • 生产线上每个零件的尺寸 → 每天的 DAU、转化率、收入;
  • 过程失控(机器磨损、原料异常)→ 业务异动(渠道放量、版本 bug、埋点丢失);
  • 控制限 → 报警阈值。

可以说,今天所有"阈值报警"系统的鼻祖都是休哈特控制图。理解这一点也解释了 3-sigma 的定位:它假设过程处于统计受控状态,报警的含义是"过程可能失控了",而不是直接告诉你原因。

四、实战要点:μ 和 σ 怎么算才对

3-sigma 法用起来简单,但直接拿全量历史数据算 μ 和 σ 是常见的错误来源。几个实战要点:

1. 用滑动窗口,不用全量历史。 常用"最近 14/28 天"的滑动窗口计算 μ 和 σ,让阈值跟随业务现状;全量历史会被早期数据拉偏。

2. 先剔除非正常日,再算基线。 已知的大促日、节假日、事故日不应进入 μ 和 σ 的计算——否则这些极端值会撑大 σ,让真正的异常反而漏报(把噪声算进基线,等于提高了"正常"的标准)。

3. 比率指标先做变换。 转化率、留存率这类有界比例指标天然不是正态分布(不可能超过 100%),直接套 3-sigma 在边界附近会失真。常用做法是对数变换,或对比例做 logit 变换后再检验。

4. 异常值会污染参数。 均值和标准差本身对异常值不鲁棒——一个极端点就能显著抬高 σ。更稳的做法是用**中位数和 MAD(中位数绝对偏差)**替代,或用 IQR 法:低于 ​Q_1 - 1.5 \times IQR 或高于 ​Q_3 + 1.5 \times IQR 判为异常(即箱线图的胡须边界)。MAD 和 IQR 不依赖正态假设,对离群值天然免疫。

五、局限:什么时候 3-sigma 会失灵

1. 趋势和季节性是头号天敌。 3-sigma 隐含"数据平稳"的假设:均值和方差不随时间变化。而 DAU 在长假期自然下滑、周末基线天然偏低,用一个全局均值去判周日的数据,必然误报。正确姿势是先用预测方法(Prophet/ARIMA)拟合趋势和周期,再对预测残差做 3-sigma 检验——预测给动态基线,3-sigma 管残差波动,这正是第二章"基于预测"与"基于统计"两类方法真正的组合方式。

2. 小偏移检测不出来。 3σ 是"单点突变"检测器:指标从 100 缓慢滑落到 92,每天变化都在 3σ 内,但从过程视角看已经失控。SPC 体系为此专门设计了 EWMA(指数加权移动平均)控制图CUSUM(累积和)控制图,通过累积历史信息检测持续性小偏移;业务监控里对应的思路是"连续 N 天低于基线 X%"这类规则。

3. 正态假设只对近似数据成立。 如果数据明显偏态或多峰,3σ 内的真实概率会偏离 99.73%。数学上的兜底是切比雪夫不等式:对任意分布,落在 k 倍标准差内的概率至少为 $1 - 1/k^2$——k=3 时至少 88.9%。这个保证弱得多,但不受分布形态约束。

4. 多次检验的假阳性膨胀。 如果同时监控几百个指标、每个都做 3σ 检验,按 0.27% 的假阳率,纯随机情况下每天也会有几个指标"报警"。这在本质上是多重假设检验问题(FDR 膨胀),工程上靠报警聚合、按重要度分级来缓解。

六、方法谱系:3-sigma 在监控体系中的位置

方法 类型 前提 擅长 短板
3-sigma 统计 平稳、近似正态 单点突变、成本极低 趋势季节性下失灵
IQR / MAD 统计(鲁棒) 无分布假设 偏态数据、含离群值 对小偏移不敏感
EWMA / CUSUM 统计(SPC) 平稳 持续性小偏移 参数调优较繁
Prophet / ARIMA 预测 足够历史数据 趋势 + 周期 + 节假日 建模维护成本高

成熟的指标监控体系通常是金字塔结构:底层用 3-sigma 这类规则做全量指标的廉价扫描,中层用预测模型对核心指标做动态基线,上层再叠加人工判断和异动归因。3-sigma 不精确,但便宜、快、没有盲区——这恰恰是兜底方案最需要的品质。

参考资料

  • Shewhart W A. Economic Control of Quality of Manufactured Product. 1931(统计过程控制与控制图的奠基著作)
  • NIST/SEMATECH e-Handbook of Statistical Methods(控制图、EWMA、CUSUM 的工程手册)
  • Leemis L M, McQueston J T. Univariate Distribution Relationships. The American Statistician, 2008(68-95-99.7 数值的推导依据)