CUSUM累积和控制图
这个方法是做什么的
专门用来抓小幅但持续的均值漂移。休哈特图逐点判断“这一个点离不离谱”,而 CUSUM 把每个观测与目标值 μ0 的偏差累加起来:C⁺ᵢ=max(0, C⁺ᵢ₋₁+(xᵢ−μ0−K))、C⁻ᵢ=max(0, C⁻ᵢ₋₁+(μ0−K−xᵢ)),任一侧越过决策区间 H 即报警。K 叫松弛量(小于 K 的偏差不累积,防止噪声堆积),H 叫决策区间;两者都以过程标准差为单位由控件给定,默认 k=0.5σ、h=5σ。σ 由平均移动极差反估(σ=MR̄/1.128),因此行序必须是真实的采集顺序。
它的输出围绕“漂移有多大、发生在哪一段、这套参数多久能发现”组织。卡②除累积和明细外,给 Mann-Kendall 单调趋势检验与信号段数的泊松近似检验;卡④用 Montgomery 的反推式把累积和折回偏移量估计 δ̂(演示为 δ̂⁺=1.268σ、δ̂⁻=−1.221σ),给一张由 Siegmund 解析近似算出的 ARL 曲线并逐行与休哈特单值图对照,再把序列切成若干“累积段”(C± 从离开 0 到再次归零的区间)逐段做相对 μ0 的单样本 t 检验。报告还有一个别处少见的机制:前提被拒时会给相关结论打上折扣标签——演示数据正态性(p=0.012)与独立性(p=0.006)都被拒绝,于是 ARL 表与信号段检验旁边都挂着说明,指出名义 ARL₀ 系高估、该检验的 p 偏小属反保守。
需要准备什么数据
- 放入[定量]测量值序列:1 个
数据要求
- 数据表至少 25 行。
- 单列缺失率不超过 10%。
- 不接受取值全都一样的列(零方差列没有可分析的变异)。
以上条目由系统从该方法的校验规则直接生成,与上传数据时的实际拦截规则一致。
什么时候用它
- 已知工艺标称值,要监控过程中心有没有慢慢偏离它(灌装量、配比浓度、炉温)
- 休哈特图长期不报警,但你怀疑过程已经整体挪了半个到一个 σ
- 需要给出“漂移大约有多少个 σ”的量化结论,而不只是“报警了/没报警”
- 需要把排查范围收窄到某一段时间:累积段天然给出了漂移的起止区间
前提:每行是一个按时间先后排列的单值观测(不是子组汇总值);受控时观测近似正态且相互独立——累积和对自相关格外敏感;测量列不得为常数(否则 MR̄=0,K 与 H 全部退化为 0)。数据要求把行数下限定在 25,少于 25 行会被前置校验拦下。控件里的目标值 μ0 建议按工艺标称值显式填写,留空时取样本均值,后果见下文。
什么时候不要用它
- 要抓的是突发跳变而不是缓慢漂移:卡④的 ARL 对照表显示 3σ 幅度的偏移,CUSUM 需 2.4 个观测、休哈特单值图只需 2.0 个——这一档上休哈特更快,用「单值-移动极差(I-MR)控制图」。
- 每个时点能取到多件样本:子组均值本身就压低了噪声,用「X-bar/R 控制图」或「X-bar/S 控制图」更省事,也便于同时监控组内波动。
- 序列存在显著自相关:正自相关会让累积和持续同向堆积、误报暴增,先用「时间序列分析(ARIMA)」建模再对残差作图;想先看清自相关结构用「(偏)自相关分析」。
- 只想知道序列有没有单调趋势、或想定位一次水平突变的时点:前者用「Mann-Kendall趋势检验」(就是卡②里那一项的独立版本),后者用「突变点检测(Pettitt)」——CUSUM 的报警点必然滞后于真实变点,不适合定位。
- 数据是原始计数而不是测量值:别把计数直接喂进来,用「P 图」「np 图」「c 图」或「u 图」,它们的控制限来自二项/泊松分布。例外是你要抓的正是计数的小幅持续漂移(那恰好是 3σ 计数图的短板):可先自己算一列标准化残差 z(如 (cᵢ−c̄)/√c̄)再喂进本图,并把控件里的目标值 μ0 显式填 0——留空会取 z 序列自己的均值,等于把整批一起偏这件事抵消掉;另注意 σ 仍由 MR̄/1.128 反估而不是取 1。
- 要抓的是波动(方差)变化而不是均值漂移:本图只监控中心,请用「X-bar/R 控制图」的 R 图或「单值-移动极差(I-MR)控制图」的 MR 图。
容易误读的地方
- μ0 留空的代价比想象中大:整批一起偏,CUSUM 一点也看不出来。 留空时 μ0 取本批样本均值,累积和是相对“这批数据自己的中心”算的,于是全批系统性偏离标称值这件事被构造性地抵消掉了。证据就在报告里:卡④“整体标准化偏移 (x̄−μ0)/σ”演示值恒为 0.000,说明栏直接写它此时不提供信息;卡②的表注也说明因为 H₀ 由构造方式恒成立,此时不列单样本 t 检验。有标称值就一定要填进控件。
- 报警点不是漂移的起点,排查要往前回溯到累积段的起始处。 累积和需要时间把小偏差攒到 H 以上,所以首次报警必然滞后。卡④表注给了正确做法:排查特殊原因应从该累积段的起点(上一次 C± 归零处)开始,而不是从红点开始。演示数据首次失控在第 29 点,而它所属的上侧累积段是“观测 27~39”。拿着报警点去查当班记录,很可能查的是漂移已经发生之后的时段。
- “CUSUM 比休哈特灵敏”这句话必须带上偏移幅度。 卡④把两者并排列了出来:0.5σ 时 38.0 对 155.2、1σ 时 10.3 对 43.9,CUSUM 快得多;到 2σ 是 3.9 对 6.3,优势缩小;到 3σ 变成 2.4 对 2.0,休哈特反而更快。原因是累积机制天生要攒几个点,而大跳变一个点就够。所以 CUSUM 不是休哈特的升级版,是补充——现场常见做法是两张图并用。
- 前提一旦被拒,ARL 与信号段检验就只剩量级参考价值。 演示数据 Shapiro-Wilk p=0.012、Ljung-Box p=0.006(r₁=0.301),报告随即在两处挂上折扣说明:ARL 由 Siegmund 的正态-独立近似求得,正自相关会让累积和持续同向堆积,真实 ARL₀ 明显小于名义值;而信号段数检验的期望段数就等于 n/ARL₀,ARL₀ 被高估 ⇒ 期望段数被低估 ⇒ p 偏小、属反保守。演示里那个 p<0.001 看着很硬,报告自己写明它“不足以据此单独断言存在特殊原因”。
- CUSUM 报警而分段 t 检验不显著,恰恰是它设计目的的体现。 演示数据 12 个时点越过 H,但 8 个累积段经 Holm 校正后显著的是 0 个。卡④对此有解释:t 检验问“这一段的平均值相对段内波动是否够大”,CUSUM 问“持续同向的小偏差累加起来是否越过了 H”。0.5σ~1σ 这种量级正是前者检不出、后者能抓住的区间。把段 t 检验不显著读成“CUSUM 报了假警”,是把两个不同的问题当成了同一个。
- σ 被漂移污染后,K 与 H 会一起变松。 σ 由移动极差反估、K=kσ、H=hσ,三者同比缩放。用一段已经含失控点的数据建参数,σ 偏大 ⇒ H 偏宽 ⇒ 后续检出能力下降,卡⑤的结论文案专门提示不要把这样的参数固化为长期基准。演示数据 σ/s=0.786 已经在提示序列存在漂移或离群点。
报告里有什么
- 输出结果一:数据概览与前提检验
- 输出结果二:控制参数与稳态检验(主结果)
- 输出结果三:CUSUM 控制图可视化
- 输出结果四:效应量与事后分析
- 输出结果五:结论与解读
图中 C+ 向上、C− 以负号向下绘制,中心线 CL=0,UCL=+H、LCL=−H(H=4.9228);红点为越限失控点。可用切换器在折线图/柱状图/数据表之间切换。