Compartir a través de


estructura de DML_ELEMENT_WISE_QUANTIZED_LINEAR_ADD_OPERATOR_DESC (directml.h)

Agrega todos los elementos de ATensor a su elemento correspondiente en BTensor, colocando el resultado en el elemento correspondiente de OutputTensor. Los valores contenidos en ATensor y BTensor se descuantizan mediante la siguiente ecuación y, a continuación, se agregan y se vuelven a clasificar.

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

OutputValue = AValue + BValue

// For uint8 output, Min = 0, Max = 255
// For int8 output, Min = -128, Max = 127
OutputTensor = clamp(round(OutputValue / OutputScale) + OutputZeroPoint, Min, Max)

Sintaxis

struct DML_ELEMENT_WISE_QUANTIZED_LINEAR_ADD_OPERATOR_DESC {
  const DML_TENSOR_DESC *ATensor;
  const DML_TENSOR_DESC *AScaleTensor;
  const DML_TENSOR_DESC *AZeroPointTensor;
  const DML_TENSOR_DESC *BTensor;
  const DML_TENSOR_DESC *BScaleTensor;
  const DML_TENSOR_DESC *BZeroPointTensor;
  const DML_TENSOR_DESC *OutputScaleTensor;
  const DML_TENSOR_DESC *OutputZeroPointTensor;
  const DML_TENSOR_DESC *OutputTensor;
};

Miembros

ATensor

Tipo: const DML_TENSOR_DESC*

Tensor que contiene las entradas del lado izquierdo.

AScaleTensor

Tipo: const DML_TENSOR_DESC*

Tensor que contiene el factor de escala deseado para ATensor. El número esperado de elementos de AScaleTensor es 1.

AZeroPointTensor

Tipo: _Maybenull_ const DML_TENSOR_DESC*

Tensor que contiene el punto cero deseado para ATensor. El número esperado de elementos en AZeroPointTensor es 1. AZeroPointTensor es un tensor opcional que tiene como valor predeterminado 0 si no se proporciona.

BTensor

Tipo: const DML_TENSOR_DESC*

Tensor que contiene las entradas del lado derecho.

BScaleTensor

Tipo: const DML_TENSOR_DESC*

Tensor que contiene el factor de escala deseado para BTensor. El número esperado de elementos de BScaleTensor es 1.

BZeroPointTensor

Tipo: _Maybenull_ const DML_TENSOR_DESC*

Tensor que contiene el punto cero deseado para BTensor. El número esperado de elementos en BZeroPointTensor es 1. BZeroPointTensor es un tensor opcional que tiene como valor predeterminado 0 si no se proporciona.

OutputScaleTensor

Tipo: const DML_TENSOR_DESC*

Tensor que contiene el factor de escala deseado para OutputTensor. Se trata de un tensor de entrada que define el factor de escala de cuantificación de salida que se usará al cuantificar los valores de salida. El número esperado de elementos de OutputScaleTensor es 1.

OutputZeroPointTensor

Tipo: _Maybenull_ const DML_TENSOR_DESC*

Tensor que contiene el punto cero deseado para OutputTensor. Se trata de un tensor de entrada que define el punto cero de cuantificación de salida que se va a usar al cuantificar los valores de salida. El número esperado de elementos de OutputZeroPointTensor es 1. OutputZeroPointTensor es un tensor opcional que tiene como valor predeterminado 0 si no se proporciona.

OutputTensor

Tipo: const DML_TENSOR_DESC*

Tensor de salida en el que se van a escribir los resultados.

Comentarios

Disponibilidad

Este operador se introdujo en DML_FEATURE_LEVEL_4_0.

Restricciones tensor

  • AScaleTensor, ATensor, AZeroPointTensor, BScaleTensor, BTensor, BZeroPointTensor, OutputScaleTensor, OutputTensor y OutputZeroPointTensor deben tener el mismo DimensionCount.
  • BTensor y BZeroPointTensor deben tener el mismo DataType.
  • OutputTensor y OutputZeroPointTensor deben tener el mismo DataType.
  • ATensor y AZeroPointTensor deben tener el mismo DataType.

Compatibilidad con Tensor

Tensor Kind Recuentos de dimensiones admitidos Tipos de datos admitidos
ATensor Entrada De 1 a 8 INT8, UINT8
AScaleTensor Entrada De 1 a 8 FLOAT32
AZeroPointTensor Entrada opcional De 1 a 8 INT8, UINT8
BTensor Entrada De 1 a 8 INT8, UINT8
BScaleTensor Entrada De 1 a 8 FLOAT32
BZeroPointTensor Entrada opcional De 1 a 8 INT8, UINT8
OutputScaleTensor Entrada De 1 a 8 FLOAT32
OutputZeroPointTensor Entrada opcional De 1 a 8 INT8, UINT8
OutputTensor Resultados De 1 a 8 INT8, UINT8

Requisitos

   
Cliente mínimo compatible Windows Build 22000
Servidor mínimo compatible Windows Build 22000
Encabezado directml.h

Consulte también