Interview mit Dr. Fabian Bause, Beckhoff

»KI ist ein evolutionärer Prozess«

29. März 2021, 10:17 Uhr | Andrea Gillhuber

Fortsetzung des Artikels von Teil 1

Machine Learning in Echtzeit

Machine Learning in Echtzeit ist vor allem in der Produktion, wo sehr schnelle Prozesse ablaufen, eine Herausforderung und erfordert eine gewisse Rechenleistung. Wie lässt sich Machine Learning in Echtzeit-gesteuerten Anwendungen wie Motion-Applikationen dennoch nutzen?

Dr. Fabian Bause: Zunächst einmal ist wichtig zu erkennen, dass das Training von ML-Modellen erheblich mehr Zeit in Anspruch nimmt als die Ausführung (Inferenz) gelernter Modelle. Die Inferenz in TwinCAT läuft hardwareseitig auf unseren IPCs ab. Ein wesentlicher Aspekt für die effiziente Ausführung auf der CPU ist die konsequente Nutzung von SIMD-Befehlssatzerweiterungen in Kombination mit hochoptimiertem Speichermanagement im Cache. Darüber hinaus unterstützt der aktuelle Trend zu mehr und mehr Prozessorkernen pro CPU die beschleunigte Ausführung von Neuronalen Netzen, da sich diese sehr effizient parallelisieren lassen.

Darüber hinaus ist immer ein genauer Blick auf das trainierte Modell notwendig. Es ist genauso wie bei ‚von Hand geschriebenem‘ Quellcode. Viel und ggf. nicht effizienter Quellcode hat längere Ausführungszeiten als schlanker und optimierter Quellcode. Die trainierten ML-Modelle sollten immer der Aufgabe angepasst und optimiert sein. So ist es heute kein Problem, auch im Mikrosekunden-Bereich Neuronale Netze auszuführen. Ein gutes Beispiel ist das entsprechende Messeexponat, bei dem ein neuronales Netz vom Typ Multi-Layer-Perzeptron mit 250 Neuronen genutzt wird. Die Ausführungszeit auf einer Intel-Core-i3-CPU beträgt hier nur wenige Mikrosekunden unter Verwendung unserer hochoptimierten Inferenzmaschine. Somit erwarten wir keine großen Hindernisse hinsichtlich der Rechenleistung bei der Nutzung von ML in der Bildverarbeitung und im Motion-Bereich.

Wann sollte Machine Learning in die Applikation optimalerweise integriert werden – bereits in der Applikationsentwicklung oder erst im Betrieb?

Dr. Fabian Bause: Wie eingangs erwähnt ist ein ML-Projekt ein evolutionärer Prozess und sollte möglichst früh in der Wertschöpfungskette beim Maschinenbauer beginnen. Nicht bei jeder Applikation wird direkt bei der Inbetriebnahme einer Maschine beim Endkunden eine optimale Lösung existieren. Während der Maschinenlaufzeit können neue relevante Daten erhoben und ausgewertet werden. So lässt sich ein ML-Modell ständig verbessern. Um diesen Prozess technisch zu unterstützen, hat Beckhoff seine Inferenzmaschine so aufgebaut, dass sie ohne TwinCAT-Stopp und ohne Kompilieren von Quellcode – also zur Laufzeit der Maschine – neu erstellte Modelle laden kann.

In vielen Anwendungsfällen ist bereits eine Maschine mit einer Steuerung vorhanden, welche keine ML-Funktionalität beinhaltet. Die Maschinenbetreiber möchten ihre Produktion optimieren und erwägen aus dieser Überlegung heraus nun vermehrt auch den Einsatz von ML. In diesen Fällen spielt ein offenes Steuerungskonzept eine entscheidende Rolle: Durch ihre zahlreichen Schnittstellen ist auch die nachträgliche Integration einer TwinCAT-Steuerung in das vorhandene Steuerungskonzept kein Hindernis. Das war beispielsweise bei unserem ersten Kunden für TwinCAT Machine Learning der Fall: Hier war, und ist weiterhin, eine Fremdsteuerung im Einsatz. Hinzugekommen ist ein Embedded-PC von Beckhoff mit TwinCAT 3, der auf die wesentlichen Daten aus der Fremdsteuerung lesend zugreifen kann und in der TwinCAT-Umgebung die Inferenz zur Realisierung einer Qualitätskotrolle beherbergt.

Das A und O verlässlicher ML-Anwendungen ist die Datenbasis. Wie erfolgt die Auswahl der Trainingsdaten in TwinCAT Machine Learning? Wird ein Data Scientist benötigt?

Dr. Fabian Bause: Ein ML-Projekt ist Teamarbeit, wobei sich das Projektteam aus unterschiedlichen Experten zusammensetzt. Zentrale Person ist der Domänenexperte, also z. B. der Maschinenbauer bzw. der Experte für lineare Antriebe oder den Umformprozess. Er stellt sich einer Herausforderung, die er mittels Machine Learning lösen möchte, hat also ein Ziel vor Augen und kennt die Zusammenhänge in seiner Maschine. Zusammen mit einem Data Scientist, der sich hauptsächlich um die Datenanalyse kümmert, sind wesentliche Maschinengrößen festzulegen, welche für das definierte Ziel von Bedeutung sein können. Der Data Scientist arbeitet immer eng mit dem Domänenexperten zusammen, um die Bedeutung bestimmter Datenmuster und Verhalten zu beleuchten. Ein Data Scientist allein, ohne Feedback zum Domänenexperten, kann nur unzureichend agieren.

Bei Beckhoff agieren wir an dieser Stelle mit unseren Kunden flexibel und maßgeschneidert auf deren individuelle Situation. Einige Maschinenbauer verfügen bereits über Data-Science-Abteilungen, ggf. auch nur als One-Man-Show, und übernehmen diese Aufgabe. Andere benötigen deutliche Hilfestellung, die wir leisten können. Natürlich kontaktieren uns auch Kunden und fragen nach einer Dienstleistung – also einem ‚Rund-um-Sorglospaket‘ für die Aufgaben des Data Scientist. In solchen Fällen greifen wir gern auf unser etabliertes Netzwerk an spezialisierten Partnerunternehmen zurück und stellen die passende Verbindung her.


  1. »KI ist ein evolutionärer Prozess«
  2. Machine Learning in Echtzeit
  3. ML-Modelle trainieren und schützen

Das könnte Sie auch interessieren

Verwandte Artikel

Beckhoff Automation GmbH

Künstliche Intelligenz