TensorFlow Lite Roadmap

Aktualisiert: Mai 2021

Das Folgende gibt einen allgemeinen Überblick über unsere Roadmap. Sie sollten sich bewusst sein, dass sich diese Roadmap jederzeit ändern kann und die folgende Reihenfolge keine Priorität widerspiegelt.

Wir unterteilen unsere Roadmap in vier Schlüsselsegmente: Benutzerfreundlichkeit, Leistung, Optimierung und Portabilität. Wir empfehlen Ihnen dringend, unsere Roadmap zu kommentieren und uns in der TensorFlow Lite-Diskussionsgruppe Feedback zu geben.

Benutzerfreundlichkeit

  • Erweiterte Ops-Abdeckung
    • Fügen Sie gezielte Operationen basierend auf dem Feedback der Benutzer hinzu.
    • Fügen Sie gezielte Operationssets für bestimmte Domänen und Bereiche hinzu, einschließlich Zufallsoperationen, Basis-Keras-Layer-Operationen, Hash-Tabellen und ausgewählten Trainingsoperationen.
  • Hilfreichere Werkzeuge
    • Bereitstellung von TensorFlow-Diagrammanmerkungen und Kompatibilitätstools zur Überprüfung der Kompatibilität von TFLite und Hardwarebeschleunigern während des Trainings und nach der Konvertierung.
    • Ermöglichen Sie das Targeting und Optimieren für bestimmte Beschleuniger während der Konvertierung.
  • On-Device-Training
    • Unterstützung von On-Device-Schulungen für Personalisierung und Transferlernen, einschließlich eines Colab, der die End-to-End-Nutzung demonstriert.
    • Unterstützt Variablen- / Ressourcentypen (sowohl für Inferenz als auch für Training)
    • Unterstützt das Konvertieren und Ausführen von Diagrammen mit mehreren Funktions- (oder Signatur-) Einstiegspunkten.
  • Verbesserte Android Studio-Integration
    • Ziehen Sie TFLite-Modelle per Drag & Drop in Android Studio, um Modellschnittstellen zu generieren.
    • Verbessern Sie die Unterstützung für Android Studio-Profilerstellung, einschließlich Speicherprofilerstellung.
  • Modellbauer
    • Unterstützen Sie neuere Aufgaben, einschließlich Objekterkennung, Empfehlung und Audioklassifizierung, und decken Sie eine breite Sammlung allgemeiner Verwendungszwecke ab.
    • Unterstützen Sie mehr Datensätze, um das Transferlernen zu vereinfachen.
  • Aufgabenbibliothek
    • Unterstützt mehr Modelltypen (z. B. Audio, NLP) mit zugehörigen Vor- und Nachbearbeitungsfunktionen.
    • Aktualisieren Sie weitere Referenzbeispiele mit Task-APIs.
    • Unterstützung der sofort einsatzbereiten Beschleunigung für alle Aufgaben.
  • Weitere SOTA-Modelle und Beispiele
    • Fügen Sie weitere Beispiele hinzu (z. B. Audio, NLP, Strukturdaten), um die Modellnutzung sowie neue Funktionen und APIs für verschiedene Plattformen zu demonstrieren.
    • Erstellen Sie gemeinsam nutzbare Backbone-Modelle für das Gerät, um die Schulungs- und Bereitstellungskosten zu senken.
  • Nahtlose Bereitstellung auf mehreren Plattformen
    • Führen Sie TensorFlow Lite-Modelle im Web aus.
  • Verbesserte plattformübergreifende Unterstützung
    • Erweitern und verbessern Sie APIs für Java unter Android, Swift unter iOS und Python unter RPi.
    • Verbessern Sie die CMake-Unterstützung (z. B. eine breitere Beschleunigerunterstützung).
  • Bessere Frontend-Unterstützung
    • Verbessern Sie die Kompatibilität mit verschiedenen Authoring-Frontends, einschließlich Keras, tf.numpy.

Performance

  • Besseres Werkzeug
    • Öffentliches Dashboard zur Verfolgung von Leistungssteigerungen mit jeder Version.
    • Tools zum besseren Verständnis der Grafikkompatibilität mit Zielbeschleunigern.
  • Verbesserte CPU-Leistung
    • XNNPack ist standardmäßig für eine schnellere Gleitkomma-Inferenz aktiviert.
    • End-to-End-Unterstützung mit halber Genauigkeit (float16) mit optimierten Kerneln.
  • Aktualisierte NN-API-Unterstützung
    • Volle Unterstützung für neuere NN-API-Funktionen, -Ops und -Typen der Android-Version.
  • GPU-Optimierungen
    • Verbesserte Startzeit durch Unterstützung der Delegatenserialisierung.
    • Hardware-Puffer-Interop für Nullkopie-Inferenz.
    • Höhere Verfügbarkeit von Gerätebeschleunigung.
    • Bessere OP-Abdeckung.

Optimierung

  • Quantisierung

    • Selektive Quantisierung nach dem Training, um bestimmte Schichten von der Quantisierung auszuschließen.

    • Quantisierungs-Debugger zur Überprüfung der Quantisierungsfehlerverluste pro Schicht.

    • Anwenden eines quantisierungsbewussten Trainings auf mehr Modellabdeckung, z. B. TensorFlow Model Garden.

    • Qualitäts- und Leistungsverbesserungen für die Quantisierung des Dynamikbereichs nach dem Training.

    • Tensor Compression API, um Komprimierungsalgorithmen wie SVD zu ermöglichen.

  • Beschneiden / Sparsamkeit

    • Kombinieren Sie konfigurierbare APIs für die Trainingszeit (Beschneiden + quantisierungsbewusstes Training).
    • Erhöhen Sie die Sparity-Anwendung bei TF Model Garden-Modellen.
    • Geringe Unterstützung bei der Modellausführung in TensorFlow Lite.

Portabilität

  • Mikrocontroller-Unterstützung
    • Unterstützung für eine Reihe von Anwendungsfällen für die 32-Bit-MCU-Architektur für die Sprach- und Bildklassifizierung hinzufügen.
    • Audio-Frontend: Unterstützung für In-Graph-Audio-Vorverarbeitung und -Beschleunigung
    • Beispielcode und Modelle für Bild- und Audiodaten.