StreamAD Evaluation#

Point aware metrics#

class streamad.evaluate.PointAwareMetircs(anomaly_threshold=0.8, beta=1.0)[source]#

Bases: streamad.base.metrics.BaseMetrics

__init__(anomaly_threshold=0.8, beta=1.0)[source]#

Classic metrics [Wikipedia contributors, 2022]

Parameters
  • anomaly_threshold (float, optional) – A threshold to determine the anomalies, it can covert the anomaly scores to binary (0/1) indicators. Defaults to 0.8.

  • beta (float, optional) – F-beta score, like a F1-score. Defaults to 1.0.

Time-series aware metrics#

class streamad.evaluate.SeriesAwareMetircs(anomaly_threshold=0.8, beta=1.0, bias_p='flat', bias_r='flat')[source]#

Bases: streamad.base.metrics.BaseMetrics

__init__(anomaly_threshold=0.8, beta=1.0, bias_p='flat', bias_r='flat')[source]#

Time series aware metrics [Tatbul et al., 2018]

Parameters
  • anomaly_threshold (float, optional) – A threshold to determine the anomalies, it can covert the anomaly scores to binary (0/1) indicators. Defaults to 0.8.

  • beta (float, optional) – F-beta score, like a F1-score. Defaults to 1.0.

  • bias_p (str, optional) – Bias for precision. Optionals are “flat”, “front”, “middle”, “back”. Defaults to “flat”.

  • bias_r (str, optional) – Bias for recall. Optionals are “flat”, “front”, “middle”, “back”. Defaults to “flat”.

Numenta aware metrics#

class streamad.evaluate.NumentaAwareMetircs(anomaly_threshold=0.8, beta=1.0)[source]#

Bases: streamad.base.metrics.BaseMetrics

__init__(anomaly_threshold=0.8, beta=1.0)[source]#

Numenta metrics calculation methods. [Ahmad et al., 2017].

Parameters
  • anomaly_threshold (float, optional) – A threshold to determine the anomalies, it can covert the anomaly scores to binary (0/1) indicators. Defaults to 0.8.

  • beta (float, optional) – F-beta score, like a F1-score. Defaults to 1.0.