Welford Change Detection
Description
Performs change detection on a single dimension of the incoming data stream. This implementation tracks the mean and the standard deviation using Welford's algorithm, which is well suited for data streams. A change is detected if the cumulative deviation from the mean exceeds a certain threshold.
Required input
The welford change dectection processor requires a data stream that has at least one field containing a numerical value.
Configuration
Value to observe
Specify the dimension of the data stream (e.g. the temperature) on which to perform change detection.
Parameter k
k
controls the sensitivity of the change detector. Its unit are standard deviations. For an observation x_n
, the
Cusum value is S_n = max(0, S_{n-1} - z-score(x_n) - k)
. Thus, the cusum-score S
icnreases
if S_{n-1} - z-score(x_n) > k
.
Parameter h
The alarm theshold in standard deviations. An alarm occurs if S_n > h
Output
This processor outputs the original data stream plus
cumSumLow
: The cumulative sum value for negative changescumSumHigh
: The cumulative sum value for positive changeschangeDetectedLow
: Boolean indicating if a negative change was detectedchangeDetectedHigh
: Boolean indicating if a positive change was detected