Bewährte Methoden für die Verwendung der multivariaten Anomalieerkennungs-API
Wichtig
Ab dem 20. September 2023 können Sie keine neuen Ressourcen für die Anomalieerkennung mehr erstellen. Der Anomalieerkennung-Dienst wird am 1. Oktober 2026 eingestellt.
Dieser Artikel enthält Hinweise zu den empfohlenen Methoden bei der Verwendung der APIs für die multivariate Anomalieerkennung (Multivariate Anomaly Detector, MVAD). In diesem Tutorial gehen Sie wie folgt vor:
- API-Nutzung: Erfahren Sie, wie Sie die multivariate Anomalieerkennung ohne Fehler verwenden.
- Datentechnik: Erfahren Sie, wie Sie Ihre Daten am besten aufbereiten, um mit der multivariaten Anomalieerkennung eine höhere Genauigkeit zu erzielen.
- Häufige Probleme: Erfahren Sie, wie Sie häufige Probleme vermeiden, die bei Kunden auftreten.
- Häufig gestellte Fragen: Erhalten Sie Antworten auf häufig gestellte Fragen.
API-Verwendung
Befolgen Sie die Anweisungen in diesem Abschnitt, um Fehler bei der Verwendung der multivariaten Anomalieerkennung zu vermeiden. Wenn Sie weiterhin Fehler erhalten, finden Sie in der vollständigen Liste der Fehlercodes Erläuterungen und Maßnahmen, die Sie ergreifen können.
Eingabeparameter
Erforderliche Parameter
Diese drei Parameter sind für Trainings- und Rückschluss-API-Anforderungen erforderlich:
source
: Der Link zu Ihrer ZIP-Datei in Azure Blob Storage mit Shared Access Signatures (SAS)startTime
: Die Startzeit von Daten, die für das Training oder Rückschlüsse verwendet werden. Wenn er vor dem tatsächlichen frühesten Zeitstempel in den Daten liegt, wird der tatsächliche früheste Zeitstempel als Startpunkt verwendet.endTime
: Die Endzeit von Daten, die für das Training oder Rückschlüsse verwendet werden und später oder gleich seinstartTime
müssen. WennendTime
nach dem tatsächlichen frühesten Zeitstempel in den Daten liegt, wird der tatsächliche späteste Zeitstempel als Endpunkt verwendet. WennendTime
gleichstartTime
ist, bedeutet dies einen Rückschluss auf einen einzelnen Datenpunkt, der häufig in Streamingszenarios verwendet wird.
Optionale Parameter für die Trainings-API
Andere Parameter für die Trainings-API sind optional:
slidingWindow
: Wie viele Datenpunkte verwendet werden, um Anomalien zu bestimmen. Eine ganze Zahl zwischen 28 und 2.880. Der Standardwert ist 300. WennslidingWindow
für das Modelltrainingk
ist, sollte während des Rückschlusses über die Quelldatei auf mindestensk
Punkte zugegriffen werden können, um gültige Ergebnisse zu erhalten.MVAD nimmt ein Segment von Datenpunkten, um zu entscheiden, ob der nächste Datenpunkt eine Anomalie darstellt. Die Länge des Segments ist
slidingWindow
. Beachten Sie bei der Auswahl einesslidingWindow
-Werts zwei Punkte:- Die Eigenschaften Ihrer Daten: ob sie periodisch sind und welche Samplingrate sie aufweisen Wenn Ihre Daten periodisch sind, können Sie die Länge von 1 bis 3 Zyklen für
slidingWindow
festlegen. Wenn Ihre Daten eine hohe Häufigkeit (kleine Granularität) aufweisen, z. B. minuten- oder sekundenweise auftreten, können Sie einen im Verhältnis höheren Wert fürslidingWindow
festlegen. - Der Kompromiss zwischen Trainings- und Rückschlusszeit und die potenziellen Auswirkungen auf die Leistung. Ein größerer
slidingWindow
-Wert kann zu einer längeren Trainings-/Rückschlusszeit führen. Es gibt keine Garantie, dass höhereslidingWindow
-Werte zu einer höheren Genauigkeit führen. Ein kleinererslidingWindow
-Wert kann dazu führen, dass das Modell nur schwer zu einer optimalen Lösung konvergiert. Beispielsweise ist es schwierig, Anomalien zu erkennen, wennslidingWindow
nur zwei Punkte aufweist.
- Die Eigenschaften Ihrer Daten: ob sie periodisch sind und welche Samplingrate sie aufweisen Wenn Ihre Daten periodisch sind, können Sie die Länge von 1 bis 3 Zyklen für
alignMode
: Ausrichten mehrerer Variablen (Zeitreihen) an Zeitstempeln. Es gibt zwei Optionen für diesen Parameter,Inner
undOuter
. Der Standardwert lautetOuter
.Dieser Parameter ist entscheidend, wenn zwischen die Zeitstempelsequenzen der Variablen voneinander abweichen. Das Modell muss die Variablen vor der weiteren Verarbeitung an derselben Zeitstempelsequenz ausrichten.
Inner
bedeutet, dass das Modell Erkennungsergebnisse nur für Zeitstempel berichtet, für die jede Variable einen Wert aufweist, d. h. die Schnittmenge aller Variablen.Outer
bedeutet, dass das Modell Erkennungsergebnisse für Zeitstempel berichtet, für die beliebige Variablen einen Wert aufweisen, d. h. die Gesamtheit aller Variablen.Dies ist ein Beispiel, das die Auswirkungen verschiedener
alignModel
-Werte darstellt.Variable-1
timestamp value 2020-11-01 1 2020-11-02 2 2020-11-04 4 5\.11.2020 5 Variable-2
timestamp value 2020-11-01 1 2020-11-02 2 2020-11-03 3 2020-11-04 4 Äußerer Join (
Inner
join) zweier Variablentimestamp Variable-1 Variable-2 2020-11-01 1 1 2020-11-02 2 2 2020-11-04 4 4 Äußerer Join (
Outer
join) zweier Variablentimestamp Variable-1 Variable-2 2020-11-01 1 1 2020-11-02 2 2 2020-11-03 nan
3 2020-11-04 4 4 5\.11.2020 5 nan
fillNAMethod
: Auffüllen vonnan
in die zusammengeführte Tabelle. Möglicherweise fehlen Werte in der zusammengeführten Tabelle. Diese sollten ordnungsgemäß verarbeitet werden. Dafür werden mehrere Methoden bereitgestellt. Die Optionen lautenLinear
,Previous
,Subsequent
,Zero
undFixed
, und der Standardwert istLinear
.Option Methode Linear
Auffüllen der nan
-Werte durch eine lineare InterpolationPrevious
Fortschreiben des letzten gültigen Werts, um Lücken zu füllen. Beispiel: [1, 2, nan, 3, nan, 4]
>[1, 2, 2, 3, 3, 4]
Subsequent
Der nächste gültige Wert wird zum Füllen von Lücken verwendet. Beispiel: [1, 2, nan, 3, nan, 4]
>[1, 2, 3, 3, 4, 4]
Zero
Auffüllen der nan
-Werte mit 0 (Null).Fixed
Auffüllen der paddingValue
-Werte mit einem angegebenen gültigen Wert, der innan
angegeben werden solltepaddingValue
: Der Auffüllungswert wird verwendet, umnan
aufzufüllen, wennfillNAMethod
Fixed
ist und in diesem Fall bereitgestellt werden muss. In anderen Fällen ist er optional.displayName
: Dies ist ein optionaler Parameter, mit dem Modelle identifiziert erden. Sie können damit beispielsweise Parameter, Datenquellen und alle anderen Metadaten zum Modell und seinen Eingabedaten markieren. Der Standardwert ist eine leere Zeichenfolge.
Eingabe des Datenschemas
MVAD erkennt Anomalien aus einer Gruppe von Metriken, und wir bezeichnen jede Metrik als Variable oder Zeitreihe.
Sie können die Beispieldatendatei von Microsoft herunterladen, um das akzeptierte Schema zu überprüfen: https://aka.ms/AnomalyDetector/MVADSampleData
Jede Variable muss zwei und nur zwei Felder haben (
timestamp
undvalue
) und sollte in einer CSV-Datei (durch Trennzeichen getrennte Werte) gespeichert werden.Die Spaltennamen der CSV-Datei sollten genau
timestamp
undvalue
sein, und die Groß-/Kleinschreibung muss dabei beachtet werden.Die
timestamp
-Werte müssen ISO 8601 entsprechen. Fürvalue
können ganze Zahlen oder Dezimalzahlen mit einer beliebigen Anzahl von Dezimalstellen verwendet werden. Ein gutes Beispiel für den Inhalt einer CSV-Datei ist:timestamp value 2019-04-01T00:00:00Z 5 2019-04-01T00:01:00Z 3.6 2019-04-01T00:02:00Z 4 ... ... Hinweis
Wenn Ihre Zeitstempel Stunden, Minuten und/oder Sekunden enthalten, stellen Sie sicher, dass sie ordnungsgemäß aufgerundet werden, bevor Sie die APIs aufrufen.
Wenn Ihre Datenfrequenz beispielsweise bei einem Datenpunkt aller 30 Sekunden liegt, Ihnen aber Zeitstempel wie „12:00:01“ und „12:00:28“ angezeigt werden, ist dies ein deutlicher Hinweis darauf, dass Sie die Zeitstempel vorab in neue Werte wie „12:00:00“ und „12:00:30“ einstellen sollten.
Weitere Informationen finden Sie im Abschnitt „Aufrunden von Zeitstempeln“ des Dokuments zu bewährten Methoden.
Der Name der CSV-Datei wird als Variablenname verwendet und sollte eindeutig sein. Beispiel: „temperature.csv“ und „humidity.csv“.
Variablen für Training und Variablen für Rückschlüsse sollten konsistent sein. Wenn Sie beispielsweise
series_1
,series_2
,series_3
,series_4
undseries_5
für das Training verwenden, sollten Sie genau die gleichen Variablen für Rückschlüsse bereitstellen.CSV-Dateien sollten in eine ZIP-Datei komprimiert und in einen Azure-Blobcontainer hochgeladen werden. Die ZIP-Datei kann einen beliebigen Namen haben.
Ordnerstruktur
Ein häufiger Fehler bei der Datenvorbereitung sind zusätzliche Ordner in der ZIP-Datei. Angenommen, der Name der ZIP-Datei lautet series.zip
: Nach dem Dekomprimieren der Dateien in einen neuen Ordner ./series
lautet der richtige Pfad zu den CSV-Dateien ./series/series_1.csv
, und ein falscher Pfad könnte bspw. ./series/foo/bar/series_1.csv
sein.
Das richtige Beispiel für die Verzeichnisstruktur nach dem Dekomprimieren der ZIP-Datei in Windows
.
└── series
├── series_1.csv
├── series_2.csv
├── series_3.csv
├── series_4.csv
└── series_5.csv
Ein falsches Beispiel für die Verzeichnisstruktur nach dem Dekomprimieren der ZIP-Datei in Windows
.
└── series
└── series
├── series_1.csv
├── series_2.csv
├── series_3.csv
├── series_4.csv
└── series_5.csv
Datentechnik
Nachdem Sie Ihren Code nun mit MVAD-APIs fehlerfrei ausführen können, stellt sich die Frage: Wie lässt sich die Modellgenauigkeit verbessern?
Datenqualität
- Da das Modell normale Muster aus historischen Daten lernt, sollten die Trainingsdaten den allgemeinen Normalzustand des Systems darstellen. Es ist für das Modell schwierig, diese Art von Mustern zu lernen, wenn die Trainingsdaten voller Anomalien sind. Ein empirischer Schwellenwert für eine ungewöhnliche Rate liegt bei maximal einem Prozent, um eine gute Genauigkeit zu erzielen.
- Im Allgemeinen sollte das Fehlwertverhältnis der Trainingsdaten unter 20 % liegen. Zu viele fehlende Daten können dazu führen, dass automatisch aufgefüllte Werte (meist lineare oder konstante Werte) als normale Muster gelernt werden. Das kann wiederum dazu führen, dass echte (nicht fehlende) Datenpunkte als Anomalien erkannt werden.
Datenmenge
Das zugrunde liegende Modell der multivariaten Anomalieerkennung verfügt über Millionen von Parametern. Es benötigt eine Mindestanzahl von Datenpunkten, um einen optimalen Parametersatz zu lernen. Die empirische Regel ist, dass pro Variable mindestens 5.000 Datenpunkte (Zeitstempel) erforderlich sind, um das Modell für eine gute Genauigkeit zu trainieren. Allgemein gilt: Je mehr Trainingsdaten, desto höher die Genauigkeit. Wenn Sie allerdings nicht so viele Daten sammeln können, empfiehlt es sich dennoch, mit weniger Daten zu experimentieren und zu prüfen, ob die verminderte Genauigkeit trotzdem akzeptabel ist.
Bei jedem Aufruf der Rückschluss-API muss sichergestellt werden, dass die Quelldatendatei gerade genug Datenpunkte enthält. Das sind normalerweise
slidingWindow
+ die Anzahl von Datenpunkten, für die wirklich Rückschlussergebnisse benötigt werden. Beispielsweise kann in einem Streamingszenario bei jedem Rückschluss auf der Grundlage EINES Zeitstempels die Datendatei nur das vorangegangene gleitende Fenster (slidingWindow
) plus EINEN Datenpunkt enthalten. Anschließend können Sie eine weitere ZIP-Datei mit der gleichen Anzahl von Datenpunkten (slidingWindow
+ 1) erstellen, aber EINEN Schritt nach rechts rücken und einen weiteren Rückschlussauftrag übermitteln.Alles darüber hinaus oder „vor“ dem führenden gleitenden Fenster hat keinen Einfluss auf das Rückschlussergebnis und kann lediglich zu einer Herabstufung der Leistung führen. Alles, was darunter liegt, kann zu einem
NotEnoughInput
-Fehler führen.
Aufrundung von Zeitstempeln
In einer Gruppe von Variablen (Zeitreihe) kann jede Variable aus einer unabhängigen Quelle erfasst werden. Die Zeitstempel verschiedener Variablen können miteinander und mit der bekannten Häufigkeit inkonsistent sein. Dies ist ein einfaches Beispiel.
Variable-1
timestamp | value |
---|---|
12:00:01 | 1.0 |
12:00:35 | 1.5 |
12:01:02 | 0.9 |
12:01:31 | 2.2 |
12:02:08 | 1.3 |
Variable-2
timestamp | value |
---|---|
12:00:03 | 2.2 |
12:00:37 | 2.6 |
12:01:09 | 1.4 |
12:01:34 | 1.7 |
12:02:04 | 2.0 |
Wir haben zwei Variablen von zwei Sensoren erfasst, die alle 30 Sekunden einen Datenpunkt senden. Die Sensoren senden jedoch keine Datenpunkte mit strenger gleichmäßiger Häufigkeit, sondern manchmal früher und manchmal später. Da MVAD Korrelationen zwischen verschiedenen Variablen berücksichtigt, müssen Zeitstempel ordnungsgemäß ausgerichtet sein, damit die Metriken den Zustand des Systems korrekt widerspiegeln können. Im obigen Beispiel müssen Zeitstempel der Variablen 1 und 2 vor der Ausrichtung ordnungsgemäß auf ihre Häufigkeit „gerundet“ werden.
Hier sehen Sie, was passiert, wenn sie nicht vorverarbeitet werden. Wenn wir alignMode
auf Outer
festlegen (was die Vereinigung von zwei Gruppen bedeutet), sieht die zusammengeführte Tabelle wie folgt aus:
timestamp | Variable-1 | Variable-2 |
---|---|---|
12:00:01 | 1.0 | nan |
12:00:03 | nan |
2.2 |
12:00:35 | 1.5 | nan |
12:00:37 | nan |
2.6 |
12:01:02 | 0.9 | nan |
12:01:09 | nan |
1.4 |
12:01:31 | 2.2 | nan |
12:01:34 | nan |
1.7 |
12:02:04 | nan |
2.0 |
12:02:08 | 1.3 | nan |
nan
gibt fehlende Werte an. Die zusammengeführte Tabelle ist wahrscheinlich nicht das, was Sie erwartet haben. Die Variablen 1 und 2 sind verschachtelt, und das MVAD-Modell kann keine Informationen zu Korrelationen zwischen ihnen extrahieren. Wenn wir alignMode
auf Inner
festlegen, ist die zusammengeführte Tabelle leer, da es keinen gemeinsamen Zeitstempel in den Variablen 1 und 2 gibt.
Daher sollten die Zeitstempel der Variablen 1 und 2 vorverarbeitet werden (auf den nächstgelegenen 30 Sekunden-Zeitstempel gerundet werden). Dann sieht die neue Zeitreihe wie folgt aus:
Variable-1
timestamp | value |
---|---|
12:00:00 | 1.0 |
12:00:30 | 1.5 |
12:01:00 | 0.9 |
12:01:30 | 2.2 |
12:02:00 | 1.3 |
Variable-2
timestamp | value |
---|---|
12:00:00 | 2.2 |
12:00:30 | 2.6 |
12:01:00 | 1.4 |
12:01:30 | 1.7 |
12:02:00 | 2.0 |
Jetzt ist die zusammengeführte Tabelle sinnvoller.
timestamp | Variable-1 | Variable-2 |
---|---|---|
12:00:00 | 1.0 | 2.2 |
12:00:30 | 1.5 | 2.6 |
12:01:00 | 0.9 | 1.4 |
12:01:30 | 2.2 | 1.7 |
12:02:00 | 1.3 | 2.0 |
Werte verschiedener Variablen dicht beieinander liegender Zeitstempel sind gut ausgerichtet, und das MVAD-Modell kann jetzt Korrelationsinformationen extrahieren.
Einschränkungen
Es gibt einige Einschränkungen in den Trainings- und Rückschluss-APIs, mit denen Sie vertraut sein sollten, um Fehler zu vermeiden.
Allgemeine Einschränkungen
- Gleitendes Fenster: 28–2.880 Zeitstempel (Standard: 300). Legen Sie für periodische Daten die Länge von zwei bis vier Zyklen als gleitendes Fenster fest.
- Variable Zahlen: Zum Trainieren und für Batchrückschlüsse maximal 301 Variablen.
Trainingseinschränkungen
- Zeitstempel: Maximal 1.000.000. Zu wenig Zeitstempel können die Modellqualität beeinträchtigen. Empfohlen werden mehr als 5.000 Zeitstempel.
- Granularität: Die minimale Granularität lautet
per_second
.
Einschränkungen bei Batchrückschlüssen
- Zeitstempel: Maximal 20.000, mindestens die Länge eines gleitenden Fensters.
Einschränkungen bei Streamingrückschlüssen
- Zeitstempel: Maximal 2.880, mindestens die Länge eines gleitenden Fensters.
- Erkennen von Zeitstempeln: Von 1 bis 10.
Modellqualität
Wie soll mit False Positives und False Negatives in realen Szenarien umgegangen werden?
Wir haben einen Schweregrad bereitgestellt, der die Bedeutung von Anomalien angibt. False Positives können durch Einrichten eines Schwellenwerts für den Schweregrad herausgefiltert werden. Bei Musterverschiebungen in den Rückschlussdaten treten manchmal zu viele False Positives auf. In solchen Fällen muss ein Modell möglicherweise mit neuen Daten trainiert werden. Wenn die Trainingsdaten zu viele Anomalien enthalten, kommt es in den Erkennungsergebnissen möglicherweise zu False Negatives. Das liegt daran, dass das Modell Muster anhand der Trainingsdaten lernt und Anomalien das Modell verzerren können. False Positives lassen sich daher durch eine sorgfältige Datenbereinigung reduzieren.
Wie kann ich anhand von Trainings- und Validierungsverlust einschätzen, welches Modell am besten verwendet werden sollte?
Ohne beschriftetes Dataset ist es im Allgemeinen schwer, sich für das beste Modell zu entscheiden. Wir können jedoch die Trainings- und Validierungsverluste heranziehen, um eine grobe Schätzung zu erhalten, und so die schlechten Modelle verwerfen. Erstens: Wir müssen beobachten, ob Trainingsverluste konvergieren. Divergierende Verluste deuten häufig auf eine schlechte Modellqualität hin. Zweitens: Verlustwerte ermöglichen ggf. die Identifizierung von Unter- oder Überanpassungen. Modelle mit Unter- oder Überanpassung bieten möglicherweise nicht die angestrebte Leistung. Drittens: Die Definition der Verlustfunktion spiegelt zwar nicht direkt die Erkennungsleistung wider, Verlustwerte können jedoch bei der Einschätzung der Modellqualität hilfreich sein. Ein niedriger Verlustwert ist eine Voraussetzung für ein gutes Modell. Somit können Modelle mit hohen Verlustwerten verworfen werden.
Häufige Probleme
Unabhängig von der Fehlercodetabelle haben wir von Kunden wie Ihnen einige häufige Probleme bei der Verwendung von MVAD-APIs festgestellt. Die folgende Tabelle hilft Ihnen dabei, diese Probleme zu vermeiden:
Problem | Auswirkung | Erklärung und Lösung |
---|---|---|
Zeitstempel in Trainings- und/oder Rückschlussdaten wurden nicht aufgerundet, um sie an der jeweiligen Datenhäufigkeit der einzelnen Variablen auszurichten. | Die Zeitstempel der Rückschlussergebnisse sind nicht wie erwartet: Es sind entweder zu wenig oder zu viele Zeitstempel. | Weitere Informationen finden Sie unter Aufrundung von Zeitstempeln. |
Zu viele anomale Datenpunkte in den Trainingsdaten | Die Modellgenauigkeit wird beeinträchtigt, da anomale Datenpunkte während des Trainings als normale Muster behandelt werden. | Empirisch wurde ermittelt, dass die Anomalitätsrate maximal bei einem Prozent liegen sollte. |
Zu wenig Trainingsdaten | Die Modellgenauigkeit ist beeinträchtigt. | Empirisch wurde ermittelt, dass zum Trainieren eines MVAD-Modells mindestens 15.000 Datenpunkte (Zeitstempel) pro Variabler benötigt werden, um eine gute Genauigkeit zu erzielen. |
Behandlung aller Datenpunkte mit isAnomaly =true als Anomalien |
Zu viele False Positives | Verwenden Sie sowohl isAnomaly als auch severity (oder score ), um vernachlässigbare Anomalien zu erkennen, und nutzen Sie optional Gruppierungen, um die Dauer der Anomalien zu überprüfen und so Zufallsrauschen unterdrücken. Informationen zum Unterschied zwischen severity und score finden Sie weiter unten im Abschnitt Häufig gestellte Fragen. |
Unterordner werden in die Datendatei gezippt, die zum Trainieren oder Generieren von Rückschlüssen verwendet wird. | Die CSV-Datendateien in Unterordnern werden beim Trainieren oder Generieren von Rückschlüssen ignoriert. | Die ZIP-Datei darf keine Unterordner enthalten. Ausführliche Informationen zur Ordnerstruktur finden Sie hier. |
Zu viele Daten in der Rückschlussdatendatei (Beispiel: Komprimierung aller historischen Daten in der ZIP-Datei mit den Rückschlussdaten) | Es werden zwar möglicherweise keine Fehler angezeigt, die Leistung ist jedoch beeinträchtigt, wenn Sie versuchen, die ZIP-Datei in das Azure-Blob hochzuladen oder Rückschlüsse zu generieren. | Ausführliche Informationen zur Datenmenge finden Sie hier. |
Erstellen von Anomalieerkennungsressourcen in Azure-Regionen, in denen die multivariate Anomalieerkennung (Multivariate Anomaly Detector, MVAD) noch nicht unterstützt wird, und Aufrufen von MVAD-APIs | Beim Aufrufen der MVAD-APIs wird der Fehler „Ressource nicht gefunden.“ zurückgegeben. | Während der Vorschauphase ist die multivariate Anomalieerkennung nur in bestimmten Regionen verfügbar. Erstellen Sie ein Lesezeichen für Neuerungen in der Anomalieerkennung, um im Hinblick auf die regionalen Rollouts der multivariaten Anomalieerkennung auf dem neuesten Stand zu bleiben. Sie können auch ein GitHub-Problem melden oder sich unter AnomalyDetector@microsoft.com an uns wenden, um eine Anfrage für bestimmte Regionen zu stellen. |
Häufig gestellte Fragen
Wie funktioniert das gleitende MVAD-Fenster?
Die Funktionsweise des gleitenden MVAD-Fensters lässt sich am besten anhand von zwei Beispielen erklären: Angenommen, Sie haben slidingWindow
auf „1.440“ festgelegt, und Ihre Eingabedaten haben eine Granularität von einer Minute.
Streamingszenario: Sie möchten vorhersagen, ob der EINE Datenpunkt bei „2021-01-02T00:00:00Z“ anomal ist.
startTime
undendTime
haben den gleichen Wert (2021-01-02T00:00:00Z). Ihre Rückschlussdatenquelle muss jedoch mindestens 1.440 + 1 Zeitstempel enthalten. Denn die multivariate Anomalieerkennung zieht die Daten vor dem Zieldatenpunkt (2021-01-02T00:00:00Z) heran, um zu entscheiden, ob das Ziel eine Anomalie ist. Die Länge der erforderlichen vorangegangenen Daten istslidingWindow
(in diesem Fall also 1.440). 1\.440 = 60 · 24, daher müssen Ihre Eingabedaten spätestens bei „2021-01-01T00:00:00Z“ beginnen.Batchszenario: Sie möchten mehrere Zieldatenpunkte vorhersagen.
endTime
ist bei Ihnen größer alsstartTime
. Rückschlüsse in solchen Szenarien werden unter Verwendung eines dynamischen Fensters generiert. Von der multivariaten Anomalieerkennung werden beispielsweise Daten von2021-01-01T00:00:00Z
bis2021-01-01T23:59:00Z
(einschließlich) verwendet, um zu bestimmen, ob Daten bei2021-01-02T00:00:00Z
Anomalien sind. Anschließend werden Daten von2021-01-01T00:01:00Z
bis2021-01-02T00:00:00Z
(einschließlich) verwendet, um zu bestimmen, ob Daten bei2021-01-02T00:01:00Z
Anomalien sind. Diese Vorgehensweise wird bis zum letzten durchendTime
angegebenen Zeitstempel (oder bis zum allerletzten Zeitstempel) fortgesetzt. Dabei werden 1.440 Datenpunkte verglichen. Ihre Rückschlussdatenquelle muss daher Daten enthalten, die beistartTime
-slidingWindow
beginnen und idealerweise insgesamt eine Größe vonslidingWindow
+ (endTime
-startTime
) aufweisen.
Was ist der Unterschied zwischen severity
und score
?
Normalerweise empfiehlt es sich, vernachlässigbare Anomalien für Ihr Unternehmen mithilfe von severity
herauszufiltern. Je nach Szenario und Datenmuster haben diese weniger wichtigen Anomalien häufig relativ niedrige Werte für severity
oder eigenständige (unstetige) hohe Werte für severity
– etwa zufällige Spitzen.
Wenn Sie komplexere Regeln benötigen als die Schwellenwerte für severity
oder für die Dauer kontinuierlich hoher severity
-Werte, können Sie score
verwenden, um leistungsfähigere Filter zu erstellen. Unter Umständen ist es hilfreich zu verstehen, wie score
von der multivariaten Anomalieerkennung zur Bestimmung von Anomalien verwendet wird:
Ob ein Datenpunkt anomal ist, wird sowohl aus globaler als auch aus lokaler Perspektive betrachtet. Ist score
bei einem Zeitstempel höher als ein bestimmter Schwellenwert, wird der Zeitstempel als Anomalie gekennzeichnet. Ist score
zwar niedriger als der Schwellenwert, in einem Segment aber relativ betrachtet höher, wird es ebenfalls als Anomalie gekennzeichnet.