Künstliche Intelligenz Embedded-KI: Aktuelle Trends und Herausforderungen

Von Christoph Stockhammer* Lesedauer: 7 min |

Anbieter zum Thema

Edge-KI und eingebettete Intelligenz sind aktuell wichtige Themen für Entwickler im Embedded-Sektor. Welche Trends und Herausforderungen es für Ingenieure und Unternehmen gibt, beleuchten wir in diesem Artikel.

KI-Modelle spielen eine bedeutende Rolle in vielen Anwendungen, nicht zuletzt bei Lösungen für assistiertes oder gar autonomes Fahrens.
KI-Modelle spielen eine bedeutende Rolle in vielen Anwendungen, nicht zuletzt bei Lösungen für assistiertes oder gar autonomes Fahrens.
(Bild: Mathworks)

Edge AI“, „Embedded AI“, „Embedded Intelligence” – viele dieser Begriffe werden aktuell häufig zitiert und weitgehend synonym verwendet. Die Idee ist in der Tat immer ähnlich: Ein KI-Modell (beispielsweise, aber nicht notwendig ein neuronales Netzwerk) wird auf Basis von gesammelten und/oder simulierten Daten trainiert. Dieses Modell soll im Anschluss daran auf ein Embedded System (z.B. Microcontroller/Mikroprozessor, System-on-Chip, usw.) portiert werden.

In vielen Fällen soll das Modell nach erfolgreichem Training statisch bleiben, d.h. es werden keine weiteren Änderungen am Modell vorgenommen. In anderen Fällen soll das Modell auf der Hardware auf Basis eingehender Sensordaten weiter lernen („Incremental Learning“).

Bildergalerie
Bildergalerie mit 5 Bildern

Anwendungsbeispiele reichen von virtuellen Sensoren (auch “Softsensor” genannt) und Anwendungen des autonomen Fahrens über Zustandsüberwachung von kritischen Komponenten und Systemen bis hin zu kameragestützter Objekterkennung oder Qualitätskontrolle in Produktionslinien. Der Themenkomplex künstliche Intelligenz ist nach wie vor sehr dynamisch, unter anderem lassen sich aber folgende vier Trends ausmachen:

1. Physikgestützte KI: Maschinen lernen die reale Welt kennen. Mit den meisten datenorientierten KI-Modellen wird versucht, sie im Hinblick auf die höchste Genauigkeit lediglich anhand der vorhandenen Daten zu optimieren. So können Modelle völlig ohne Kenntnis von physikalischen Gesetzen der realen Welt Zusammenhänge erlernen.

Vielfach hat man aber eben doch Informationen zur Physik und Dynamik der Systeme zur Hand – zumindest teilweise oder für bestimmte Komponenten des Gesamtsystems. Die Ansätze, beide Welten zu kombinieren – Daten und Physik – etwa über neural ODEs (ordinary differential equations) oder auch PINNS (physics-informed neural networks) haben gewaltiges Potenzial und zeigen bereits heute sehr vielversprechende Resultate.

2. Notwendigkeit der Zusammenarbeit: Der freie Zugang zu KI bleibt von zentraler Bedeutung.Forscher, Ingenieure und Datenwissenschaftler profitieren zunehmend von der Arbeit der jeweils anderen, um Innovationen hervorzubringen. Die neuesten Trends bei den Workflows und Verantwortlichkeiten von Ingenieuren, einschließlich der branchenweiten Verbreitung von Open-Source-Lösungen, erfordern noch mehr Zusammenarbeit.

3. Minimallösung: Unternehmen konzentrieren sich auf kleinere, leichter zu erklärende KI-Modelle. Wenn Ingenieure und Wissenschaftler Modelle zum ersten Mal untersuchen, ist Genauigkeit der wichtigste Antriebsfaktor, während die Abwägung anderer Modelleigenschaften möglicherweise nicht im Mittelpunkt steht.

Allerdings stellen KI-Anwender nun fest, dass Modelle bereitgestellt, an die Hardware angepasst werden und einfach erklärbare Entscheidungen liefern müssen, damit sie gewinnbringend einsetzbar werden. Ein zunehmender Trend ist die Verwendung traditioneller Machine-Learning-Modelle, um die Anforderungen von kostengünstigen Geräten mit geringem Stromverbrauch und erklärbaren Ausgaben zu erfüllen.

4. Zunehmende Bedeutung: KI wird entscheidend für die Entwicklung und den Betrieb moderner technischer Systeme. Es wird zunehmend unwahrscheinlich, dass eine bahnbrechende technische Innovation völlig ohne KI auskommt. KI wird sich weiterhin auf etablierte Forschungsgebiete auswirken, darunter insbesondere solche, in denen Zeitreihen- und Sensordaten verwendet werden. Da KI sich immer stärker in allen Branchen und Anwendungen durchsetzt, werden komplexe technische Systeme ohne KI zur Ausnahme.

Gerade in größeren Unternehmen werden die KI-Modelle sehr häufig von einer Gruppe von Personen erstellt, diese Modelle aber dann für die Implementierung auf der Zielhardware an eine andere Gruppe übergeben. Auf der einen Seite findet man eher Data Scientists und Softwareentwickler, auf der anderen Seite eher Hardwareingenieure. In der Praxis kann diese Situation, aber auch andere Faktoren, zu vielfältigen Herausforderungen führen, von denen drei besonders herausgestellt werden können:

  • 1. Veränderliche Kriterien für die Bewertung der Modellgüte im Entwicklungsprozess
  • 2. Sprachbarriere: Die Trainingsumgebung ist häufig in anderen Programmiersprachen implementiert als die Hardwareumgebung
  • 3. Absicherung und Verifikation

Veränderliche Kriterien für die Bewertung der Modellgüte im Entwicklungsprozess

Die Auswahl der Vorverarbeitungsalgorithmen und das eigentliche Modelltraining sind häufig Aufgabe von Data Scientists, meist mit Fokus auf Genauigkeit bzw. Robustheit, ausgedrückt durch Metriken wie der Fehlernorm (Root Mean Square Error RMSE, im Falle einer Regression) oder einer Receiver-Operator-Charakteristik (ROC, im Falle einer Klassifikation).

Die für die Portierung auf die Zielplattform verantwortlichen Ingenieure müssen für eine erfolgreiche Umsetzung aber auch noch viele andere Kriterien berücksichtigen, wie Energie- und Speicherverbrauch, Prozessor-Taktfrequenzen, u.U. Fixed-Point Arithmetik, Verfügbarkeit von optimierten Bibliotheken für spezifische Hardware, usw. Das kann im schlimmsten Fall dazu führen, dass bereits trainierte und mitunter hochperformante Modelle wieder verworfen werden müssen, weil sie auf der angedachten Zielhardware schlicht gar nicht ausführbar sind oder zu langsam wären. An dieser Stelle kann frühes Testen (etwa mittels PIL = Processor-in-the-Loop) von Algorithmen extrem hilfreich für eine Machbarkeitsbewertung sein.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Sprachbarriere

Das Training der KI wird in aller Regel in einer anderen Programmiersprache implementiert als die Umsetzung in der Hardware. Modelle aus der Trainingsumgebung können aber nicht ohne weiteres einfach auf der Zielhardware ausgeführt werden. Auf der Trainingsseite dominieren Skriptsprachen wie Python (TensorFlow, PyTorch) oder MATLAB (Deep Learning Toolbox), auf der Hardware ist in aller Regel immer noch C bzw. C++ die Sprache der Wahl. Für diesen Übergang gibt es verschiedene Strategien, z.B. Laufzeit-Interpreter (etwa TensorFlow Lite), Machine Learning Compiler Frameworks wie Apache TVM oder die automatische Codegenerierung in MATLAB/Simulink. Die Unterstützung einer immer weiterwachsenden Anzahl von Modellarchitekturen bleibt für alle Strategien eine Herausforderung.

Tatsächlich greift es aber immer noch zu kurz, sich rein auf die KI-Modelle zu fokussieren, denn es muss nicht nur das Modell in C bzw. C++ umgesetzt werden, sondern auch die zugehörige Datenvorverarbeitung (und manchmal auch Nachverarbeitung), zudem sehr häufig auch eine Anbindung an Sensoren. Darüber hinaus muss das KI-Modell meist in einen größeren Kontext, wie ein bestehendes Softwareprojekt, integriert werden. Das kann einen nicht zu unterschätzenden Integrations- und Implementierungsaufwand bedeuten. Effektiv existieren somit immer zwei Versionen der Software: Eine in der Trainingsumgebung, eine für die Zielplattform. Die beiden Versionen müssen aber immer synchronisiert bleiben, d.h. Änderungen auf der Trainingsseite (z.B. ein zusätzlicher Vorverarbeitungsschritt) müssen auch auf der Hardware entsprechend abgebildet werden – was zeitaufwändig sein kann.

Absicherung

Im übertragenen Sinn ist die Trainingsumgebung für KI-Algorithmen eine Art Sandkasten. Hier kann das Modell lernen, es kann auch (und soll manchmal sogar) Fehler machen, um daraus zu lernen und immer besser zu werden. Innerhalb des Sandkastens kann das Modell keinerlei Schaden anrichten.

Das ändert sich mit der Implementierung auf der Hardware drastisch: Hier werden die Vorhersagen des Modells in irgendeiner Form Einfluss auf real existierende Systeme haben. Eine falsche Vorhersage eines notwendigen Wartungszyklus durch ein KI-Modell etwa könnte hohe zusätzliche Reparaturkosten bedeuten.

Wie aber lässt sich formal beweisen, dass das Modell, das tut, was es tun soll? Wie können objektiv überprüfbare Kriterien definiert werden, denen das Modell genügen muss, um als sicher zu gelten? In anderen Szenarien wird darüber hinaus die Frage relevant, ob das Modell ohne Vorurteile (z.B. bzgl. des Geschlechts einer Person) seine Vorhersagen trifft.

Dieser Themenkomplex bleibt weiterhin ein aktiver Forschungsbereich. Eine nicht unwahrscheinliche Möglichkeit ist, dass zunehmend auch wieder einfachere Modellarchitekturen an Popularität gewinnen – siehe Trend 3 oben. Auch wenn diese einfacheren Modelle nicht ganz dieselbe Vorhersagegüte erreichen wie beispielsweise komplexe tiefe neuronale Netzwerke, haben simplere Modelle häufig den Vorteil, dass sich gewisse Eigenschaften mathematisch stringent nachweisen lassen. Ein Beispiel dafür wäre etwa ein Beweis, dass die Vorhersagen des KI-Modells garantiert in einem gewissen Bereich bleiben, unter der Voraussetzung, dass auch die Eingangswerte in einen begrenzten Wertebereich fallen. Das kann dann für eine Zertifizierung des Algorithmus herangezogen werden: Das Modell kann mathematisch gesehen gar nicht zu stark „aus dem Ruder laufen“, bzw. der maximale Fehler ist berechenbar und bleibt damit beherrschbar.

Ausblick in die Zukunft

Unterschiedliche KI-Plattformen verfolgen unterschiedliche Strategien für die Portierung trainierter Modelle und zugehöriger Datenvor- und Nachverarbeitung auf die Zielhardware. Optimierungstechniken wie Modellkompression, (teilweise) parallelisierte Ausführung, Verwendung von hardware-spezifischen optimierten Bibliotheken für höhere Ausführungsgeschwindigkeit (z.B. bei Matrixmultiplikationen, die vielen KI-Modellen zugrunde liegen) spielen eine zunehmende Rolle. Es gibt derzeit noch massive Unterschiede, welche Art von Optimierung für welche Art von Modell und welche Art von Hardware zur Verfügung steht. Hier ist in den kommenden Jahren eine Konsolidierung des Marktes zu erwarten.

Es rückt auch zunehmend ins Bewusstsein, dass die Berücksichtigung der geplanten Zielhardware früher im Designprozess von entscheidender Bedeutung ist (hardware-aware model development): Es ist schlicht zu kostspielig und zeitintensiv, Modelle zu trainieren, die vielleicht hochgenau und robust sind, nur um später festzustellen, dass diese auf der geplanten Hardware nicht (sinnvoll) ausführbar sind oder auch nur deshalb nicht einsetzbar sind, weil sie anderen, zeitgleich laufenden Software-Komponenten zu viele Rechenressourcen wegnehmen würden.

Weiter steht Embedded AI wie KI im Allgemeinen noch vielfach vor offenen Fragen im Bereich der Verifikation und Absicherung. Mit einem weiteren Vordringen von KI zunehmend auch in sicherheitsrelevantere Bereiche werden diese Fragen stärker in den Fokus rücken und die Jagd nach dem letzten Prozent an Genauigkeit in der Vorhersage vielleicht etwas mehr in den Hintergrund treten. (me)

Christoph Stockhammer
Christoph Stockhammer ist Application Engineer bei Mathworks.

Bildquelle: Mathworks

(ID:49263746)