【问题标题】:When to use “/entire” vs “/last” API in Azure Anomaly Detector?何时在 Azure Anomaly Detector 中使用“/entire”与“/last” API?
【发布时间】:2019-04-19 05:30:34
【问题描述】:

在阅读 Anomaly Detector API 的文档时,我发现有两个 API(或“模式”):/last 和 /entire。医生说他们是流式与批处理模式。但是,我认为消息不是很清楚,并且这两个 API/模式似乎具有非常相似的功能。 我有一些来自工厂车间传感器的物联网数据;我可以预处理数据以确保它符合 API 要求;我可以在我的应用程序中使用 C# 进行编码。 谁能帮助详细说明如何为我的场景选择更好的 API?

我已经在 Azure 笔记本中尝试了这两种 API

【问题讨论】:

    标签: anomaly-detection azure-anomaly-detection azure-anomaly-detector


    【解决方案1】:

    感谢您使用异常检测器。

    Anomaly Detector API 的批量检测端点可让您通过整个时间序列数据检测异常。在这种检测模式下,会创建一个统计模型并将其应用于数据集中的每个点。如果您的时间序列具有以下特征,我们建议您使用批量检测在一次 API 调用中预览您的数据。

    1. 季节性时间序列,偶有异常。
    2. 平坦的趋势时间序列,偶尔出现峰值/下降。

    我们不建议将批量异常检测用于实时数据监控,或者将其用于不具备上述特征的时间序列数据。

    1. 批量检测只创建和应用一个模型,每个点的检测都是在整个系列的上下文中完成的。

      如果时间序列数据在没有季节性的情况下呈上升和下降趋势,则模型可能会遗漏一些变化点(数据中的下降和尖峰)。类似地,一些在数据集中不如后面的变化点显着的变化点可能不会被计算为足够重要而不能被纳入模型中。

    2. 在做实时数据监控时,批量检测比检测最新点的异常状态慢,因为要分析的点数较多。

    对于实时数据监控,我们建议仅检测最新数据点的异常状态。通过不断应用最新的点检测,可以更高效、更准确地进行流式数据监控。

    下面的示例描述了这些检测模式可能对性能产生的影响。第一张图是沿之前看到的28个数据点连续检测异常状态最新点的结果。红点是异常。

    An image showing anomaly detection using the latest point

    以下是使用批量异常检测的相同数据集。为操作构建的模型忽略了几个异常,用矩形标记。

    An image showing anomaly detection using the batch method

    再次感谢,我们会将信息添加到 AD 服务的公共文档中。

    【讨论】:

    • 它回答了我的问题。考虑到性能(延迟)问题,我似乎会选择 /last 看看它在准确性方面的表现。感谢您的全面回复。
    猜你喜欢
    • 1970-01-01
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-19
    • 2017-03-04
    • 2012-12-15
    • 2022-01-15
    • 1970-01-01
    相关资源
    最近更新 更多