Machine Learning in der Praxis
So setzen Sie Predictive Maintenance richtig um
Die vorausschauende Wartung, neudeutsch Predictive Maintenance genannt, lebt von Daten und einem hohen Grad an Automatisierung. Im Kern geht es darum, den Zustand von Maschinen kontinuierlich zu überwachen und darauf aufbauend Betrieb und Wartungsintensität zu optimieren. Damit das gelingt, müssen die gesammelten Messdaten automatisch interpretiert werden.
Entscheidend dafür sind Machine-Learning-Algorithmen. Mithilfe dieser mathematischen Methoden lassen sich aus Daten funktionale Zusammenhänge ableiten. Dabei geht es darum, die Zusammenhänge zu finden, die am besten die jeweiligen Anforderungen abdecken und helfen, die angestrebten Ziele zu erreichen: eine Zustandsdiagnose des überwachten Systems und eine möglichst verlässliche Vorhersage seiner nutzbaren Restlebensdauer, der Prognose des sogenannten Remaining Useful Life (RUL).
Diese Algorithmen machen die Modelle lernfähig. Damit automatisieren sie nicht nur die vorausschauende Wartung, sie sorgen auch für eine adäquate Reaktion bei Veränderungen im Verhalten der Maschinen, aber auch in den Rahmenbedingungen. Sie schaffen so die Voraussetzung dafür, dass sich Wartungsvorgänge, -intervalle und Ersatzteilhaltung optimal an die jeweils aktuellen Bedingungen anpassen lassen. Und sie helfen dabei, Abweichungen zu erkennen, ehe die jeweilige Maschine größeren Schaden nimmt oder beispielsweise eine Flugzeugturbine nicht mehr voll funktionsfähig ist.
Im Folgenden wird schrittweise dargestellt, wie Unternehmen vorgehen sollten, wenn sie ein Predictive-Maintenance-Projekt unter Einsatz von Machine LearningMachine Learning umsetzen wollen. Erste Voraussetzung für ein Predictive-Maintenance-Projekt ist die Bestückung der Maschinen mit Sensoren und ihre Vernetzung. Idealerweise ist diese Voraussetzung schon lange vor Projektstart gegeben, denn je mehr Daten - auch aus der Vergangenheit - zur Verfügung stehen, desto treffsicherer sind die Ergebnisse. Alles zu Machine Learning auf CIO.de
Der Predictive-Maintenance-Start: Überblick verschaffen
Der erste Schritt zur Entwicklung passender Algorithmen ist die Daten-Inventur. Denn nur wenn das Projektteam weiß, welche Maschinendaten überhaupt verfügbar sind, kann es die nächsten Schritte zielgerichtet angehen. Relevante Daten können beispielsweise sein:
Zustands-/Messdaten der Maschine (häufig Zeitreihen, wie die Temperatur zum Zeitpunkt X, Y, Z);
unstrukturierte Daten (beispielsweise Bilder oder Audiosignale);
statische Eigenschaften (etwa Firmwareversion, Herstellungsdatum oder Aufstellungsort der Maschine).
Relevant für die Verwertbarkeit der Daten ist, wie sie gesammelt werden und wie vollständig sie sind: Liegen bestimmte Daten nur Event-getriggert vor oder sind sie in konstanten Messreihen verfügbar - und wenn ja, in welcher Frequenz werden sie gesammelt? Sind die Messreihen lückenlos dokumentiert?
Generell ist die Datenaufbereitung entscheidend für den Erfolg eines Projekts. Häufig unterschätzen Unternehmen, wie viel Zeit sie dafür aufwenden müssen, um die Datensätze zu reinigen, falsche Werte zu löschen, fehlende Werte aufzufüllen und zu verstehen, wie und unter welchen Umständen die Daten gemessen wurden.
Servicedaten für Machine Learning nutzen
Besonderes Augenmerk verdienen eventuell vorhandene Service- und Reparaturdaten, sie sind ein wahrer Wissensschatz und die Basis für eine RUL-Prognose. Wichtige Angaben sind zum Beispiel: Welche Maschine ist wann ausgefallen? Was war defekt und was wurde repariert? Das Projektteam muss dabei vor allem prüfen, ob sich die Servicedaten mit den Zustandsdaten "matchen" lassen. Denn anhand der Reparaturhistorie lassen sich die Zustände vor und nach der Reparatur abgleichen. Auf dieser Basis kann das System lernen, was "kaputt" im Einzelfall überhaupt bedeutet.
Sind Servicedaten verfügbar, folgt zunächst deren Priorisierung: Welche Maschinentypen sind am häufigsten defekt? Welche Bauteile fallen am ehesten aus oder sind am teuersten zu reparieren? Im Anschluss muss das Unternehmen dann herausfinden, welche Messwerte - zum Beispiel physikalische Messgrößen - für das Versagen eines Bauteils oder einer Maschine relevant sein könnten. Dies ist die Voraussetzung, um die verfügbaren Daten im Hinblick auf die Modellbildung zu sichten und zu bewerten: Was könnte relevant sein, was wird überhaupt gemessen? In dieser Phase ist es sinnvoll, Experten zu Rate zu ziehen, die sich mit den Maschinen auskennen.
Steht der Überblick über die vorhandenen Daten und deren grundsätzliche Relevanz, sollte das Projektteam klären, welche Fragestellungen sich im Zusammenhang mit den angestrebten Projektzielen überhaupt beantworten lassen. Vor allem die finanzielle Perspektive ist wichtig. Am interessantesten sind Anwendungsfälle, bei denen viel Geld im Spiel ist: besonders teure Maschinen oder solche, die besonders häufig ausfallen oder durch Ausfälle besonders hohe Kosten verursachen. Diese Fälle sollten höchste Priorität genießen.
Spätestens jetzt wird deutlich: Ein solches Projekt ist komplex, und es sind viele Personen mit den unterschiedlichsten Sichtweisen und Kompetenzen eingebunden. Deshalb empfiehlt es sich für Unternehmen, schon früh einen Data Scientist einzubinden. Er ist der Kommunikator, der die Fäden in der Hand hält, der mit Datensammlern, Entwicklern, Servicetechnikern und anderen Experten redet, deren Informationen aufbereitet und in das Projekt eingliedert.
Entwicklung der Machine-Learning-"Intelligenz"
Doch wie erstellt man jetzt technisch den "intelligenten" Algorithmus? Vorab: Berührungsängste sind nicht angebracht. Es gibt mittlerweile eine Reihe an guten Tools, die sich an unterschiedliche Zielgruppen richten:
Von IoT-Herstellern bereits integrierte Algorithmen oder vorgefertigte Services wie Azure Cognitive Services oder Amazon AWS AI Services bieten eine gute Grundlage für den schnellen Einstieg. Diese Tools sind allerdings eine "Black Box" und nur in relativ geringem Umfang anpassbar.
Öffentlich verfügbare KI-Programmierbibliotheken oder Algorithmen-Baukästen eignen sich für eine schnelle Modellentwicklung und greifen häufig unter anderem auf die interpretierte Sprache Python zurück. Hier gibt es zum Beispiel die Bibliothek Keras für neuronale Netzwerke oder scikit-learn für "klassische" Machine-Learning-Modelle. Sie nutzen vordefinierte Berechnungsmethoden, bieten aber bereits mehr Eingriffsmöglichkeiten.
Noch eine Ebene tiefer gehen beispielsweise Open-Source-Programmbibliotheken wie PyTorch und TensorFlow. Sie unterstützen die komplette Eigenentwicklung von Algorithmen und besitzen auch eine Python-Anbindung.