Optionen für Anomalieerkennung

Abgeschlossen

Im Überblick haben wir uns damit befasst, wie Connected Field Service die Anomalieerkennung mithilfe der Standardvorlagenanwendung handhabt. In dieser Lerneinheit werden die Optionen zum Anpassen der Erkennung erläutert.

Zuerst müssen Sie den Regeltyp oder die Intelligenz berücksichtigen, die Sie benötigen, um Einblicke in das Szenario zu erhalten. Die einfachste Form ist ohne Status und statisch. Wenn beispielsweise die gesteuerte Raumtemperatur über 20 °C oder unter 10 °C liegt, wird eine Warnung ausgegeben. Diese Bewertungsart benötigt keine historischen Daten, um zu erkennen, wie sehr sich diese seit dem letzten Datenpunkt verändert hat. Es handelt sich lediglich um einen Vergleich von Zeitpunkten. Für diese Art von Analyse benötigen Sie den Stream Analytics-Auftrag nicht wirklich. Sie können ihn sogar durch eine einfache Azure-Funktion ersetzen.

Umgang mit komplexen Regeln

Da Regeln immer komplexer werden, sind diese oft statusbehaftet und dynamisch. Diese Arten von Regeln lassen sich immer schwieriger in einfachen Code implementieren, da der Status in der gesamten, von Ihnen überwachten Gerätegruppe aufrechterhalten werden muss. Azure Stream Analytics arbeitet nach dem Konzept von zeitbasierten Fenstern, in denen Sie Bewertungen vornehmen können, ohne diese Szenarios codieren zu müssen.

Eines der Highlights der Azure IoT-Referenzarchitektur ist das Konzept, die Erkenntniserkennung in einen schnellen und langsamen Pfad zu unterteilen, bei dem der langsame Pfad nicht durch die Einschränkungen der Echtzeitanalyse beeinträchtigt ist. Aufbauend auf unserem Beispiel zum Speichern der Detailtelemetrie in Azure Storage in der vorherigen Lerneinheit wird die Architektur im folgenden Beispiel mithilfe eines schnellen und langsamen Pfads hervorgehoben. Dabei kann der langsame Pfad die Detaildaten aus Azure Storage in Azure ML übertragen, um tiefergehende Schulungen oder Erkenntnisse zu generieren.

Diagramm der Architektur der Verwendung eines schnellen und eines langsamen Pfades

Da Azure Stream Analytics (ASA) in die Vorlage integriert ist, möchten wir uns einige der Dinge ansehen, mit deren Hilfe Sie den Datenstrom analysieren können. Zuerst betrachten wir die standardmäßig verwendete Where-Klausel. Diese Where-Klausel verarbeitet sämtliche Datensätze außerhalb des Erkennungsbereichs und gewährleistet, dass nur eine Warnung generiert wird, solange nicht mehr als eine Minute vergangen ist.

WHERE LAG(data.DeviceID) OVER (PARTITION BY data.DeviceId, data.Reading,
data.ReadingType LIMIT DURATION(minute, 1)) IS NULL

OperatorDafür nutzt die Klausel den analytischen LAG-Operator, mit dem ein vorheriges Ereignis im Ereignis-Stream gesucht werden kann. OVER (PARTITION... gibt die vorherige Messung für dieses spezifische Gerät an, wenn diese Messung in der letzten Minute erfolgte, wie von DURATION definiert. Dieses Beispiel verdeutlicht die zustandsbehaftete Natur von Azure Stream Analytics und wie es den Status für uns verwaltet.

Fensterung

Ein weiteres Beispiel hierfür ist die Nutzung der Fensterfunktionen. In ASA können Sie aus vier Fenstertypen auswählen: Rollierend, springend, gleitend und Sitzung. Die Ausgabe im Fenster ist ein einzelnes Ereignis auf Grundlage der verwendeten Aggregatfunktion. Im folgenden Beispiel wird unsere Abfrage so geändert, dass Durchschnittswerte über ein 10-sekündlich rollierendes Fenster ermittelt werden. Dadurch wird sichergestellt, dass es keine Überlappung gibt und ein Ereignis nicht zu mehr als einem Fenster gehört.

Screenshot eines Beispiels zum Ändern der Abfrage, um Durchschnittswerte über ein 10-sekündlich rollierendes Fenster zu ermitteln

Das folgende Bild visualisiert das rollierende Fenster über 30 Sekunden.

Die Visualisierung des rollierendes Fenster über 30 Sekunden

Bei diesem Ansatzes kann unsere Erkennung anhand von Durchschnittswerten über einen Zeitraum erfolgen, anstatt als Zeitpunktbeobachtung. Wir können diesen Ansatz außerdem durch Nutzung der Anomalieerkennungsfunktion von ASA auf die nächste Stufe heben.

Erkennung von Abweichungen

Die Anomalieerkennungsfunktion ist derzeit als Vorschau verfügbar. Jedoch werden den Abfragefunktionen ein Anomalieerkennungsoperator hinzugefügt. Aktuell kann der Operator drei Arten von Anomalien feststellen: eine bidirektionale Ebenenänderung, einen langsamen positiven Trend und einen langsamen negativen Trend. Nehmen wir das vorangegangene Beispiel, in dem wir überprüft haben, ob die Raumtemperatur die Bereichsschwellenwerte erreicht hat. Dabei handelt es sich um einen Zeitpunkt bei dem nur das Erreichen der äußeren Grenzwerte erkannt wird. Wenn Sie stattdessen den AnomalyDetection-Operator verwenden, können Sie bei einem im Laufe der Zeit erkannten Temperaturanstieg proaktiv handeln, bevor ein gefährlicher Wert erreicht wird.

Der Operator verwendet einen nicht überwachten Lernansatz zur Schulung der Modelle. Im Allgemeinen werden zwei Modelle parallel verwaltet: eines wird zur Bewertung verwendet, und das andere lernt im Hintergrund. Die Schulung erfolgt über Daten im aktuellen Datenstrom anstelle von Out-of-band-Daten.

Wie Sie sehen, gibt es mehrere Möglichkeiten, Ausnahmen zu identifizieren und Warnungen auszugeben. Wir haben lediglich an der Oberfläche des Potenzials von Azure Stream Analytics gekratzt. Die individuellen Möglichkeiten durch Azure Functions oder Microservices sind unendlich. In der nächsten Lerneinheit setzen Sie den AnomalyDetection-Operator in einer praktischen Übung ein.