TensorFlow Lite

TensorFlow Lite ist eine Reihe von Tools, die maschinelles Lernen auf dem Gerät ermöglichen und Entwickler dabei unterstützen, ihre Modelle auf mobilen, eingebetteten und Edge-Geräten auszuführen.

Wichtige Features

  • Für maschinelles Lernen auf dem Gerät optimiert, indem fünf wichtige Einschränkungen berücksichtigt werden: Latenz (kein Umlauf zum Server), Datenschutz (keine personenbezogenen Daten verlassen das Gerät), Konnektivität (keine Internetkonnektivität erforderlich), Größe (verringerte Modell- und Binärgröße) und Energieverbrauch (effiziente Inferenz und fehlende Netzwerkverbindungen).
  • Unterstützung mehrerer Plattformen, einschließlich Android- und iOS, eingebettetem Linux und Mikrocontrollern
  • Vielfältige Sprachunterstützung, einschließlich Java, Swift, Objective-C, C++ und Python.
  • Hohe Leistung mit Hardwarebeschleunigung und Modelloptimierung.

Entwicklungsworkflow

Die folgende Anleitung führt die einzelnen Schritte des Workflows durch und enthält Links zu weiteren Anleitungen:

1. TensorFlow Lite-Modell generieren

Ein TensorFlow Lite-Modell wird in einem speziellen effizienten portablen Format dargestellt, das als FlatBuffers bezeichnet wird und durch die Dateiendung .tflite identifiziert wird. Dies bietet mehrere Vorteile gegenüber dem Protokollpuffermodellformat von TensorFlow, wie eine geringere Größe (kleinerer Codebedarf) und eine schnellere Inferenz (direkter Zugriff auf Daten ohne zusätzlichen Analyse-/Entpackungsschritt), die es TensorFlow Lite ermöglichen, auf Geräten mit begrenzten Rechen- und Speicherressourcen effizient auszuführen.

Ein TensorFlow Lite-Modell kann optional Metadaten mit einer für Menschen lesbaren Modellbeschreibung und maschinenlesbaren Daten für die automatische Generierung von Vor- und Nachbearbeitungspipelines während On-Device-Inferenzen enthalten. Weitere Informationen finden Sie unter Metadaten hinzufügen.

Sie können ein TensorFlow Lite-Modell auf folgende Arten generieren:

  • Vorhandenes TensorFlow Lite-Modell verwenden:Informationen zum Auswählen eines vorhandenen Modells finden Sie unter TensorFlow Lite-Beispiele. Modelle können Metadaten enthalten oder nicht.

  • TensorFlow-Modell in ein TensorFlow Lite-Modell konvertieren:Verwenden Sie den TensorFlow Lite Converter, um ein TensorFlow-Modell in ein TensorFlow Lite-Modell zu konvertieren. Während der Konvertierung können Sie Optimierungen wie die Quantisierung anwenden, um die Modellgröße und -latenz mit minimalem oder gar keinem Genauigkeitsverlust zu reduzieren. Standardmäßig enthalten alle Modelle keine Metadaten.

2. Inferenz ausführen

Inferenz bezieht sich auf die Ausführung eines TensorFlow Lite-Modells auf dem Gerät, um anhand von Eingabedaten Vorhersagen zu treffen. Je nach Modelltyp können Sie Inferenzen auf folgende Arten ausführen:

Auf Android- und iOS-Geräten können Sie die Leistung durch die Hardwarebeschleunigung verbessern. Auf beiden Plattformen können Sie einen GPU-Delegaten und unter iOS den Core ML Delegate verwenden. Wenn Sie Unterstützung für neue Hardwarebeschleuniger hinzufügen möchten, können Sie Ihren eigenen Bevollmächtigten definieren.

Erste Schritte

Je nach Zielgerät können Sie die folgenden Anleitungen verwenden:

Technische Einschränkungen

  • Alle TensorFlow-Modelle können nicht in TensorFlow Lite-Modelle konvertiert werden. Weitere Informationen finden Sie unter Kompatibilität mit Operatoren.