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

Trimmen Sie unbedeutende Gewichte

Verwaltet durch TensorFlow-Modelloptimierung

Dieses Dokument bietet einen Überblick über das Beschneiden von Modellen, damit Sie feststellen können, wie es zu Ihrem Anwendungsfall passt.

Überblick

Das auf der Größe basierende Gewichtsbeschneiden setzt die Modellgewichte während des Trainingsprozesses allmählich auf Null, um Modellsparsamkeit zu erreichen. Sparse-Modelle sind einfacher zu komprimieren, und wir können die Nullen während der Inferenz überspringen, um die Latenz zu verbessern.

Diese Technik bringt Verbesserungen durch Modellkomprimierung. In Zukunft wird die Framework-Unterstützung für diese Technik die Latenz verbessern. Wir haben bis zu 6-fache Verbesserungen bei der Modellkomprimierung bei minimalem Genauigkeitsverlust festgestellt.

Die Technik wird in verschiedenen Sprachanwendungen wie Spracherkennung und Text-zu-Sprache evaluiert und an verschiedenen Vision- und Übersetzungsmodellen experimentiert.

API-Kompatibilitätsmatrix

Benutzer können das Bereinigen mit den folgenden APIs anwenden:

  • tf.keras : tf.keras mit nur sequentiellen und funktionalen Modellen
  • TensorFlow-Versionen: TF 1.x für die Versionen 1.14+ und 2.x.
    • tf.compat.v1 mit einem TF 2.X-Paket und tf.compat.v2 mit einem TF 1.X-Paket werden nicht unterstützt.
  • TensorFlow-Ausführungsmodus: sowohl grafisch als auch eifrig
  • Verteiltes Training: tf.distribute nur mit tf.distribute

Es steht auf unserer Roadmap, Unterstützung in folgenden Bereichen hinzuzufügen:

Ergebnisse

Bildklassifizierung

Modell Nicht spärliche Top-1-Genauigkeit Spärliche Genauigkeit Sparsamkeit
InceptionV3 78,1% 78,0% 50%
76,1% 75%
74,6% 87,5%
MobilenetV1 224 71,04% 70,84% 50%

Die Modelle wurden auf Imagenet getestet.

Übersetzung

Modell Nicht spärliche BLEU Sparse BLEU Sparsamkeit
GNMT DE-DE 26,77 26,86 80%
26.52 85%
26.19 90%
GNMT DE-EN 29.47 29,50 80%
29.24 85%
28,81 90%

Die Modelle verwenden den deutschen und englischen WMT16-Datensatz mit news-test2013 als Entwicklungssatz und news-test2015 als Testsatz.

Beispiele

Weitere Informationen zum Tutorial Prune with Keras finden Sie in den folgenden Beispielen:

  • Trainieren ein CNN - Modells auf der MNIST handgeschriebenen Zeichenklassifizierung Aufgabe mit Rebschnitt: Code
  • Zug eine LSTM auf der IMDB Stimmung Klassieraufgabe mit Rebschnitt: Code

Hintergrundinformationen finden Sie unter Beschneiden oder Nichtbeschneiden: Untersuchen der Wirksamkeit des Beschneidens für die Modellkomprimierung [ Papier ].