加载中

异常分数说明

每个异常都有一个分配的异常分数。该分数表示数据点的异常程度,从而可以确定其相对于其他异常的严重性。本页面简要介绍了计算异常分数时考虑的关键因素、分数的计算方式以及重归一化的工作原理。

异常检测作业将时间序列数据拆分为时间桶。桶内的数据使用函数进行聚合。异常检测在桶值上进行。有三个因素会影响记录的初始异常分数:

  • 单桶影响,
  • 多桶影响,
  • 异常特征影响。

首先计算桶中实际值的概率。该概率取决于过去观察到多少类似的值。它通常与实际值和典型值之间的差异有关。典型值是桶的概率分布的中值。此概率导致了单桶影响。它通常主导了短时尖峰或骤降的初始异常分数。

当前桶及其之前 11 个桶中的值的概率有助于产生多桶影响。实际值与典型值之间的累积差异导致了当前桶的初始异常分数受到多桶影响。即使当前桶的值可能在 95% 的置信区间内,较高的多桶影响也表明在当前桶之前的间隔内存在异常行为。

不同的符号标记了具有较高多桶影响的异常,以突出这种区别。在 Kibana 中,这些异常用十字符号“+”表示,而不是圆圈。

异常特征的影响考虑了异常的不同特征,例如其长度和大小。考虑的是异常的总持续时间,而不是像多桶影响计算中那样的固定间隔。长度可能只有一个桶,也可能是三十个(或更多)桶。通过将异常的长度和大小与历史平均值进行比较,可以适应您的领域和数据模式。算法的默认行为是对较长的异常赋予比短时尖峰更高的分数。在实践中,短时异常往往是数据中的错误,而长时异常则是您可能需要采取行动的情况。

将多桶影响和异常特征影响相结合,可以更可靠地检测各种领域中的异常行为。

异常分数的范围在 0 到 100 之间。接近 100 的值表示作业迄今为止看到的最大异常。因此,当检测到比之前任何异常都大的异常时,需要降低先前异常的分数。

当新数据进入时,异常检测算法调整过去记录的异常分数的过程称为 重归一化 (renormalization)renormalization_window_days 配置参数指定了此调整的时间间隔。Kibana 中的 单指标查看器 (Single Metric Viewer) 会突出显示重归一化的变化。

Example of a record score reduction in Kibana

还有两个因素可能导致初始分数降低:高方差间隔和不完整桶。

如果当前桶属于具有高数据变异性的季节性模式的一部分,则异常检测的可靠性会降低。例如,您可能在每天午夜运行服务器维护作业。这些作业可能会导致请求处理延迟出现高变异性。如果当前桶收到的观测值数量与历史预期相似,则作业也会更可靠。

现实世界中的异常通常会显示出多个因素的影响。单指标查看器中的 异常解释 (Anomaly explanation) 部分可以帮助您在上下文中解读异常。

Detailed view of the Single Metric Viewer in Kibana

您也可以在 获取记录 APIanomaly_score_explanation 字段中找到此信息。

© . This website operates independently and is not affiliated with or endorsed by Elasticsearch B.V. All brand names, logos, and trademarks are the property of their respective owners.