Edge AI: TinyML und TensorFlow Lite – Teil 2

Mit dem KI-Framework TensorFlow Lite beziehungsweise TensorFlow Lite for Microcontrollers lassen sich KNN-Inferenzmodelle auch auf Kleinstgeräten ausführen.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Edge AI

Edge AI ist die Zukunft

(Bild: generiert mit DALL-E)

Lesezeit: 7 Min.
Von
  • Dr. Michael Stal
Inhaltsverzeichnis

Aufbauend auf den im ersten Teil der Artikelserie diskutierten KI-Grundlagen widmet sich der vorliegende Beitrag der praktischen Arbeit mit Künstlichen Neuronalen Netzen (KNNs) im Embedded-Umfeld und den dafür geeigneten Werkzeugen wie TinyML und TensorFlow Lite.

Während das Training von KNNs überwiegend auf schnellen Servern oder Desktops passiert, lässt sich durch zahlreiche Kniffe ein KNN-Inferenzmodell selbst auf Kleinstgeräten mit minimalen Ressourcen ausführen. Unter Kleinstgeräten sind zum Beispiel Mikrocontroller-Boards mit Leistungen im mW-Bereich, Stromstärken von wenigen mA, Speichergrößen oft weit unter 1 MByte sowie Taktfrequenzen von wenigen Dutzend bis einigen Hundert MHz zu verstehen, die auch batteriegetrieben arbeiten können.

Mehr zu KI auf Embedded Systemen
Der Pragmatische Architekt – Michael Stal

Prof. Dr. Michael Stal arbeitet seit 1991 bei Siemens Technology. Seine Forschungsschwerpunkte umfassen Softwarearchitekturen für große komplexe Systeme (Verteilte Systeme, Cloud Computing, IIoT), Eingebettte Systeme, und Künstliche Intelligenz. Er berät Geschäftsbereiche in Softwarearchitekturfragen und ist für die Architekturausbildung der Senior-Software-Architekten bei Siemens verantwortlich.

Dafür ist es nötig, das KNN möglichst kompakt abzulegen und für ausreichend Effizienz zu sorgen. Ein gangbarer Weg ist beispielsweise, speicherhungrige Datentypen wie Gleitkommazahlen so zu quantisieren, dass stattdessen Ganzzahlen an ihre Stelle treten. Durch diese und weitere Optimierungsmaßnahmen lassen sich zum einen Inferenzmodelle äußerst kompakt abspeichern und zum anderen Inferenzen selbst auf Mikrocontrollern performant durchführen. Genau dazu dient TinyML. Beispiele für TinyML-Anwendungen sind unter anderem das KI-Framework TensorFlow Lite / TensorFlow Lite for Microcontrollers und das Online-MLOps-Werkzeug Edge Impulse. Selbst auf Arduino-Boards lassen sich KNNs mit wenigen KByte Speicherbedarf abarbeiten, die zudem oft nur wenige Millisekunden für Vorhersagen benötigen. Im Folgenden betrachten wir dazu exemplarisch TensorFlow und Edge Impulse in Fallstudien.