Ағылшын тілінде оқу

Бөлісу құралы:


структура DML_DYNAMIC_QUANTIZE_LINEAR_OPERATOR_DESC (directml.h)

Вычисляет шкалу квантования и значения нулевой точки, необходимые для квантования InputTensor, а затем применяет это квантование, записывая результат в OutputTensor.

Этот оператор использует следующее уравнение для квантования.

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)

Синтаксис

C++
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;
};

Члены

InputTensor

Тип: const DML_TENSOR_DESC*

Тензор, содержащий входные данные.

OutputTensor

Тип: const DML_TENSOR_DESC*

Выходной тензор для записи результатов.

OutputScaleTensor

Тип: const DML_TENSOR_DESC*

Выходной тензор для записи выходного коэффициента масштабирования для OutputTensor. Ожидаемое количество элементов в OutputScaleTensor равно 1.

OutputZeroPointTensor

Тип: const DML_TENSOR_DESC*

Выходной тензор для записи нулевой точки вывода для OutputTensor. Ожидаемое число элементов в OutputZeroPointTensor равно 1.

Комментарии

Доступность

Этот оператор появился в DML_FEATURE_LEVEL_4_0.

Ограничения тензоров

  • InputTensor, OutputScaleTensor, OutputTensor и OutputZeroPointTensor должны иметь один и тот же dimensionCount.
  • OutputTensor и OutputZeroPointTensor должны иметь один и тот же тип DataType.

Поддержка тензоров

Тензор Kind Поддерживаемые счетчики измерений Поддерживаемые типы данных
InputTensor Входные данные От 1 до 8 FLOAT32, FLOAT16
OutputTensor Выходные данные От 1 до 8 INT8, UINT8
OutputScaleTensor Выходные данные От 1 до 8 FLOAT32
OutputZeroPointTensor Выходные данные От 1 до 8 INT8, UINT8

Требования

Требование Значение
Минимальная версия клиента Сборка Windows 22000
Минимальная версия сервера Сборка Windows 22000
Верхняя часть directml.h

См. также раздел