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 |