SECOM Signal Triage

Which of 590 process sensors actually separate failing runs from passing ones?

A semiconductor plant monitors 590 process signals. When a lot fails, an engineer has to decide where to look. A conventional screen says 80 of those signals separate failing runs from passing ones. After correcting for the number of comparisons, grouping near-duplicates, and checking that each effect survives the process changing mid-record, nine do.

For the process owner

9of 590
signals carry evidence about failure that survives correction for the number of tests run, removal of near-duplicate channels, and the process changing mid-record. A conventional screen would have named 80.
122of 590
signals reported the same value on every one of 1,567 runs across three months. They cannot distinguish one run from another and are candidates for review as potential monitoring overhead.
2sensors
are informative about failure but recorded on a minority of runs, and each is the lone informative channel in a measurement family otherwise slated for reduction. Sensors 112 and 113 are the highest-value follow-up on this page.
0actionable today
The signals are numbered, not named. Mapping these IDs to physical measurements is the gating task, and it belongs with process engineering before any monitoring change is made.

Of 590 signals, 464 are testable. The rest never vary, or are too sparsely observed in one outcome group to compare. Testing each against outcome at the usual 5% threshold flags 80. But 464 tests at that threshold are expected to flag around 23 by chance alone, with nothing real present. Each bar below removes a different way the count overstates itself: multiplicity, then redundancy between near-identical channels, then effects that do not reproduce across the record. The gap between 80 and 9 is the finding, not the 9.

Figure 1. Signal counts at five successive filters, from all sensors tested down to those that are significant, independent of near-duplicates, and stable across both halves of the record.

What the shorter list is worth

This dataset carries no cost information, so no saving is claimed here. The two counts above are ours; the rates below are yours. Set them to your fab and the arithmetic follows.

1,280
Engineer-hours per year, checking 80 signals per excursion
144
Engineer-hours per year, checking the 9 that survive
1,136
Hours per year not spent on signals that flagged by chance

Read this as a scoping tool, not a business case. It assumes review time scales with the number of signals checked, that every signal on the list is actually reviewed, and that the nine-signal list finds root cause as often as the eighty-signal one. The third assumption is the load-bearing one and this dataset cannot test it. A fab holding both lists against its own excursion records for one quarter could.

The 33 signals surviving correction, ordered by effect size. Colour marks whether the effect reproduces when the record is split in half. Ten do. Twenty-one appear only when the halves are pooled, and two cannot be assessed. Two patterns are worth noting: the six largest effects are all stable ones, and almost every asterisked signal, meaning one with a near-duplicate in the set, falls in the unstable group. The three filters are not independent objections. They agree about which signals to trust.

Figure 2. Cohen's d for each sensor passing Benjamini–Hochberg at FDR 0.10, coloured by whether the effect holds across both time halves. An asterisk marks a sensor sharing a redundancy group with at least one other.

Every signal lands in exactly one bucket. Two of these are recommendations to monitor less, and both rest only on structural facts: a signal taking one value across all 1,567 runs, or recorded on under 10% of them. Neither is built from a signal failing a significance test. That restraint is deliberate. A false entry on the shortlist costs an engineer an hour. A signal wrongly cut from monitoring stops producing the data that would reveal the mistake. The errors are not symmetric, so the irreversible one is never made on inferential grounds.

Figure 3. Every sensor assigned to one bucket. The two-sensor shortlist_low_coverage segment is drawn to scale, and is nearly invisible by design.

The failure rate is not stationary. It runs between 13% and 23% through mid-August, then between 1% and 5% from September. Because failures concentrate early, a signal that merely drifted over these 90 days will separate failing from passing runs without having anything to do with failure. That is why every effect is rechecked within each half of the record. The decline is also consistent with someone having found and fixed a process problem, in which case some early-only signals were real and are now historical.

Figure 4. Weekly failure rate over the 14-week window, against the overall rate. The shaded band is the early half of the median split used in the stability check.

Effect size is not separation. These are the strongest signals in the set, standardised to share an axis, and the passing and failing distributions still overlap heavily. A Cohen's d of 0.6 is a shift of half a standard deviation. Enough to rank a signal as worth checking first, nowhere near enough to classify a run from it. This analysis produces an ordering for human attention, not a detector.

Figure 5. Per-sensor pass and fail distributions for up to eight shortlist sensors with the largest effect sizes. Values are standardised within each sensor (z-score) so sensors on different scales can share an axis; this is a display transform only.

What to do

ActionOwnerNeeds firstReversible
Check the 33 shortlisted signals first on an excursion, leading with the ten that hold across both halves of the record Process engineering Nothing. Usable as a work instruction today Yes
Investigate why sensors 112 and 113 are recorded on a minority of runs, before any change to their measurement families Process engineering ID-to-measurement mapping for two families Yes
Review the 122 signals that have never varied, for sampling frequency or retirement Metrology, equipment engineering ID-to-measurement mapping; confirmation the constancy is not an acquisition fault No
Review low-coverage signals at family level. The 50 fall into 8 groups recorded on identical runs, so this is 8 decisions and not 50 Metrology, process engineering Confirmation that partial coverage is by design rather than by fault No
Change nothing for the remaining 385. They are measured, they vary, and nothing here connects them to outcome — — n/a

The last column is the reason the two reduction rows carry heavier prerequisites. A wrong entry on the shortlist costs an engineer an hour and corrects itself. A signal wrongly cut from monitoring stops producing the data that would reveal the error. Both reduction recommendations therefore rest only on structural facts about the record, never on a signal failing a significance test.

What this cannot tell you

  • A signal that differs on failing runs may be a consequence of the failure rather than a contributor to it. Nothing here establishes direction.
  • Absence from the shortlist is not evidence of irrelevance. With 104 failing runs, a real but modest effect can go undetected.
  • An unstable effect is ambiguous. The later half of the record contains few failures, so a signal may be flagged either because it was confounded with time or because there is too little late data to confirm it. This record cannot separate those two.
  • Every signal was assessed alone. A signal that matters only in combination with another appears nowhere in these results.
  • The signals are numbered, not named, and no cost data exists. Every recommendation above is a starting point for a process engineer, not an action.

Method note

Source data: UCI SECOM, 1567 runs over 2008-07-19 to 2008-10-17, 924530 readings. Per-sensor Welch's t (fail vs pass), Benjamini–Hochberg at FDR 0.1 (with 0.05 also reported); near-duplicates grouped at |r| ≥ 0.95; stability checked by splitting at the median run timestamp. Reduced-monitoring buckets are assigned on structural grounds only, never on a significance result. Full pipeline and SQL: repository.

Operational takeaway

None of the top statistically-ranked signals held up under a real-world temporal check. Acting on any single one today would risk chasing a false fix — real investigation hours spent on a cause that may not hold. What this delivers is a validated screening method, not a signal to act on yet.

HEADLINE: the honest result on real data is a null — no top-5 signal survives temporal replication.

SHAP global importance — candidate signals

Multivariate SHAP ranking on the real SECOM record (XGBoost). These are the signals worth checking — not yet conclusions.

Temporal replication — did the ranking hold?

Each top-5 signal re-checked on the pinned 70/30 split (early vs late), split-then-check. Verdicts transcribed from the Layer 1 write-up.

SignalSHAP rankVerdictWhy
sensor 601failsStrong gradient early (1.4%→16.2%), flat late; sensor's own values drift down over time — a time-confound.
sensor 342failsNon-monotonic within the early period itself (2.6→9.0→3.6→12.5%); minimal drift.
sensor 1043fails (strict)Monotonic early, but late dips then jumps; closest near-miss, no distribution drift.
sensor 224insufficient-dataLate period has only 2 quartiles with ≥5 fail events — direction not judgeable.
sensor 1315failsNon-monotonic within the early period (4.3→9.4→7.2→8.0%); no drift.

Sensor 60 (rank #1) — the clearest picture of why pooling failed

Fail rate by pooled value quartile, computed separately in each period. ⚠ marks quartiles with fewer than 5 fail events (rate unstable).

QuartileEarly nEarly failsEarly fail%Late nLate failsLate fail%
Q121031.43% ⚠180116.11%
Q225331.19% ⚠13775.11%
Q3270145.19%12075.83%
Q43585816.20%3213.13% ⚠

Early shows a strong gradient (Q1 1.4% → Q4 16.2%); late flattens to ~5–6% and its high quartile nearly empties out. The gradient is not reproduced.

Sensor 60 value over time — the confound, directly

The sensor's own values drift downward across the record, so "high sensor 60" largely means "early run" — and early runs fail more. That is why the pooled pattern was time, not cause.

Operational takeaway

When a real, unconfounded cause exists, this screening approach finds it — and a designed follow-up experiment isolates and quantifies it. On this synthetic process the method recovered the injected cause, and the DOE attributed 75.9% of the explained variation to a single factor. The same pipeline is ready to run the moment a real signal is confirmed.

This tab uses a SYNTHETIC, illustrative plasma-etch process with a known, injected ground truth. It is not real SECOM data and its factors are not SECOM sensors (see the “How These Connect” tab).

Blind recovery — did the method find the injected cause?

Candidate drivers ranked by Random-Forest importance on the 400-run production log. Ground-truth labels shown alongside; the analysis never saw them.

Top-ranked factor = RF power = the injected dominant cause → match. The injected electrode-wear drift is also recovered (run-order significant, p ≈ 1e-57). Because factors here are independent of run order, both are identified at once — the case SECOM could not provide.

Designed experiment — ANOVA

A rotatable central composite design (k=3: 8 factorial + 6 axial + 6 centre = 20 runs; α≈1.68), analysed with a full second-order model. Values match out/layer2/anova_table.csv exactly. Significance: *** p<0.001, ** p<0.01, * p<0.05, ns = not significant.

TermSum SqdfFp% of SSsig
x147553.81317.996.57e-0975.9%***
x29220.0161.651.39e-0514.7%***
x31078.017.210.0231.7%*
x1:x22272.3115.200.0033.6%**
x1:x312.810.090.7760.0%ns
x2:x30.610.000.9500.0%ns
I(x1 ** 2)460.013.080.1100.7%ns
I(x2 ** 2)462.113.090.1090.7%ns
I(x3 ** 2)127.410.850.3780.2%ns
Residual1495.4102.4%

RF power dominates (75.9% of SS), pressure is secondary (14.7%), and the RF×pressure interaction is real (3.6%). The quadratic curvature terms are not significant at this noise level — reported honestly, not hidden.

Operational takeaway

What's at stake is engineering time and yield risk. Chasing an unreplicated signal costs real investigation hours for a fix that might not hold; a validated method is ready to deploy the moment a real cause is confirmed. That trade-off — not the SHAP mechanics — is the takeaway.

What the two layers actually show

Layer 1 asked a real question of real data and got an honest null: after a temporal replication check, none of the top-5 signals held, because the failure rate itself drifts over the record and the top signal's values track time. The method did the responsible thing — it refused to promote a signal it could not stand behind.

Layer 2 put the same ranking method on a synthetic process where the true cause is known and is not confounded with time. There, the method recovered the injected cause and a designed experiment quantified it. That proves the Layer 1 null was a property of the data — its non-stationarity — not a failure of the method.

Guardrail — read this

Layer 2's factors — RF power, chamber pressure, gas flow — are a synthetic illustration. They are NOT a decoded version of any SECOM sensor. SECOM's sensor IDs are permanently anonymized: nothing in this app reveals which physical parameter sensor 60 (or 34, 104, 22, 131) represents. Layer 2 shows the method works; it does not resolve which real sensor matters.

What would close the gap

A process engineer mapping SECOM's anonymized sensor IDs to physical process parameters. Once a real variable is identified, Layer 2's method — blind ranking plus a replication check — is exactly what you would run on it to confirm, and quantify, a genuine root cause.