German Version
Beschreibung der Funktion detect_anomalies
V7
Die Funktion detect_anomalies
wurde so erweitert, dass sie sowohl TensorFlow-Modelle als auch Isolation Forest-Modelle verwenden kann, um Anomalien zu erkennen. Nachfolgend die Funktionsweise:
Hauptmerkmale:
- Parameter:
sensor_df
: Enthält die Sensordaten. Muss die Spalten sensorType
, value
, timestamp
, und mileage
enthalten.
use_tensorflow
: Aktiviert die TensorFlow-Variante, wenn True
. Ansonsten wird Isolation Forest verwendet.
model_dir
: Gibt das Verzeichnis an, in dem die Modelle gespeichert und geladen werden.
- Initialisierung:
- Die Spalte
anomaly
im DataFrame wird initialisiert.
- Ergebnisse werden in einem Dictionary
results
gespeichert.
- TensorFlow-Modell:
- Ein Autoencoder wird für die Erkennung von Anomalien verwendet.
- Wenn ein Modell für den entsprechenden Sensortyp bereits gespeichert ist, wird es geladen, weitertrainiert und erneut gespeichert.
- Rekonstruktionsfehler werden berechnet, um Anomalien zu identifizieren.
- Die Erkennung basiert auf einem Schwellenwert (z. B. 99. Perzentil der Fehler).
- Isolation Forest:
- Wenn ein Modell für den entsprechenden Sensortyp bereits gespeichert ist, wird es geladen.
- Isolation Forest trainiert auf allen verfügbaren Daten neu.
- Ergebnisse (
-1
für Anomalien) werden in die Spalte anomaly
umgewandelt (1
für Anomalien, 0
für normal).
- Ergebnisse:
- Für jeden Sensortyp werden:
- Anzahl der Anomalien,
- Detaildaten zu den Anomalien,
- ein Visualisierungsplot gespeichert.
- Plots werden als Base64-kodierte Strings für weitere Verwendung exportiert.
Arbeitsweise:
- TensorFlow-Variante:
- Daten werden mit
MinMaxScaler
skaliert.
- Ein Autoencoder wird geladen oder neu erstellt.
- Das Modell wird trainiert oder weitertrainiert und gespeichert.
- Rekonstruktionsfehler bestimmen, welche Daten als Anomalien markiert werden.
- Isolation-Forest-Variante:
- Das Modell wird geladen oder neu erstellt.
- Anomalien werden durch das Training und die Vorhersage mit Isolation Forest identifiziert.
- Ergebnisse werden in
anomaly
gespeichert.
Rückgabe:
- Das Dictionary
results
enthält:
anomaly
: Liste mit Anomaliedaten je Sensortyp, einschließlich:
- Sensortyp,
- Anzahl der Anomalien,
- Daten der Anomalien,
- Visualisierungsplot.
Vorteile der Erweiterung:
- Flexibilität:
- Die Funktion kann mit statischen Modellen (Isolation Forest) oder dynamisch lernenden Modellen (TensorFlow) arbeiten.
- Kontinuierliches Lernen:
- TensorFlow-Modelle können bei jedem Aufruf weitertrainiert werden.
- Wiederverwendbarkeit:
- Modelle werden gespeichert und bei Bedarf erneut verwendet.
- Visualisierung:
- Anomalien werden grafisch dargestellt, was die Interpretation erleichtert.
- Modularität:
- Die Funktion ist leicht erweiterbar, um zusätzliche Modelle oder Methoden zu integrieren.
Einsatzmöglichkeiten:
- Für Sensordaten, bei denen einfache Schwellenwertprüfungen nicht ausreichen.
- Wenn historische Daten für die Modellierung verfügbar sind und kontinuierliches Lernen erforderlich ist.
Lizenz
Autor: Jörg Harzmann
Dieser Inhalt ist unter einer CC BY-NC Lizenz veröffentlicht.
Jeglicher Quellcode ist urheberrechtlich geschützt!