阈值检测器¶
基于用户给定阈值检测异常的检测器。该检测器将时间序列值与用户给定的阈值进行比较,并在值超出阈值时将时间点识别为异常。
- class darts.ad.detectors.threshold_detector.ThresholdDetector(low_threshold=None, high_threshold=None)[源代码]¶
基类:
Detector
,_BoundedDetectorMixin
阈值检测器
标志值,分别低于 low_threshold 或高于 high_threshold。
如果为 low_threshold 或 high_threshold 提供了一个单一值,这个相同的值将用于序列的所有组成部分。
如果为参数 low_threshold 和/或 high_threshold 提供了值序列,它们的长度必须相同,与传递给 detect() 的序列的维度匹配,或者长度为 1。在后一种情况下,这个单一值将用于序列的所有组成部分。
如果 low_threshold 或 high_threshold 为 None,则不会使用相应的边界。但是,这两个值中至少有一个必须设置。
- 参数
low_threshold (
Union
[int
,float
,Sequence
[float
],None
]) – (序列的)下界。如果是一个序列,必须与应用此检测器的序列的维度相匹配。high_threshold (
Union
[int
,float
,Sequence
[float
],None
]) – (序列的)上界。如果是一个序列,必须与应用此检测器的序列的维度相匹配。
属性
高阈值
低阈值
方法
detect
(series[, name])检测给定时间序列中的异常。
eval_metric
(anomalies, pred_scores[, ...])根据真实异常对结果进行评分。
- detect(series, name='series')¶
检测给定时间序列中的异常。
- 参数
series (
Union
[TimeSeries
,Sequence
[TimeSeries
]]) – 用于检测异常的(序列)系列。name (
str
) – series 的名称。
- 返回
二元预测(如果被视为异常则为1,否则为0)
- 返回类型
Union[TimeSeries, Sequence[TimeSeries]]
- eval_metric(anomalies, pred_scores, window=1, metric='recall')¶
根据真实异常对结果进行评分。
- 参数
anomalies (
Union
[TimeSeries
,Sequence
[TimeSeries
]]) – 地面真值二进制异常序列(1 表示异常,0 表示正常)。pred_scores (
Union
[TimeSeries
,Sequence
[TimeSeries
]]) – 估计的异常分数序列(序列),指示每个大小为 w 的窗口的异常程度。window (
int
) – 整数值,表示 pred_scores 中每个点代表的过去样本数量。metric (
Literal
[‘recall’, ‘precision’, ‘f1’, ‘accuracy’]) – 要使用的度量函数名称。必须是以下之一:“recall”、“precision”、“f1”和“accuracy”。默认值:“recall”。
- 返回
每个异常分数的指标结果
- 返回类型
Union[float, Sequence[float], Sequence[Sequence[float]]]
- property high_threshold¶
- property low_threshold¶