NLL 高斯评分器

高斯负对数似然评分器。

异常分数是根据随机预测估计的高斯分布下实际时间序列值的负对数似然。

class darts.ad.scorers.nll_gaussian_scorer.GaussianNLLScorer(window=1)[source]

基类: NLLScorer

NLL 高斯评分器

参数

window (int) – 整数值,表示评分器用于将时间序列转换为异常分数所使用的窗口大小 W。评分器将给定的时间序列切分为大小为 W 的子序列,并返回一个值,表示这些大小为 W 的值子集的异常程度。后处理步骤会将此异常分数转换为逐点异常分数(参见 window_transform 的定义)。窗口大小应与要查找的异常的预期持续时间相称。

属性

is_probabilistic

评分器是否期望将概率预测作为第一个输入。

is_trainable

评分器是否可训练。

is_univariate

评分器是否是单变量评分器。

方法

eval_metric_from_prediction(anomalies, ...)

计算 seriespred_series 之间的异常分数,并返回与阈值无关的度量分数。

score_from_prediction(series, pred_series)

计算两个(序列化的)时间序列上的异常分数。

show_anomalies_from_prediction(series, ...)

绘制评分器的结果。

eval_metric_from_prediction(anomalies, series, pred_series, metric='AUC_ROC')

计算 seriespred_series 之间的异常分数,并返回与阈值无关的度量分数。

参数
  • anomalies (Union[TimeSeries, Sequence[TimeSeries]]) – (序列化的) 真实二值异常时间序列(1 表示异常,0 表示非异常)。

  • series (Union[TimeSeries, Sequence[TimeSeries]]) – (序列化的) 实际时间序列。

  • pred_series (Union[TimeSeries, Sequence[TimeSeries]]) – (序列化的) 预测时间序列。

  • metric (Literal[‘AUC_ROC’, ‘AUC_PR’]) – 要使用的评估指标函数的名称。必须是“AUC_ROC”(接收者操作特征曲线下面积)和“AUC_PR”(分数计算的平均精度)之一。默认值:“AUC_ROC”。

返回类型

Union[float, Sequence[float], Sequence[Sequence[float]]]

返回值

  • float – 单个单变量 series 的单个指标值。

  • Sequence[float] – 一系列指标值,用于

    • 单个多变量 series

    • 一系列单变量 series

  • Sequence[Sequence[float]] – 一系列序列化的指标值,用于一系列多变量 series。外部序列对应于各个时间序列,内部序列对应于时间序列的各个分量/列。

property is_probabilistic: bool

评分器是否期望将概率预测作为第一个输入。

返回类型

bool

property is_trainable: bool

评分器是否可训练。

返回类型

bool

property is_univariate: bool

评分器是否是单变量评分器。

返回类型

bool

score_from_prediction(series, pred_series)

计算两个(序列化的)时间序列上的异常分数。

如果给出序列对,它们必须包含相同数量的时间序列。评分器将独立地对每对时间序列进行评分,并返回每对的异常分数。

参数
返回值

(序列化的) 异常分数时间序列

返回类型

Union[TimeSeries, Sequence[TimeSeries]]

show_anomalies_from_prediction(series, pred_series, scorer_name=None, anomalies=None, title=None, metric=None, component_wise=False)

绘制评分器的结果。

计算两个时间序列上的异常分数,并绘制结果。

图表将包含以下内容:
  • 实际时间序列和预测时间序列。

  • 评分器的异常分数。

  • 如果提供,显示实际异常。

可以进行以下操作:
  • 使用参数 title 为图表添加标题

  • 使用 scorer_name 为评分器指定个性化名称

  • 如果提供了实际异常,显示异常分数的度量结果 (AUC_ROC 或 AUC_PR)。

参数
  • series (TimeSeries) – 用于可视化异常的实际时间序列。

  • pred_series (TimeSeries) – series 的预测时间序列。

  • anomalies (Optional[TimeSeries, None]) – 异常的真实值(1 表示异常,0 表示非异常)

  • scorer_name (Optional[str, None]) – 评分器的名称。

  • title (Optional[str, None]) – 图表的标题

  • metric (Optional[Literal[‘AUC_ROC’, ‘AUC_PR’], None]) – 可选参数,要使用的评估指标函数的名称。必须是“AUC_ROC”(接收者操作特征曲线下面积)和“AUC_PR”(分数计算的平均精度)之一。默认值:“AUC_ROC”。

  • component_wise (bool) – 如果为 True,在进行多变量异常检测时将分别绘制每个分量。