Anzeige

Embedded Machine Learning: Trainieren statt programmieren

Embedded-Systeme per Supervised Machine Learning für eine bestimmte Aufgabenstellung zu trainieren anstatt den gewünschten Zusammenhang zwischen den jeweiligen Eingangs- und Ausgangsdaten anhand wissensbasierter Regeln in einer Hochsprache zu codieren, ist für viele Anwendungen inzwischen die deutlich effektivere Alternative.

“ Mit Supervised-Machine-Learning-Algorithmen lassen sich innovative und preiswerte Sensorlösungen mit eingebetteten Systemen schaffen, in denen der Zusammenhang zwischen Eingangs- und Ausgangsgrößen aus Historiendaten gelernt wird. (Bild: SSV Software Systems GmbH)

“ Der Einsatz von Machine Learning für eine Embedded-System-Anwendung besteht aus zwei Phasen. In einer Trainingsphase werden aus den zum Embedded System gehörenden Sensoren zunächst Historiendaten erzeugt, die anschließend zur Modellung genutzt werden. (Bild: SSV Software Systems GmbH)

Die Problematik

In unzähligen eingebetteten Systemen wird eine in speziellen Hochsprachen erstellte Firmware genutzt, die den jeweils gewünschten Zusammenhang zwischen Ein- und Ausgangssignalen anhand von statischen Regeln herstellt, die auf lexikalischem Wissen basieren. Ein typischer Anwendungsfall aus dem Predictive-Maintenance-Umfeld wäre beispielsweise eine komplexe Sensorikapplikation zur Zustandsüberwachung eines elektrischen Antriebs mit Hilfe von triaxialen Beschleunigungs- und Winkelgeschwindigkeitssensoren: Die Embedded-Systems-Firmware im Sensorsystem verarbeitet die analogen Rohdaten der einzelnen Sensorelemente und liefert anhand eines programmierten regelbasierten Messverfahrens (welche Frequenzen und Amplituden sind jeweils zulässig?) das gewünschte digitale Ausgangssignal. Klassische Firmware-Entwicklungen für komplexe Embedded Systeme sind aufwändig und über die gesamte Produktlebensdauer betrachtet, relativ inflexibel. Jede noch so kleine Änderung der Anforderungen löst einen neuen Entwicklungszyklus aus. Durch die zahlreichen Weiterentwicklungen im Bereich der künstlichen Intelligenz (KI) ist nun ein weiterer Lösungsansatz möglich: Zwischen die Ein- und Ausgangsdaten eines Mikrorechners wird ein lernfähiger (Machine Learning) Algorithmus geschaltet und mittels spezieller Trainingsdaten für eine bestimmte Aufgabenstellung konfiguriert. Dabei entsteht ein mathematisches Modell, das den jeweiligen Zusammenhang der Ein- und Ausgänge abbildet. Anforderungsänderungen werden durch eine erneute Trainingsphase und mit Hilfe zusätzlicher Referenzdaten umgesetzt. Grundsätzlich lässt sich mit dieser Vorgehensweise jedes Problem, dessen Zusammenhang zwischen Ein- und Ausgängen durch ein mathematisches Modell beschreibbar ist, lösen.

“ Durch einen ‚Trainieren statt programmieren‘ Lösungsansatz lassen sich z.B. universell nutzbare Machine-Learning-basierte Sensorkonzepte für das Machine Condition Monitoring realisieren. (Bild: SSV Software Systems GmbH)

Varianten des maschinellen Lernens

Da die wesentlichen Grundlagen der künstlichen Intelligenz und des maschinellen Lernens aus den 50er Jahren stammen, gibt es mittlerweile eine schwer überschaubare Algorithmenvielfalt. Insgesamt lässt sich das maschinelle Lernen in drei Bereiche gliedern:

Supervised Learning: Überwachtes maschinelles Lernen. Die meisten der gegenwärtig in der Praxis genutzten Machine-Learning-Algorithmen, wie zum Beispiels CNNs (Convolutional Neural Networks) gehören zu dieser Kategorie. Bei diesem Verfahren ist der Zusammenhang zwischen den Eingangs- und Ausgangsgrößen anhand von Historiendaten im Vorfeld bekannt. Insofern haben wir es mit einem Mapping der Eingangsdaten auf den Ausgang zu tun, wie es auch bei unzähligen klassischen Embedded-System-Programmieraufgaben der Fall ist. Der jeweils zum Einsatz kommende Algorithmus muss zunächst trainiert werden. Dabei entsteht ein Modell. Für die Trainingsphase werden gelabelte (Historien-) Daten benötigt. Bei einer sinnvollen Abstimmung zwischen den Daten und dem jeweils gewählten Algorithmus sowie einer ausreichenden Trainingsdatenmenge von guter Qualität lassen sich anschließend mit Hilfe bisher unbekannter Datenwerte relativ genaue diskrete Klassifizierungs- oder kontinuierliche Regressionswerte vorhersagen. Typische Anwendungsbeispiele für überwachtes Lernen sind die Objekterkennung in Bilddaten (Mustererkennung) und die Vorhersage des Energiebedarfs einer Maschine. Die in der Trainingsphase des Supervised Machine Learnings entstehenden Modelle sind statisch und müssen bei Bedarf durch ein erneutes Training an veränderte Bedingungen angepasst werden.

Unsupervised Learning: Unüberwachtes maschinelles Lernen. Dieses Verfahren wird bei Bedarf auf Daten mit unbekannten Zusammenhängen angewendet, um in den Eingangsdaten mit Rechnerunterstützung nach Mustern (Clustern) und den Grenzen zwischen den gefundenen Clustern zu suchen. Insofern spricht man bei dieser Kategorie des maschinellen Lernens auch häufig von Clusteranalysen, also der Zuordnung der vorliegenden Datenpunkte zu bestimmten Gruppen (den Clustern). Die in der Mathematik zur Verfügung stehenden Methoden nutzen unterschiedliche Ansätze, wie z.B. das prototypische Bilden von Cluster-Zentren in einem n-dimensionalen kontinuierlichen Raum (K-means-Methodik) oder dichtebasierte Regionen als Zentrum eines möglichen Clusters (DBSCAN-Algorithmus). Darüber hinaus gibt es auch noch hierarchische Clusterverfahren. Die gefundenen Ähnlichkeitsstrukturen und die per Clusteranalyse festgelegten Gruppen können in der Praxis als Vorlage zum Labeln der bisher unbekannten Daten für ein anschließendes Supervised Machine Learning dienen.

Reinforcement Learning: Bestärkendes maschinelles Lernen. Beim Reinforcement Learning (RL) steht die Interaktion eines lernenden Agenten mit seiner Umwelt im Mittelpunkt. Mit Hilfe des RL können Computer nicht nur Brettspiele wie Schach oder Go gewinnen. Diese Methodik des maschinellen Lernens spielt inzwischen auch für Embedded Systeme in der Robotik und bei autonom agierenden Logistiksystemen, z.B. vollautonome Flurförderzeuge wie Gabelstapler eine sehr wichtige Rolle. Des Weiteren nutzen Staubsaug- oder Rasenmähroboter im Haus oder Garten beispielsweise den zum RL gehörenden Q-Learning-Algorithmus, um ohne fremde Hilfe den Weg zur Ladestation zu finden usw. Die Zusammenhänge beim RL sind relativ einfach: Die Umwelt des Agenten, die von diesem beeinflusst werden kann, besitzt eine bestimmte Anzahl von Zuständen. Jede Aktion des Agenten führt zu einem anderen Umweltzustand, für den der Agent als ´Reinforcement´ eine Belohnung erhält – z.B. einen Wert zwischen 0 und 100. Anhand der Belohnungsintensität kann der Algorithmus selbstständig eine Strategie mit der besten Abfolge von Schritten erlernen, die zum jeweiligen Ziel führt. Genaugenommen könnte man das Reinforcement Learning auch dem unüberwachten maschinellen Lernen zuordnen. Auf Grund der völlig unterschiedlichen Algorithmen und Daten, die vor dem Lernen zur Verfügung stehen müssen, wird allerdings das maschinelle Lernen in drei Teilgebiete gegliedert.

Empfehlungen der Redaktion

Das könnte Sie auch interessieren

Warum MQTT im IIoT so erfolgreich ist und was man vor dem Einsatz des Übertragungsprotokolls wissen sollte, erläutert der folgende Beitrag.‣ weiterlesen

Anzeige

Markforscher rechnen mit einem Anstieg des weltweiten Datenvolumens auf 175 Zettabyte im Jahr 2025. Über die Hälfte soll dann von vernetzten Applikationen im IoT und der Industrie 4.0 ausgehen. Zusammen mit Edge- und Fog-Technologien sorgen Computer-on-Module (COM), Single-Board-Computer (SBC) und entsprechende Software dafür, die Rechenleistung effizient, schnell und flexibel zur Verfügung zu stellen.‣ weiterlesen

Anzeige

Sei es der Kühlschrank, der meldet, wenn die Milch alle ist, oder der Thermostat, der Nutzungsstatistiken aufs Smartphone sendet: Verschiedenste Produkte, die traditionell nicht über eine Netzwerkverbindung verfügten, werden mittlerweile damit ausgestattet.‣ weiterlesen

Comp-Mall stellt den Embedded-Computer Modell DS-1202 vor. Das System bietet zwei PCI/PCIe-Steckplätze und damit Flexibilität wie ein 19"-System.‣ weiterlesen

Vision-App-basierte Industriekameras der künftigen IDS NXT Familien Rio und Rome sind bereits KI-Ready. Eine von IDS entwickelte KI-Vision-App macht sie zur energieeffizienten, aber dennoch leistungsstarken Inferenzkamera mit integriertem KI-Beschleuniger. Mit vorhandenen neuronalen Netzen können damit vielfältige, KI-basierte Bildverarbeitungsaufgaben in kurzer Zeit realisiert werden.‣ weiterlesen

Fix und fertig: Fest an Maschinen installierte Panel-PCs waren jahrzehntelang der Standard für Maschinensteuerung und -wartung als HMI. Zunehmend experimentieren Unternehmen nun erfolgreich mit einem neuen Konzept.‣ weiterlesen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige