Skip to content

方法Method

CUSUM 变点检测

CUSUM change detection · Page CUSUM · 累积和变点检测

对所有可能的改变起点取最大似然比,用可重置递推监测分布变化,并以运行长度而非无限期错误概率校准阈值。

一台机器原来每件产品有 1/3 的概率出现某种标记。机器出问题后,这个概率会升到 2/3。我们按顺序检查产品,希望尽快发现改变,却不知道它会从哪一件开始。如果把从第一件到现在的全部证据一直相乘,前面很长一段正常记录可能压住刚刚出现的异常。CUSUM 的办法是:同时考虑每一个可能的改变起点,只保留其中最有力的一段证据。它看起来需要保存许多候选段,实际上只需更新一个数。

这个方法还带来一个容易误读的数:正常运行时,平均等多久才误报。平均等待很长,并不表示永远误报的概率很小。本页从同一个三状态例子算出这两种量,说明阈值究竟保证什么。

形式陈述 ​

未知的是起点,改变前后的模型已经给定 ​

令 X1,X2,… 相互独立,Fn=σ(X1,…,Xn)。改变前后分布分别有共同支配密度 f0,f1。P∞ 表示始终使用 f0;Pν 表示 X1,…,Xν−1 使用 f0,从第 ν 个观测开始使用 f1。所以本页的 ν 是第一个改变后的下标。

先假定两种分布相互绝对连续,且 f0≠f1。单步似然比和对数增量为

(1)Ln=f1(Xn)f0(Xn),Zn=log⁡Ln.

在时刻 n,假设改变发生在 k≤n,相对于始终正常模型的似然比是 Lk:n=∏i=knLi。取所有候选起点的最大值:

(2)Vn=max1≤k≤nLk:n,V0=1,Vn=max(1,Vn−1)Ln.

递推的证明只需分两类:起点 k=n 给出 Ln,较早起点的最佳值是 Vn−1Ln。新的候选段总可以从当前观测重新开始。

常用的反射对数形式是

(3)C0=0,Cn=max(0,Cn−1+Zn).

归纳可得 eCn=max(1,Vn)。因此,对 A>1,

(4)τA=inf{n≥1:Cn≥log⁡A}=inf{n≥1:Vn≥A}

是同一个停时。这里取“达到或超过”,并约定空集的下确界为 ∞。Vn 可以小于一,而 eCn 总至少为一;不要把两者的数值直接写成相等。若允许 Ln=0,式 (2) 仍有意义;式 (3) 要以 log⁡0=−∞ 理解,而不应让程序计算普通浮点对数零。

反射是把过去最低的累计和扣掉 ​

设 S0=0、Sn=∑i=1nZi。所有后缀和满足

(5)Cn=Sn−min0≤j≤nSj.

证明是将 ∑i=knZi=Sn−Sk−1 取最大值,并加入空段的零。这个公式也解释了重置:当新的 Sn 成为历史最低点时,Cn=0,此前的不利证据不再拖累未来候选段。

在报警时若令 j∗ 为 S0,…,SτA−1 的最后一个最小点,j∗+1 是一个最大似然的候选改变起点。选择最后一个只是解决并列的约定。它不是对真实改变时刻的置信区间,也没有自动给出定位误差概率。

用有限状态转移,精确算出等待时间 ​

若递推在报警前只有 m 个可能状态,可把它看作Markov 链。令 Qij 为一步从暂态 i 到暂态 j 的概率;一行缺少的概率就是这一步报警的概率。设 τ 是从当前状态起,还要等待的观测数,1 为全一列向量,则

(6)Pi(τ>n)=ei⊤Qn1,ui=Eiτ.

第一式来自连续 n 步都留在暂态。这里 n=0 时右端是一,符合下一次检查至少还需一步。

如果存在整数 b 和 ε>0,使每个暂态在接下来的 b 步内都有至少 ε 的报警概率,那么

(7)‖Qkb‖∞≤(1−ε)k.

把时间按块分开,每块仍存活的条件概率至多 1−ε,即得这个界。因此 ∑n≥0Qn 收敛,望远镜相消给出它等于 (I−Q)−1。对整数非负等待时间作尾概率求和,得到

(8)u=(I−Q)−11,u=1+Qu.

所以“解一个线性方程”有明确的前提。若根本无法从某些状态报警,矩阵可能不可逆;不能把一个形式逆矩阵当作有限均值证明。

直觉

固定起点的SPRT比较的是“从开始到现在,哪一种固定模型更像”。变点检测问的是“最近是否有一段已经变了”。CUSUM 的最大后缀允许把前面正常的观测放在候选起点之前,但它仍然使用事先指定的 f0,f1。若改变后的参数也未知,还需要另一个估计或混合步骤,本页没有把它藏进公式中。

本页的 log 与下面两项 KL 散度统一使用自然对数;链接页默认的底二版本须乘以 log⁡2 才得到这里的单位。在对数可积的条件下,KL 散度给出

(9)E∞Z1=−D(f0‖f1)<0,E1Z1=D(f1‖f0)>0.

正常时累计证据通常往下走,反射把它留在零附近;改变后通常往上走。不过,“通常向下”不等于“永远到不了上边界”。反射不断提供新机会,偶尔连续出现一串有利观测,仍会触发报警。

图左的折线展示一条观测路径,不是均值轨迹。图右把相同递推压缩成三个暂态,因而能算所有路径的概率。图中的回到零也只丢掉当前候选段的累计证据,没有声称机器被修好了。

例子与边界

三个状态,两个不同的运行长度 ​

回到开头的 Bernoulli 例子:f0 的成功概率为 1/3,f1 为 2/3。成功时 L=2,失败时 L=1/2。用 log⁡2 作单位,状态每次上升一格或下降一格,下降到零后不再变负。

取 A=8,即第三格报警。记当前实际成功概率为 p、q=1−p,暂态按 0,1,2 排列:

(10)Q(p)=(qp0q0p0q0).

例如从第二格失败,回到第一格;从第二格成功,直接报警,所以第三行之和为 q。均值方程逐行是

(11)u0=1+qu0+pu1,u1=1+qu0+pu2,u2=1+qu1.

任意暂态接下来连续三次成功都会报警,概率至少 p3>0,因而前面的有限性证明适用。精确求解得到

(12)u(1/3)=(33,30,21)⊤,u(2/3)=18(51,39,21)⊤.

从零开始,正常时平均 33 次检查才报警;若一开始就已经改变,平均检测延迟是 51/8=6.375 次。改变发生前若累计状态已在第一格,之后的平均延迟是 39/8,不是重新从零计算的 51/8。

最坏历史延迟怎样得到 ​

在给定同一串改变后观测的情况下,从较高初值出发的反射过程始终不低于从零出发的过程。这是映射 c↦max(0,c+z) 的单调性逐步传递的结果。因此较高初值的报警不晚于零初值。

对这个例子,在 τA≥ν 的历史上,改变前状态是 0,1,2 之一;独立性使改变后的未来不再依赖更早历史。已经提前报警的历史给出零延迟。于是

(13)supν≥1esssupEν[(τA−ν+1)+∣Fν−1]=518.

上界来自单调耦合;等号在 ν=1、确定的零初值处取得。这计算了当前规则的最坏历史延迟,并没有证明它优于所有其他规则。CUSUM 的更强最优性定理需要另述准则和条件,本页不借用那个结论来替代校准。

平均误报等待,不是永远不误报的概率 ​

正常时连续三次成功的概率是 1/27。不重叠的三次观测块相互独立;前 k 块都不是全成功的概率为 (26/27)k。只要有一块全成功,不论块前状态如何,都已在块内报警。所以

(14)P∞(τ8<∞)=1,E∞τ8=33.

两式完全相容。不能把阈值 8 解读为“无限期误报概率至多 1/8”。如果实际任务只监测十次,应算相应的有限时间量:

(15)P∞(τ8≤10)=1−e0⊤Q(1/3)101=1360959049.

同样的现象不限于三状态链。若两个独立同分布模型不同,且 E∞L=1,则存在 c>1 满足 P∞(L≥c)>0;否则 L≤1 且均值一会迫使 L=1 几乎处处。足够长的全有利块使后缀积达到任意固定 A,并给出几何块尾界。此事件在改变后也有正概率,因为其概率是 E∞[L1{L≥c}]。因此两种模型下都能得到有限均值。相反,若模型完全相同,L≡1,CUSUM 在 A>1 时永不报警。

推论与应用

与 SR 的比较给出一个保守预算 ​

Shiryaev–Roberts 检测把相同的候选后缀积求和,而非取最大。零初值时记其统计量为 Rn,则逐路径有 Rn≥Vn。对相同 A>1,它的报警时刻 τASR≤τA。由 SR 页的有界停止论证,正确正常模型下

(16)E∞τA≥E∞τASR≥A,P∞(τA≤N)≤min(1,N/A).

后一个界来自 AP(τASR≤N)≤E(τASR∧N)≤N。它不是一个对无限期有用的固定小概率界。对三状态例子,精确的 33 比保守下界 8 更有校准价值。

最大和求和也会产生真正不同的规则。在公平硬币正常模型、改变后必定成功的模型中,成功给 L=2,失败给零。阈值 A=6 下,CUSUM 要连续三次成功,平均等待 14 次;SR 两次成功已有 R=6,平均只等 6 次。这个比较说明相同数值阈值不是相同的误报约束,不能据此宣布哪个方法在公平条件下更快。

实施时需要交付什么 ​

在线递推每个观测只用常数次算术操作与一个当前状态;若还需候选起点,只需额外记住最近重置位置。有限状态校准则是另一个计算:m 状态的稠密线性求解约需 O(m3) 次域运算,递推 N 步存活分布约需 O(Nm2) 次;本例矩阵稀疏,可以更快。精确有理数的分子分母还会增长,不能把这些操作数当作位复杂度。

运行长度证书终点要求同时交付:递推与显式后缀的一致性、转移矩阵、有限吸收理由、精确均值、指定时域的报警概率,以及改变初值或阈值后的重算。程序不把一个模拟平均数当作误报保证,也不对未知或失配的 f0 自动担保。

参考资料

[1] G. V. Moustakides, A. S. Polunchenko, A. G. Tartakovsky, Numerical Comparison of CUSUM and Shiryaev–Roberts Procedures for Detecting Changes in Distributions, 2009 作者版本,§§2.1–2.2 与 §3 的首次转移方程。本文独立推导离散有限状态例子,不采用其连续模型的数值近似误差结论。

[2] G. V. Moustakides, Optimal Stopping Times for Detecting Changes in Distributions, Annals of Statistics 14 (1986), 1379–1387。核读 pp.1379–1380 的模型、最坏历史延迟和单调性。本文只计算给定规则的延迟,不援引该文后面的最优性证明,也不把其连续似然条件用于离散例子。

关系图谱9 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系