Anomaly Detection ist ein wichtiges Instrument, um Auffälligkeiten und Fehler in Betriebsabläufen zu erkennen. Überall, wo Daten in Echtzeit erfasst werden, entstehen Zeitreihen anhand derer wir Systeme beobachten können. Für datengetriebene Unternehmen ist es essenziell, Zeitreihen zu analysieren, um Fehler frühzeitig zu entdecken. So auch für TransnetBW, einer von vier Übertragungsnetzbetreibern in Deutschland. Um europaweite Netzstabilität zu gewährleisten, hat TransnetBW eine Kaggle Competition ausgeschrieben zur Entwicklung eines KI-Algorithmus. Wir haben den vierten Platz belegt und erklären am Beispiel der Competition, wie Unsupervised Anomaly Detection ganze Systeme am Laufen hält.
KI für europaweite Netzstabilität (© Foto von Fré Sonneveld auf Unsplash)
Unbekannte Anomalien im Stromnetz erkennen
Seit 2022 gleicht TransnetBW mit der PICASSO-Plattform europaweit Stromreserven in Echtzeit aus. Zur Überwachung der Stromnetzstabilität werden verschiedenste Metriken aufgezeichnet und kontrolliert, um Anomalien im Betrieb zu erkennen. Aufgrund der intransparenten Zusammenhänge in komplexeren Systemen kann es jedoch schwer sein, gute Metriken zu finden, die eindeutig auf ein anormales Verhalten hindeuten. Hier kann Machine Learning mit künstlicher Intelligenz effektiv zum Einsatz kommen, denn KI-Modelle können diese komplexen Zusammenhänge erlernen!
Besonders kniffelig ist es, ungewöhnliche Muster oder Anomalien in Daten zu finden, wenn diese schwer zu erkennen sind oder wir nicht genau wissen, wonach wir suchen. Das kann daran liegen, dass es sich um komplexe Daten handelt, deren Zusammenhänge erst durch einen Menschen verstanden werden müssen, um dem Modell Hilfe leisten zu können. Die Daten müssen dann entsprechend markiert werden, damit die KI lernen kann, was normal und was ungewöhnlich ist. Dabei handelt es sich jedoch um ein sehr aufwändiges Verfahren. Doch eine KI kann auch eigenständig lernen. Dies wird als "Unsupervised Learning" bezeichnet.
Die Challenge von TransnetBW fällt genau in diese Kategorie. In Kooperation mit dem Fraunhofer IEE wurde uns ein exklusiver Zeitreihensatz zur Verfügung gestellt, jedoch ohne Markierungen von Anomalien. Lediglich ein paar bekannte Anomalien wurden beispielhaft erläutert. Unser KI-Modell muss also fähig sein, die Anomalien selbst zu erlernen.
Unsupervised Learning: Training mit Autoencoder
Diese Aufgabe klingt zunächst unlösbar, aber mit Hilfe von moderner KI-Architekturen und intelligenten Ansätzen lassen sich solche Problemstellungen bewältigen. Als Herzstück nutzen wir eine sogenannte Autoencoder Architektur (siehe Abbildung).
AutoencoderArchitektur (© Grafik von eXXcellent solutions angelehnt an Lilian Weng)
Ein Autoencoder besteht aus zwei Hauptteilen: dem Encoder und dem Decoder. Der Encoder komprimiert die Eingabesequenz in einen festen Vektor (Bottleneck), der die wesentlichen Informationen der Eingabe enthält. Der Decoder verwendet diesen Vektor, um die ursprüngliche Eingabesequenz so genau wie möglich zu rekonstruieren.
Unsere Encoder und Decoder Netzwerke selbst bestehen aus Long Short-Term Memory (LSTM) Knoten. Diese sind besonders gut für Zeitreihendaten geeignet, weil sie in der Lage sind, Informationen über lange Zeiträume hinweg zu bewahren und zu verarbeiten.
Wie kann nun unser KI-Modell mit den Daten ohne Markierungen umgehen? Hätten wir Markierungen, könnten wir einfach nur die Stellen ohne Anomalien der KI zum Training füttern. So würde der Autoencoder sich auf den Normalfall spezialisieren und dort gute Rekonstruktionen liefern. Bei Stellen mit Anomalien hingegen wären die Rekonstruktionen deutlich schlechter. Speziell beim Fall der Anomalieerkennung, sind Stellen mit Anomalien per Definition deutlich seltener in unseren Daten vorhanden. Diese Verzerrung in den Daten wird uns hier zum Nutzen, wodurch das Modell bevorzugt die normalen Stellen erlernt. Weiterhin kann man die Größe des Modells bewusst begrenzen. So wird verhindert, dass es sowohl normale als auch anomale Fälle lernt, was mehr Komplexität und ein größeres Modell erfordern würde. Dadurch trainiert man das Modell hauptsächlich auf das Normalverhalten, ohne die zusätzliche Komplexität von Anomalien zu erfassen.
Geeignete Encoder-Decoder-Größe finden
Vor diesem Hintergrund besteht die Herausforderung darin, eine optimale Modellgröße zu finden, die einerseits die Zeitreihen effektiv rekonstruiert, andererseits aber nicht so groß ist, dass das Modell über das Ziel hinausschießt und auch das Anomalieverhalten mitlernt. Da die Anomaliestellen in unseren Zeitreihen nicht explizit markiert sind, ist es besonders wichtig, die Modellgröße präzise zu steuern.
Ein weiteres Problem stellt Overfitting dar: Zu umfangreiche Modelle neigen dazu, spezifische Muster der Trainingsdaten zu lernen, die nicht auf neue Daten verallgemeinert werden können. Dies kann die Fähigkeit des Modells einschränken, tatsächliche Anomalien in neuen Daten zu erkennen. Daher ist es entscheidend, die Modellgröße so anzupassen, dass sie die notwendige Detailtreue bietet und gleichzeitig eine robuste Generalisierung auf neue Daten sicherstellt.
Ergebnisse
Nach einem erfolgreichen Training können Zeitreihen mit dem sliding window Ansatz analysiert werden. Wir nehmen uns nun ein Zeitfenster mit bekannten Anomaliestellen genauer unter die Lupe. In Abbildung 1 kann man für die “aFRRactivation” Zeitreihe den originalen Verlauf (blau) und den rekonstruierten Verlauf (lila) sehen. Bis auf ein paar kleinere Stellen kann das Autoencoder Netzwerk diesen komplexen Zeitreihenverlauf sehr gut rekonstruieren.
Abb. 1: Zeitreihe "aFFRactivation" original und rekonstruiert (© eXXcellent solutions)
Wenn man nun die Rekonstruktion einer anderen Zeitreihe, “aFRRrequest”, in diesem Zeitraum anschaut (Abbildung 2), fallen an gewissen Stellen sofort gravierende Unterschiede auf. An den hellblau markierten Stellen ist das trainierte Modell nicht in der Lage, die Zeitreihe identisch zu rekonstruieren.
Abb. 2: Zeitreihe "aFFRequest" original und rekonstruiert (© eXXcellent solutions)
Hier kommt der zweite Baustein unserer Lösung ins Spiel: Der Autoencoder allein, gibt keine Auskunft darüber, ob bei einer Abweichung eine Anomalie vorliegt oder nicht, er gibt lediglich eine rekonstruierte Zeitreihe aus. Um zu bestimmen, ob eine Anomalie zu einem Zeitpunkt vorliegt, haben wir einen Entscheidungsalgorithmus implementiert. Dieser vergleicht die ursprünglichen und die rekonstruierten Zeitreihen und beinhaltet mehrere Stufen aus nicht-trivialen Berechnungen, auf dessen Basis er eine Entscheidung trifft.
Tatsächlich ist die erste hellblau markierte Stelle in Abbildung 2 eine bekannte Anomalie. D.h. unser trainiertes Modell konnte den Normalfall erlernen aber nicht den Anomaliefall, genau was wir erreichen wollten! Anhand der beiden Abbildungen kann man auch wunderbar erkennen, dass die KI erlernt hat, dass diese Kurven eine direkte Proportionalität aufweisen. Steigt also ”aFRRactivation” bemerkbar an, steigt auch ”aFRRrequest”, und umgekehrt.
An dieser Stelle ist auch ein weiterer Vorteil dieses Lösungsansatzes ersichtlich: den anomaliefreien Zeitreihenverlauf bekommt man automatisch mitgeliefert. Man kann den erwarteten Verlauf in lila erkennen.
Vorhersagen & Prozessoptimierung
Es stecken noch ein paar Details hinter den Kulissen, aber das Bemerkenswerte ist, wie gut diese Architektur diese komplexen Sachverhalte verstehen kann. Gleichzeitig ist die Architektur verhältnismäßig einfach und man benötigt auch kein tiefes Fachwissen zu den Ausgangsdaten, da die Maschine dieses komplett eigenständig erlernt. Die Autoencoder-Architektur kann daher auf eine Vielzahl von Problemen und Datensätzen angewendet werden.
Ein weiterer Vorteil an dieser Architektur ist, dass man sie auch für Zeitreihen-Vorhersagen verwenden kann! Haben Sie Daten in Form von Zeitreihen an denen Prozesse anknüpfen? Dann stehen die Chancen gut, dass hier KI die Prozesse effizienter gestalten kann! Gerne beraten wir Sie, wo Ihre Potentiale liegen.
Weitere Informationen:
Haben Sie Fragen zu diesem Thema? Schreiben Sie mir gerne eine E-Mail. Ich freue mich über Ihre Kontaktaufnahme!
Oder informieren Sie sich auf unserer Website über unsere Kompetenzen im Bereich User Centered Design: |
Über Stefan Pflüger
|
Stefan Pflüger ist Software Architekt bei der eXXcellent solutions gmbh in Darmstadt. Zuvor promovierte er in Physik am Helmholtz-Institut und wechselte 2021 zu eXXcellent solutions. In seiner Rolle als Software Architekt übernimmt er die Planung und Entwicklung verschiedener Projekte. Außerdem leitet er die AI/ML-Gilde, die sich auf maschinelles Lernen, künstliche Intelligenz und Data Science konzentriert. |
Tags: Alle Blogbeiträge, KI & Analytics