Aanbevolen procedures voor het gebruik van de Anomaly Detector-univariate-API

Belangrijk

Vanaf 20 september 2023 kunt u geen nieuwe Anomaly Detector-resources maken. De Anomaly Detector-service wordt op 1 oktober 2026 buiten gebruik gesteld.

De Anomaly Detector-API is een stateless anomaliedetectieservice. De nauwkeurigheid en prestaties van de resultaten kunnen worden beïnvloed door:

  • Hoe uw tijdreeksgegevens worden voorbereid.
  • De parameters van de Anomaly Detector-API die zijn gebruikt.
  • Het aantal gegevenspunten in uw API-aanvraag.

Gebruik dit artikel voor meer informatie over aanbevolen procedures voor het gebruik van de API om de beste resultaten voor uw gegevens op te halen.

Wanneer batch (volledige) of laatste (laatste) puntafwijkingsdetectie gebruiken

Met het eindpunt voor batchdetectie van de Anomaly Detector-API kunt u afwijkingen detecteren door de hele tijdreeksgegevens. In deze detectiemodus wordt één statistisch model gemaakt en toegepast op elk punt in de gegevensset. Als uw tijdreeks de onderstaande kenmerken heeft, raden we u aan batchdetectie te gebruiken om een voorbeeld van uw gegevens te bekijken in één API-aanroep.

  • Een seizoenstijdreeks, met af en toe afwijkingen.
  • Een platte trendtijdreeks, met af en toe pieken/dips.

We raden u niet aan batchgewijze anomaliedetectie te gebruiken voor realtime gegevensbewaking of om deze te gebruiken voor tijdreeksgegevens die niet over de bovenstaande kenmerken beschikken.

  • Batchdetectie maakt en past slechts één model toe. De detectie voor elk punt wordt uitgevoerd in de context van de hele reeks. Als de tijdreeksgegevens trends omhoog en omlaag gaan zonder seizoensgebondenheid, kunnen sommige punten van verandering (dips en pieken in de gegevens) door het model worden gemist. Op dezelfde manier worden sommige wijzigingen die later in de gegevensset minder belangrijk zijn, mogelijk niet meegeteld als significant genoeg om in het model te worden opgenomen.

  • Batchdetectie is langzamer dan het detecteren van de anomaliestatus van het laatste punt bij het uitvoeren van realtime gegevensbewaking, vanwege het aantal punten dat wordt geanalyseerd.

Voor realtime gegevensbewaking raden we u aan om alleen de anomaliestatus van uw meest recente gegevenspunt te detecteren. Door continu de nieuwste puntdetectie toe te passen, kan bewaking van streaminggegevens efficiënter en nauwkeuriger worden uitgevoerd.

In het onderstaande voorbeeld wordt beschreven welke invloed deze detectiemodi kunnen hebben op prestaties. In de eerste afbeelding ziet u het resultaat van het continu detecteren van het laatste punt van de anomaliestatus langs 28 eerder gezien gegevenspunten. De rode punten zijn afwijkingen.

An image showing anomaly detection using the latest point

Hieronder ziet u dezelfde gegevensset met behulp van batchgewijze anomaliedetectie. Het model dat voor de bewerking is gebouwd, heeft verschillende afwijkingen genegeerd, gemarkeerd door rechthoeken.

An image showing anomaly detection using the batch method

Gegevensvoorbereiding

De Anomaly Detector-API accepteert tijdreeksgegevens die zijn opgemaakt in een JSON-aanvraagobject. Een tijdreeks kan alle numerieke gegevens zijn die in de loop van de tijd in opeenvolgende volgorde zijn vastgelegd. U kunt vensters van uw tijdreeksgegevens verzenden naar het Eindpunt van de Anomaly Detector-API om de prestaties van de API te verbeteren. Het minimum aantal gegevenspunten dat u kunt verzenden is 12 en het maximum is 8640 punten. Granulariteit wordt gedefinieerd als de snelheid waarmee uw gegevens worden bemonsterd.

Gegevenspunten die naar de Anomaly Detector-API worden verzonden, moeten een geldig UTC-tijdstempel (Coordinated Universal Time) en een numerieke waarde hebben.

{
    "granularity": "daily",
    "series": [
      {
        "timestamp": "2018-03-01T00:00:00Z",
        "value": 32858923
      },
      {
        "timestamp": "2018-03-02T00:00:00Z",
        "value": 29615278
      },
    ]
}

Als uw gegevens met een niet-standaard tijdsinterval worden bemonsterd, kunt u deze opgeven door het customInterval kenmerk toe te voegen aan uw aanvraag. Als uw reeks bijvoorbeeld om de 5 minuten wordt genomen, kunt u het volgende toevoegen aan uw JSON-aanvraag:

{
    "granularity" : "minutely", 
    "customInterval" : 5
}

Ontbrekende gegevenspunten

Ontbrekende gegevenspunten komen vaak voor in gelijkmatig verdeelde tijdreeksgegevenssets, met name gegevenssets met een fijne granulariteit (een klein steekproefinterval). Voorbeeld van gegevens die om de paar minuten zijn genomen). Als u minder dan 10% van het verwachte aantal punten in uw gegevens mist, heeft dit geen negatieve invloed op uw detectieresultaten. Overweeg hiaten in uw gegevens op te vullen op basis van de kenmerken ervan, zoals het vervangen van gegevenspunten uit een eerdere periode, lineaire interpolatie of een zwevend gemiddelde.

Gedistribueerde gegevens aggregeren

De Anomaly Detector-API werkt het beste voor een gelijkmatig verdeelde tijdreeks. Als uw gegevens willekeurig worden gedistribueerd, moet u deze aggregeren op basis van een tijdseenheid, zoals per minuut, uur of dagelijks.

Anomaliedetectie op gegevens met seizoenspatronen

Als u weet dat uw tijdreeksgegevens een seizoensgebonden patroon hebben (een patroon dat regelmatig plaatsvindt), kunt u de nauwkeurigheid en de REACTIEtijd van de API verbeteren.

Als u een period JSON-aanvraag opgeeft, kan de latentie van anomaliedetectie met maximaal 50% worden verminderd. Het period is een geheel getal dat aangeeft hoeveel gegevenspunten de tijdreeks nodig heeft om een patroon te herhalen. Een tijdreeks met één gegevenspunt per dag zou bijvoorbeeld een period as 7hebben en een tijdreeks met één punt per uur (met hetzelfde wekelijkse patroon) zou een period van 7*24hebben. Als u niet zeker weet wat de patronen van uw gegevens zijn, hoeft u deze parameter niet op te geven.

Geef voor de beste resultaten vier periodgegevenspunten op, plus een extra punt. Gegevens per uur met een wekelijks patroon zoals hierboven beschreven, moeten bijvoorbeeld 673 gegevenspunten bevatten in de aanvraagbody (7 * 24 * 4 + 1).

Samplinggegevens voor realtime bewaking

Als uw streaminggegevens met een kort interval worden genomen (bijvoorbeeld seconden of minuten), kan het verzenden van het aanbevolen aantal gegevenspunten het maximumaantal toegestane gegevenspunten van de Anomaly Detector-API overschrijden (8640 gegevenspunten). Als uw gegevens een stabiel seizoensgebonden patroon bevatten, kunt u overwegen een voorbeeld van uw tijdreeksgegevens te verzenden met een groter tijdsinterval, zoals uren. Het nemen van steekproeven van uw gegevens op deze manier kan ook de reactietijd van de API aanzienlijk verbeteren.

Volgende stappen