Condividi tramite


DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC struttura (directml.h)

Calcola i valori della scala di quantizzazione e zero necessari per quantizzare inputTensor, quindi applica tale quantizzazione, scrivendo il risultato in OutputTensor.

Questo operatore usa l'equazione seguente per quantizzare.

InputMax = Max(InputTensor)
InputMin = Min(InputTensor)

AValue = (A - AZeroPoint) * AScale
BValue = (B - BZeroPoint) * BScale

// For uint8 output, Min = 0, Max = 255
// For int8 output, Min = -128, Max = 127
OutputScale = (InputMax – InputMin) / (Max – Min)

OutputZeroPoint = Min - InputMin / OutputScale

OutputTensor = clamp(round(InputValue / OutputScale) + OutputZeroPoint, Min, Max)

Sintassi

struct DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC {
  const DML_TENSOR_DESC *InputTensor;
  const DML_TENSOR_DESC *OutputTensor;
  const DML_TENSOR_DESC *OutputScaleTensor;
  const DML_TENSOR_DESC *OutputZeroPointTensor;
};

Members

InputTensor

Tipo: const DML_TENSOR_DESC*

Tensore contenente gli input.

OutputTensor

Tipo: const DML_TENSOR_DESC*

Tensore di output in cui scrivere i risultati.

OutputScaleTensor

Tipo: const DML_TENSOR_DESC*

Tensore di output per scrivere il fattore di scala di output per OutputTensor. Il numero previsto di elementi in OutputScaleTensor è 1.

OutputZeroPointTensor

Tipo: const DML_TENSOR_DESC*

Tensore di output per scrivere il punto di output zero per OutputTensor. Il numero previsto di elementi in OutputZeroPointTensor è 1.

Commenti

Disponibilità

Questo operatore è stato introdotto in DML_FEATURE_LEVEL_4_0.

Vincoli tensor

  • InputTensor, OutputScaleTensor, OutputTensor e OutputZeroPointTensor devono avere lo stesso DimensionCount.
  • OutputTensor e OutputZeroPointTensor devono avere lo stesso oggetto DataType.

Supporto di Tensor

Tensore Tipo Conteggi delle dimensioni supportate Tipi di dati supportati
InputTensor Input da 1 a 8 FLOAT32, FLOAT16
OutputTensor Output da 1 a 8 INT8, UINT8
OutputScaleTensor Output da 1 a 8 FLOAT32
OutputZeroPointTensor Output da 1 a 8 INT8, UINT8

Requisiti

Requisito Valore
Client minimo supportato Windows Build 22000
Server minimo supportato Windows Build 22000
Intestazione directml.h

Vedi anche