Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

TensorFlow Lite für Mikrocontroller

TensorFlow Lite für Mikrocontroller wurde entwickelt, um maschinelle Lernmodelle auf Mikrocontrollern und anderen Geräten mit nur wenigen Kilobyte Speicher auszuführen. Die Kernlaufzeit passt nur in 16 KB auf einem Arm Cortex M3 und kann viele Grundmodelle ausführen. Es erfordert keine Betriebssystemunterstützung, keine Standard-C- oder C ++ - Bibliotheken oder keine dynamische Speicherzuweisung.

Warum Mikrocontroller wichtig sind

Mikrocontroller sind in der Regel kleine Computergeräte mit geringem Stromverbrauch, die in Hardware eingebettet sind, für die grundlegende Berechnungen erforderlich sind. Indem wir maschinelles Lernen auf winzige Mikrocontroller übertragen, können wir die Intelligenz von Milliarden von Geräten steigern, die wir in unserem Leben verwenden, einschließlich Haushaltsgeräten und Internet-of-Things-Geräten, ohne auf teure Hardware oder zuverlässige Internetverbindungen angewiesen zu sein, die häufig Bandbreite und Bandbreite unterliegen Leistungsbeschränkungen und führt zu hoher Latenz. Dies kann auch zur Wahrung der Privatsphäre beitragen, da keine Daten das Gerät verlassen. Stellen Sie sich intelligente Geräte vor, die sich an Ihren Alltag anpassen können, intelligente Industriesensoren, die den Unterschied zwischen Problemen und normalem Betrieb verstehen, und magisches Spielzeug, mit dem Kinder auf unterhaltsame und unterhaltsame Weise lernen können.

Unterstützte Plattformen

TensorFlow Lite für Mikrocontroller ist in C ++ 11 geschrieben und erfordert eine 32-Bit-Plattform. Es wurde ausführlich mit vielen Prozessoren getestet, die auf der Architektur der Arm Cortex-M-Serie basieren, und wurde auf andere Architekturen einschließlich ESP32 portiert. Das Framework ist als Arduino-Bibliothek verfügbar. Es kann auch Projekte für Entwicklungsumgebungen wie Mbed generieren. Es ist Open Source und kann in jedes C ++ 11-Projekt aufgenommen werden.

Folgende Entwicklungsboards werden unterstützt:

Entdecken Sie die Beispiele

Jede Beispielanwendung befindet sich auf Github und verfügt über eine README.md Datei, in der erläutert wird, wie sie auf den unterstützten Plattformen bereitgestellt werden kann. Einige Beispiele enthalten auch End-to-End-Tutorials, die eine bestimmte Plattform verwenden, wie unten angegeben:

Arbeitsablauf

Die folgenden Schritte sind erforderlich, um ein TensorFlow-Modell auf einem Mikrocontroller bereitzustellen und auszuführen:

  1. Trainiere ein Modell :
    • Generieren Sie ein kleines TensorFlow-Modell , das auf Ihr Zielgerät passt und unterstützte Vorgänge enthält.
    • Konvertieren Sie mit dem TensorFlow Lite-Konverter in ein TensorFlow Lite-Modell .
    • Konvertieren Sie mit Standardwerkzeugen in ein C-Byte-Array , um es in einem schreibgeschützten Programmspeicher auf dem Gerät zu speichern.
  2. Führen Sie mithilfe der C ++ - Bibliothek eine Inferenz auf dem Gerät aus und verarbeiten Sie die Ergebnisse.

Einschränkungen

TensorFlow Lite für Mikrocontroller wurde für die spezifischen Einschränkungen der Mikrocontrollerentwicklung entwickelt. Wenn Sie an leistungsstärkeren Geräten arbeiten (z. B. einem eingebetteten Linux-Gerät wie dem Raspberry Pi), ist das Standard-TensorFlow Lite-Framework möglicherweise einfacher zu integrieren.

Die folgenden Einschränkungen sollten berücksichtigt werden:

  • Unterstützung für eine begrenzte Teilmenge von TensorFlow-Operationen
  • Unterstützung für eine begrenzte Anzahl von Geräten
  • Low-Level-C ++ - API, die eine manuelle Speicherverwaltung erfordert
  • On-Device-Training wird nicht unterstützt

Nächste Schritte