Compartir a través de


estructura DML_RESAMPLE_GRAD_OPERATOR_DESC (directml.h)

Calcula los degradados de la propiedad inversa para Resample (consulte DML_RESAMPLE1_OPERATOR_DESC).

DML_RESAMPLE1_OPERATOR_DESC escala dimensiones arbitrarias del tensor de entrada mediante el muestreo más cercano o la interpolación bilineal. Dado un InputGradientTensor con los mismos tamaños que la salida de un DML_RESAMPLE1_OPERATOR_DESC equivalente, este operador genera un OutputGradientTensor con los mismos tamaños que la entrada del DML_RESAMPLE1_OPERATOR_DESC.

Por ejemplo, considere un DML_RESAMPLE1_OPERATOR_DESC que realiza un escalado vecino más cercano de 1,5x en el ancho y 0,5x en el alto.

InputTensor           OutputTensor
[[1, 2],   Resample    [1, 1, 2]
 [3, 4]]      -->      

Observe cómo el 0º elemento del tensor de entrada (con el valor 1) contribuye a dos elementos de la salida, el primer elemento (con el valor 2) contribuye a un elemento de la salida, y los elementos 2 y 3rd (con los valores 3 y 4) contribuyen a ningún elemento de la salida.

El DML_RESAMPLE_GRAD_OPERATOR_DESC correspondiente realizaría lo siguiente.

InputGradientTensor           OutputGradientTensor
    [4, 5, 6]      ResampleGrad    [[9, 6],
                       -->          [0, 0]]

Observe que los valores de OutputGradientTensor representan las contribuciones ponderadas de ese elemento al outputTensor durante el operador de DML_RESAMPLE1_OPERATOR_DESC original.

Sintaxis

struct DML_RESAMPLE_GRAD_OPERATOR_DESC {
  const DML_TENSOR_DESC  *InputGradientTensor;
  const DML_TENSOR_DESC  *OutputGradientTensor;
  DML_INTERPOLATION_MODE InterpolationMode;
  UINT                   DimensionCount;
  const FLOAT            *Scales;
  const FLOAT            *InputPixelOffsets;
  const FLOAT            *OutputPixelOffsets;
};

Miembros

InputGradientTensor

Tipo: const DML_TENSOR_DESC*

Tensor de degradado entrante. Esto se obtiene normalmente a partir de la salida de la propiedad backpropagation de una capa anterior. Normalmente, este tensor tendría los mismos tamaños que la salida del DML_RESAMPLE1_OPERATOR_DESC correspondiente en el pase hacia delante.

OutputGradientTensor

Tipo: const DML_TENSOR_DESC*

Tensor de salida que contiene los degradados retropropagados. Normalmente, este tensor tendría los mismos tamaños que la entrada del DML_RESAMPLE1_OPERATOR_DESC correspondiente en el pase hacia delante.

InterpolationMode

Tipo: DML_INTERPOLATION_MODE

Vea InterpolationMode en DML_RESAMPLE1_OPERATOR_DESC.

DimensionCount

Tipo: UINT

El número de elementos de las matrices Scales, InputPixelOffsets y OutputPixelOffsets . Este valor debe ser igual a DimensionCount proporcionado en InputGradientTensor y OutputGradientTensor.

Scales

Tipo: _Field_size_(DimensionCount) const FLOAT*

Consulte Escalas en DML_RESAMPLE1_OPERATOR_DESC.

InputPixelOffsets

Tipo: _Field_size_(DimensionCount) const FLOAT*

Consulte InputPixelOffsets en DML_RESAMPLE1_OPERATOR_DESC.

OutputPixelOffsets

Tipo: _Field_size_(DimensionCount) const FLOAT*

Consulte OutputPixelOffsets en DML_RESAMPLE1_OPERATOR_DESC.

Disponibilidad

Este operador se introdujo en DML_FEATURE_LEVEL_3_0.

Restricciones tensor

InputGradientTensor y OutputGradientTensor deben tener el mismo DataType y DimensionCount.

Compatibilidad con Tensor

DML_FEATURE_LEVEL_5_1 y versiones posteriores

Tensor Kind Recuentos de dimensiones admitidos Tipos de datos admitidos
InputGradientTensor Entrada De 1 a 4 FLOAT32, FLOAT16
OutputGradientTensor Resultados De 1 a 4 FLOAT32, FLOAT16

DML_FEATURE_LEVEL_3_0 y versiones posteriores

Tensor Kind Recuentos de dimensiones admitidos Tipos de datos admitidos
InputGradientTensor Entrada 4 FLOAT32, FLOAT16
OutputGradientTensor Resultados 4 FLOAT32, FLOAT16

Requisitos

   
Cliente mínimo compatible Compilación 20348 de Windows 10
Servidor mínimo compatible Compilación 20348 de Windows 10
Encabezado directml.h