estrutura DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC (directml.h)
Calcula a escala de quantização e os valores de ponto zero necessários para quantificar o InputTensor e aplica essa quantização, gravando o resultado em OutputTensor.
Esse operador usa a equação a seguir para quantificar.
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)
Sintaxe
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;
};
Membros
InputTensor
Tipo: const DML_TENSOR_DESC*
O tensor que contém as entradas.
OutputTensor
Tipo: const DML_TENSOR_DESC*
O tensor de saída no qual gravar os resultados.
OutputScaleTensor
Tipo: const DML_TENSOR_DESC*
O tensor de saída para gravar o fator de escala de saída para OutputTensor. O número esperado de elementos em OutputScaleTensor é 1.
OutputZeroPointTensor
Tipo: const DML_TENSOR_DESC*
O tensor de saída para gravar o ponto zero de saída para OutputTensor. O número esperado de elementos em OutputZeroPointTensor é 1.
Comentários
Disponibilidade
Esse operador foi introduzido no DML_FEATURE_LEVEL_4_0.
Restrições do Tensor
- InputTensor, OutputScaleTensor, OutputTensor e OutputZeroPointTensor devem ter o mesmo DimensionCount.
- OutputTensor e OutputZeroPointTensor devem ter o mesmo DataType.
Suporte ao Tensor
Tensor | Tipo | Contagens de dimensões com suporte | Tipos de dados com suporte |
---|---|---|---|
InputTensor | Entrada | 1 a 8 | FLOAT32, FLOAT16 |
OutputTensor | Saída | 1 a 8 | INT8, UINT8 |
OutputScaleTensor | Saída | 1 a 8 | FLOAT32 |
OutputZeroPointTensor | Saída | 1 a 8 | INT8, UINT8 |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Build 22000 |
Servidor mínimo com suporte | Windows Build 22000 |
Cabeçalho | directml.h |