Applikation

ML4P-Pipelinekomponenten

Wie in der Projektzusammenfassung beschrieben, soll das Machine Learning(ML)-Modell im Streamingbetrieb auswerten, wie viel Lebenszeit dem Katalysator noch bleibt, bevor er ausgewechselt werden muss. Das Ergebnis selbst soll dem Nutzer in Form einer Web-Applikation angezeigt werden.

Eine zentrale Rolle nimmt hierbei ein sogenannter »Message Broker« ein. Dieser kann Nachrichten empfangen (z.B. Messdaten der Anlage) und diese an eine weitere Komponente weiterleiten (z.B. ML-Modell). Gleichzeitig muss die Web-Applikation auch auf Nachrichten (z.B. Ergebnis des ML-Modells) zugreifen und visualisieren können. Als Message Broker (Datentransport) wurde für die Applikation »MQTT« (Message Queuing Telemetry Transport) verwendet. Zur Auswertung der Messdaten wurde auf die im Fraunhofer Leitprojekt »ML4P« (engl. Machine Learning for Production, dt. Maschinelles Lernen in der Produktion) entwickelte Datenverarbeitungspipeline zurückgegriffen. Die dort entwickelte Software bietet die Möglichkeit, Komponenten zur Datenerfassung, -verarbeitung und -speicherung zu implementieren und über eine REST Schnittstelle zu starten, zu stoppen oder zu aktualisieren. Mithilfe der entwickelten Web-Applikation lassen sich Daten vom Message Broker abrufen und darstellen sowie einzelne Komponenten der ML4P-Verarbietungspipeline ansprechen.    

Die Datenverarbeitung als Pipeline-Diagramm

Pipeline-Diagramm

Das Pipeline-Diagramm (Abbildung links) zeigt ein Vorgehensmodell, in dem die Datenverarbeitung ganzheitlich im Sinne einer durchgängigen Verarbeitungskette veranschaulicht ist.

Im Folgenden sollen die ML4P-Pipelinekomponenten genauer erläutert werden:

  • Diese Komponente wird dazu genutzt, die vom Versuchsstand auf den Message Broker übertragenen Daten in eine Zeitreihendatenbank abzuspeichern. Wenn es sich um Versuchsdaten handelt, werden die Messdaten mit einem speziellen Tag versehen, sodass für die Entwicklung der ML-Komponente klar ist, für welche Daten zusätzliche Kontextinformationen vorliegen und somit zum Trainieren / Testen verwendet werden können.

  • Zum Entwickeln und Testen der einzelnen Komponenten der Web-Applikation und des ML-Modells ist es unerlässlich, dass auch historische Daten eingespielt werden können. Auf diese Weise lässt sich unabhängig vom Betrieb oder Nichtbetrieb der Anlage weiter an der Software schreiben.

  • Die Messdaten im Rohformat (blaue Linie) und geglättet/gefiltert (gelbe Linie)

    Die Systemarchitektur ist so aufgebaut, dass jeder Sensor der Versuchsanlage seine Messdaten auch auf ein eigenes »Topic« spielt. Das ML-Modell benötigt allerdings als Eingangsgröße einen Vektor. Die Datenaufbereitungskomponente wird dazu genutzt, genau diese Lücke zu schließen und den benötigten Eingangsvektor für das ML-Modell zu erstellen. Gleichzeitig erfolgt darin eine Tiefpassfilterung der Daten. An dieser Stelle sei nochmals auf die Messdaten hingewiesen (zweite Abbildung links), die im Rohformat sehr stark verrauscht sind (blaue Linie), durch eine entsprechende Filterung aber sehr gut geglättet werden können (gelbe Linie).

  • Diese Komponente enthält das entwickelte ML-Modell. Hier sei angemerkt, dass die Normalisierung der Messdaten in dieser Komponente und nicht in der Datenaufbereitung erfolgt.

  • Ausschnitt des Topic Trees
    Schema zur Datenübertragung

    MQTT nutzt sogenannte »Topics«, damit angebundene Clients Informationen gegenseitig austauschen können. Im Projekt wurden die Topics dazu genutzt, sowohl Messdaten als auch Kontextinformationen auszutauschen. Für die Sensoren wurden darüber z.B. die Einheiten übertragen und für die genutzten Komponenten hierüber die Parametrierung übermittelt. Die Abbildung links zeigt einen Ausschnitt des »Topic Trees« (Element der Benutzeroberfläche zum Auswählen und Suchen von Themen).

    Schema

    Beim Datenaustausch über einen Message Broker besteht immer die Gefahr, dass kein klares Schema definiert wurde und es so zu Instabilitäten kommt. Ein klassisches Beispiel ist, dass eine Komponente numerische Werte als Eingang benötigt, auf dem Message Broker allerdings plötzlich ein »string« (dt. Zeichenkette) vorliegt. Im besten Fall stürzt die Komponente daraufhin ab, im schlechtesten Fall führt die Komponente ein unkontrolliertes Verhalten aus. Zur Datenübertragung wurde daher festgelegt, dass die einzelnen Komponentendaten im JSON-Format mit den Schlüsseln »identifier« (Name des Sensor als string), »value« (Wert des Sensors als number) und »timestamp« (Zeitstempel in unix Zeit) übertragen werden müssen. Das beschrieben Schema ist links in der zweiten Abbildung zu erkennen.

  • Dashboard der Web-Applikation
    Detaillierte Ergebnisse des ML-Modells im separaten Tab

    Wie bereits erwähnt, wurde zur Überwachung der Versuchsanlage im Streaming-Betrieb sowie zum Starten und Stoppen der ML4P-Pipelinekomponenten eine Web-Applikation entwickelt. Darüber hinaus besteht mittels der Web-Applikation die Möglichkeit, auf das Strukturmodell der Versuchsanlage zuzugreifen, um so Kontextinformationen zu erhalten. In der entwickelten Version besteht die Web-Applikation auf ihrer Startseite zunächst aus einem Dashboard, welches die aktuellen Messwerte sowie die Restlebenszeit des Katalysators darstellt. Auf weitere Informationen, insbesondere bezüglich des ML-Modells, wurde bewusst verzichtet.

    Für detaillierte Ergebnisse des ML-Modells wurde in der Web-Applikation ein eigener Tab angelegt. Der Tab enthält zunächst eine Historie der prädizierten Lebenszeit. Ferner wird im verwendeten künstlichen neuronalen Netz noch der Wert des Gradienten abgegriffen. Hierüber lässt sich ablesen, welcher der verwendeten Sensoren den aktuell stärksten Einfluss auf das Prädiktionsergebnis hat. Durch diese Zusatzinformation können Prozessexpert*innen ableiten, auf welche Weise in den Prozess eingegriffen werden muss, um beispielsweise den Katalysator noch möglichst lange nutzen zu können oder um den Methanumsatz zu erhöhen.

    Künstliches neuronales Netz (KNN)

    Unter dem Abschnitt »Architektur des ML-Modells« der folgenden verlinkten Seite können Sie mehr zum neuronalen Netz erfahren:

    ML-Modell

Weitere Informationen

 

Projektseite
»PrädiKat«

Sie wollen mehr über das Projekt »PrädiKat« erfahren? Dann besuchen Sie die Projektseite und informieren Sie sich.

 

 

ML-Modell

Die Aufgabe des ML-Modells ist es, möglichst genau die Restlebenszeit des Katalysators vorherzusagen. Wie hierbei vorgegangen wird, erfahren Sie auf der Seite zum ML-Modell.

 

Versuchsstand

Mit dem Versuchsstand des Fraunhofer UMSICHT wird der typische Alterungsvorgang eines technischen Katalysators simuliert. Besuchen Sie die Seite zum Versuchsstand, um mehr zu erfahren.