Merken Sie den Termin vor! Google I / O kehrt vom 18. bis 20. Mai zurück Registrieren Sie sich jetzt
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Tensorflow :: ops :: QuantizeDownAndShrinkRange

#include <math_ops.h>

Wandeln Sie den quantisierten 'Input'-Tensor mit dem in einen' Output 'mit niedrigerer Genauigkeit um.

Zusammenfassung

tatsächliche Verteilung der Werte, um die Verwendung der niedrigeren Bittiefe zu maximieren und die minimalen und maximalen Ausgangsbereiche entsprechend anzupassen.

[input_min, input_max] sind skalare Floats, die den Bereich für die Float-Interpretation der 'Input'-Daten angeben. Wenn beispielsweise input_min -1,0f und input_max 1,0f ist und es sich um quint16-quantisierte Daten handelt, sollte ein 0-Wert in den 16-Bit-Daten als -1,0f interpretiert werden, und 65535 bedeutet 1,0f.

Dieser Operator versucht, so viel Präzision wie möglich in eine Ausgabe mit geringerer Bittiefe zu drücken, indem er die tatsächlichen Min- und Max-Werte berechnet, die in den Daten gefunden werden. Zum Beispiel hat diese quint16-Eingabe möglicherweise keine Werte unter 16.384 und keine über 49.152. Das bedeutet, dass nur die Hälfte des Bereichs tatsächlich benötigt wird. Alle Float-Interpretationen liegen zwischen -0,5 f und 0,5 f. Wenn wir also die Daten in eine Quint8-Ausgabe komprimieren möchten, können wir diesen Bereich anstelle des theoretischen Bereichs von -1,0 f bis 1,0 verwenden f das wird durch die Eingabe min und max vorgeschlagen.

In der Praxis ist dies am nützlichsten, um Ausgaben von Operationen wie QuantizedMatMul zu erhalten , die Ausgaben mit höherer Bittiefe als ihre Eingaben erzeugen können und große potenzielle Ausgabebereiche haben können, in der Praxis jedoch eine Verteilung von Eingabewerten haben, die nur einen kleinen Bruchteil der Werte verwendet mögliche Reichweite. Indem wir diese Ausgabe in diesen Operator einspeisen, können wir sie mit minimalem Genauigkeitsverlust von 32 Bit auf 8 Bit reduzieren.

Argumente:

  • scope: Ein Scope- Objekt
  • input_min: Der Gleitkommawert, den der minimale quantisierte Eingabewert darstellt.
  • input_max: Der Gleitkommawert, den der maximal quantisierte Eingabewert darstellt.
  • out_type: Der Typ der Ausgabe. Sollte eine geringere Bittiefe als Tinput haben.

Kehrt zurück:

  • Output Ausgabe
  • Output output_min: Der Float-Wert, den der minimale quantisierte Ausgabewert darstellt.
  • Output output_max: Der Gleitkommawert, den der maximal quantisierte Ausgabewert darstellt.

Konstruktoren und Destruktoren

QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type)

Öffentliche Attribute

operation
output
output_max
output_min

Öffentliche Attribute

Operation

Operation operation

Ausgabe

::tensorflow::Output output

output_max

::tensorflow::Output output_max

output_min

::tensorflow::Output output_min

Öffentliche Funktionen

QuantizeDownAndShrinkRange

 QuantizeDownAndShrinkRange(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input input_min,
  ::tensorflow::Input input_max,
  DataType out_type
)