HTM compared with standard detectors on grid emergencies

Texas (ERCOT), California (CAISO), Tennessee Valley (TVA) · hourly EIA-930 data, 2020-2026 · 5 target emergencies

Summary

Within 3 alerts per year per region, HTM with grouped consensus catches 4.4 of 5 grid emergencies on average over 5 random seeds (range 4-5). The best of 13 standard detectors, given the same inputs, alert rule and scoring, catches 3.0 (fixed 2019 threshold); alerts fired at random times at that rate would catch about 0.4. At the published threshold (0.995) HTM catches 3.4 of 5 on average (range 2-4) with 1.7 alerts per year per region.

The claim is scoped to what was tested: HTM combined with the grouped consensus rule, against each baseline combined with the same rule. HTM's per-signal output alone, without the grouping, raises far too many alerts (see the checks below). Five events across three regions is a case study, not a detection rate.

Emergencies caught against alerts per year for HTM and 13 other detectors

What was held fixed

The detectors

One or more per family a reviewer would expect, all online, causal and unsupervised, as HTM is.

DetectorFamilySetupWhy it is hereReference
HTM (htm-monitor)Sequence memoryOne HTM model per signal (encoder, Temporal Memory, anomaly likelihood), learning online from the first hourThe method under testAhmad et al. 2017, Neurocomputing 262
Operator ruleSimple ruleAlert when demand exceeds the day-ahead forecast by more than the trailing year's q-quantile of percent error, for 3 hoursWhat a grid operator could set up without any model-
Fixed 2019 thresholdSimple ruleEach signal's |value| ranked against its 2019 values; frozen after 2019Tests whether the inputs alone carry the result-
Robust z-score chartStatistical process control|x - median| / MAD over the previous 720 hThe classic control chart, on a robust scaleISO 7870-2
CUSUM chartStatistical process controlTwo-sided tabular CUSUM on the robust z, k = 0.5, h = 5Built for slow drifts such as multi-day build-upsPage 1954; Montgomery, Introduction to SQC
EWMA chartStatistical process controlEWMA of the robust z, lambda = 0.2Smoothed control chart, sensitive to small sustained shiftsRoberts 1959
NAB windowedGaussianAnomaly benchmark baseline|x - mean| / sd over the previous 6400 pointsThe baseline in Numenta's own anomaly benchmarkLavin & Ahmad 2015 (NAB)
Matrix Profile discordTime-series data miningDistance from the latest 24 h to its nearest earlier 24 h (left matrix profile, STUMPY)Parameter-light discord detection, strong in recent benchmarksYeh et al. 2016, ICDM
LSTM forecaster, trained on 2019Deep sequence learning2-layer LSTM (64 units) predicts the next hour from 24 h; score = absolute error; trained on 2019, then frozenThe standard deep sequence-learning detector (LSTM-AD)Malhotra et al. 2015, ESANN
LSTM forecaster, retrained quarterlyDeep sequence learningSame model, fine-tuned every 2190 h on the trailing year seen so farAnswers 'a frozen model will drift'; learns continuously, as HTM does-
Half-Space TreesStreaming MLriver defaults (10 trees, height 8, window 250), shingle of 4Standard streaming anomaly forestTan, Ting & Liu 2011, IJCAI
Robust Random Cut ForestStreaming ML40 trees, tree size 256, shingle of 4; collusive displacementThe forest used in AWS streaming analytics (Kinesis RANDOM_CUT_FOREST)Guha et al. 2016, ICML
Half-Space Trees, all signals jointlyStreaming ML, multivariateOne model over all of a region's signals (4-hour shingles), single-group ruleTests whether HTM's grouping mattersTan, Ting & Liu 2011
RRCF, all signals jointlyStreaming ML, multivariateOne model over all of a region's signals (4-hour shingles), single-group ruleTests whether HTM's grouping mattersGuha et al. 2016

Results

DetectorSeedsCaught at 0.995Alerts / yr / regionBest caught within 3 alerts / yr
HTM (htm-monitor)53.4 (2-4)1.74.4 (4-5)
Fixed 2019 threshold13.01.13.0
LSTM forecaster, trained on 201951.00.62.8 (2-3)
Half-Space Trees50.4 (0-1)0.32.4 (2-3)
Half-Space Trees, all signals jointly54.0 (2-5)8.22.0 (1-4)
NAB windowedGaussian12.00.82.0
LSTM forecaster, retrained quarterly51.2 (1-2)0.72.0
Robust z-score chart11.00.92.0
EWMA chart11.00.92.0
Operator rule11.09.61.0
CUSUM chart11.00.31.0
RRCF, all signals jointly52.4 (1-4)5.80.6 (0-1)
Matrix Profile discord10.00.00.0
Robust Random Cut Forest10.00.90.0
Alerts at random times--30.4

Means over seeds, with the range in brackets. Some methods catch more at the published threshold only by alerting far more often (the joint Half-Space Trees catches about 4 at over 8 alerts per year per region); matching the alert rate, as the last column does, is the fair comparison.

Per event

HTM, 5 seedsUri (TX)Aug 2020 (CA)Sep 2020 (CA)Sep 2022 (CA)Elliott (TVA)
Seeds that caught it5 of 53 of 53 of 51 of 55 of 5
Lead / lag when caught99-103 h ahead22 h ahead to 3.4 h after7.9-22 h ahead9.7 h after6.8-7.8 h after

Uri and Elliott are caught by every seed. The California events sit near the threshold: each is caught by some seeds and missed by others. August 2020 was mainly a supply-side shortfall after solar drop-off, which EIA-930 does not show directly.

Published run (seed 42)Uri (TX)Aug 2020 (CA)Sep 2020 (CA)Sep 2022 (CA)Elliott (TVA)
HTM (htm-monitor)Predicted 103 h aheadMissedPredicted 21 h aheadDetected 9.7 h afterDetected 7.8 h after
Fixed 2019 thresholdPredicted 6.3 h aheadDetected 2.4 h afterMissedMissedDetected 15 h after
LSTM forecaster, trained on 2019Detected 3.7 h afterMissedMissedMissedMissed
Half-Space TreesMissedMissedMissedMissedMissed
Half-Space Trees, all signals jointlyPredicted 83 h aheadMissedPredicted 142 h aheadMissedMissed
NAB windowedGaussianDetected 3.7 h afterMissedMissedMissedDetected 21 h after
LSTM forecaster, retrained quarterlyPredicted 5.3 h aheadMissedMissedMissedMissed
Robust z-score chartPredicted 85 h aheadMissedMissedMissedMissed
EWMA chartPredicted 84 h aheadMissedMissedMissedMissed
Operator rulePredicted 140 h aheadMissedMissedMissedMissed
CUSUM chartPredicted 85 h aheadMissedMissedMissedMissed
RRCF, all signals jointlyDetected 6.7 h afterPredicted 27 h aheadMissedMissedMissed
Matrix Profile discordMissedMissedMissedMissedMissed
Robust Random Cut ForestMissedMissedMissedMissedMissed

Robustness checks

Each check re-scores existing outputs; the number is the mean best catch within 3 alerts per year per region.

QuestionHTMBest baselineReading
Is it a lucky seed?4.4 (4-5)3.0HTM's worst seed beats every baseline's mean
Is it the grouped rule? (all signals in one group, any one fires)0.03.0 (NAB windowedGaussian)Without groups HTM floods (65.7 alerts / yr at 0.995); the result is HTM and the rule together
Is it HTM's anomaly-likelihood step? (given to every baseline)4.43.0 (LSTM forecaster, trained on 2019)No baseline rises above the result without it
Would a retrained LSTM do better?4.42.0Retraining quarterly scores 2.0, against 2.8 frozen
Do the scoring windows decide it? 72 h / 24 h3.43.0Uri's ~100 h warning counts as too early here
336 h / 72 h4.43.0HTM leads at every window tried

Questions about the comparison

Why these detectors?

One or more per family a reviewer expects: simple operator rules, statistical process control, Numenta's own benchmark baseline, streaming machine learning, time-series data mining, deep sequence learning, and joint models over all signals. All meet the same constraints as HTM: online, causal, unsupervised, no labels.

Were the baselines tuned?

No; they use library or paper defaults, as HTM uses its shared defaults. Every method is swept across thresholds, so none is judged at one setting. A per-method hyperparameter grid is listed under next steps.

There are many ways to build an LSTM.

True of every baseline: no comparison shows HTM beats every possible implementation. The LSTM here is the standard LSTM-AD design; a version retrained every quarter, to answer 'a frozen model drifts', did not do better. The claim is scoped to these implementations.

Was the alert rule designed for HTM?

Yes, and it matters: HTM needs the grouped rule, and the baselines given the same rule still trail it. Under the simplest rule (no groups) every method does poorly and HTM floods. The finding is that HTM's frequent per-signal alerts become precise once two signal groups must agree.

Is it luck?

Every random method ran with 5 seeds; HTM's worst seed still beats every baseline's mean. Alerts at random times at 3 per year would catch about 0.4 of 5.

Five events is tiny.

Agreed. It is a case study across three regions, with every alert published; the seed spread and the chance baseline are the honest error bars.

Why not Transformers or TranAD?

They need a training split and substantial tuning; the LSTM represents deep forecasting detectors here. Adding one is a reasonable next step.

Do the explanatory labels flatter HTM?

No. Alerts per year counts every alert, explained or not.

Limits and next steps