我正试图了解有关https://netman.aiops.org/wp-content/uploads/2018/05/PID5338621.pdf的文章,该文章关于用于大规模异常检测的KPI的鲁棒快速聚类。
使用ROCKA算法进行聚类。
步骤:
1。)对原始KPI数据进行预处理,以消除幅度差异并标准化数据。
2。)在基线提取步骤中,我们减少了噪声,去除了极值(可能是异常),并提取了KPI的基础形状(称为基线)。这是通过在较小的滑动窗口上应用移动平均值来完成的。
3。)然后在采样的KPI的基线上进行聚类,以抵抗相移和噪声。
4。)最后,我们计算每个聚类的质心,然后通过将未标记的KPI的距离分配给这些质心。
我了解ROCKA机制。
现在,我正在尝试了解用于“异常检测”的DONUT算法。
它是如何工作的:
DONUT在KPI上应用滑动窗口以获取短序列x,并尝试识别遵循的正常模式x。然后,通过重建的正常模式与x之间的差异来计算指标,以显示异常的严重程度。实际上,应该为每个KPI选择一个阈值。指标值大于阈值的数据点被视为异常。
现在我的问题是:
IT似乎DONUT不足以抵抗与时间信息相关的异常。这意味着它可以在一组滑动窗口上工作,并且忽略窗口之间的关系。因此,窗口在这里成为非常关键的参数。因此,它可能会产生很高的误报率。我在这里误解什么?
请帮助我,让我理解DONUT将如何捕获滑动窗口之间的关系。