异常模型¶
异常模型使得使用 Darts 中的任何预测或滤波模型来检测时间序列中的异常成为可能。
基本思想是将拟合模型(预测值或滤波后的序列)产生的预测结果与实际观测值进行比较,并生成一个异常分数,描述观测值与预测值“不同”的程度。
异常模型将一个模型和一个或多个评分器对象作为参数。关键方法是 score(),它以一个(或多个)时间序列作为输入,并为每个提供的时间序列生成一个或多个异常分数时间序列。
ForecastingAnomalyModel
与 Darts 预测模型配合使用,而 FilteringAnomalyModel
与 Darts 滤波模型配合使用。异常模型也可以通过调用 fit()
进行拟合,这会训练评分器(如果某些评分器可训练),并且可能还会训练模型。
函数 eval_metric()
与 score()
相同,但输出一个与阈值无关的指标分数(“AUC-ROC” 或 “AUC-PR”),该分数衡量预测的异常分数时间序列与指示实际异常存在的已知二元真实值时间序列之间的关系。最后,函数 show_anomalies()
也可用于可视化异常模型的预测结果(样本内预测和异常分数)。