Freigeben über


DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC Struktur (directml.h)

Führt die folgende lineare Dequantisierungsfunktion für jedes Element in InputTensor in Bezug auf das entsprechende Element in ScaleTensor und ZeroPointTensoraus, wobei die Ergebnisse im entsprechenden Element von OutputTensorplatziert werden.

f(input, scale, zero_point) = (input - zero_point) * scale

Die Quantisierung ist eine gängige Methode, um die Leistung bei den Kosten der Präzision zu steigern. Eine Gruppe von 8-Bit-Int-Werten kann schneller berechnet werden, als eine Gruppe von 32-Bit-Float-Werten kann. Durch die Dequantisierung werden die codierten Daten wieder in ihre Domäne konvertiert.

Syntax

struct DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC {
  const DML_TENSOR_DESC *InputTensor;
  const DML_TENSOR_DESC *ScaleTensor;
  const DML_TENSOR_DESC *ZeroPointTensor;
  const DML_TENSOR_DESC *OutputTensor;
};

Angehörige

InputTensor

Typ: DML_TENSOR_DESC*

Der Tensor, der die Eingaben enthält.

ScaleTensor

Typ: DML_TENSOR_DESC*

Der Tensor, der die Skalen enthält. Ein Skalierungswert von 0 führt zu einem nicht definierten Verhalten.

Anmerkung

Ein Skalierungswert von 0 führt zu einem nicht definierten Verhalten.

ZeroPointTensor

Typ: DML_TENSOR_DESC*

Der Tensor, der den Nullpunkt enthält, der für die Quantisierung verwendet wurde.

OutputTensor

Typ: DML_TENSOR_DESC*

Der Ausgabe-Tensor, in den die Ergebnisse geschrieben werden sollen.

Verfügbarkeit

Dieser Operator wurde in DML_FEATURE_LEVEL_1_0eingeführt.

Tensoreinschränkungen

  • InputTensor-, OutputTensor, ScaleTensor-und ZeroPointTensor- müssen denselben DimensionCount- und Größenhaben.
  • InputTensor- und ZeroPointTensor- müssen denselben DataType-aufweisen.
  • OutputTensor- und ScaleTensor- müssen denselben DataType-aufweisen.

Tensorunterstützung

DML_FEATURE_LEVEL_6_2 und höher

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
ScaleTensor Eingabe 1 bis 8 FLOAT32, FLOAT16
ZeroPointTensor Optionale Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 1 bis 8 FLOAT32, FLOAT16

DML_FEATURE_LEVEL_6_0 und höher

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
ScaleTensor Eingabe 1 bis 8 FLOAT32, FLOAT16
ZeroPointTensor Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 1 bis 8 FLOAT32, FLOAT16

DML_FEATURE_LEVEL_3_0 und höher

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
ScaleTensor Eingabe 1 bis 8 FLOAT32
ZeroPointTensor Eingabe 1 bis 8 INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 1 bis 8 FLOAT32

DML_FEATURE_LEVEL_2_1 und höher

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 INT32, INT16, INT8, UINT32, UINT16, UINT8
ScaleTensor Eingabe 4 FLOAT32
ZeroPointTensor Eingabe 4 INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 4 FLOAT32

DML_FEATURE_LEVEL_1_0 und höher

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 UINT8
ScaleTensor Eingabe 4 FLOAT32
ZeroPointTensor Eingabe 4 UINT8
OutputTensor Ausgabe 4 FLOAT32

Anforderungen

Anforderung Wert
Header- directml.h

Siehe auch

DML_ELEMENT_WISE_QUANTIZE_LINEAR_OPERATOR_DESC