Partager via


structure DML_ELEMENT_WISE_CLIP_GRAD_OPERATOR_DESC (directml.h)

Calcule les dégradés de backpropagation pour les éléments de clip.

f(x, gradient) = if x <= Min then 0
                 if x >= Max then 0
                 else        then gradient

Cet opérateur prend en charge l’exécution sur place, ce qui signifie qu’il OutputTensor est autorisé à alias InputTensor pendant la liaison.

Syntaxe

struct DML_ELEMENT_WISE_CLIP_GRAD_OPERATOR_DESC {
  const DML_TENSOR_DESC *InputTensor;
  const DML_TENSOR_DESC *InputGradientTensor;
  const DML_TENSOR_DESC *OutputGradientTensor;
  FLOAT                 Min;
  FLOAT                 Max;
};

Membres

InputTensor

Type : const DML_TENSOR_DESC*

Tenseur de fonctionnalité d’entrée. Il s’agit généralement du même tenseur que celui fourni comme inputTensor pour DML_ELEMENT_WISE_CLIP_OPERATOR_DESC dans la passe avant.

InputGradientTensor

Type : const DML_TENSOR_DESC*

Tenseur de dégradé entrant. Cela est généralement obtenu à partir de la sortie de backpropagation d’une couche précédente. En règle générale, ce tenseur a les mêmes tailles que la sortie du DML_OPERATOR_ELEMENT_WISE_CLIP correspondant dans la passe avant.

OutputGradientTensor

Type : const DML_TENSOR_DESC*

Tenseur de sortie contenant les dégradés backpropagés. En règle générale, ce tenseur a les mêmes tailles que l’entrée du DML_OPERATOR_ELEMENT_WISE_CLIP correspondant dans la passe avant.

Min

Type : FLOAT

Valeur minimale. Si x est égal ou inférieur à cette valeur, le résultat de dégradé est 0.

Max

Type : FLOAT

Valeur maximale. Si x est égal ou supérieur à cette valeur, le résultat du dégradé est 0.

Notes

Disponibilité

Cet opérateur a été introduit dans DML_FEATURE_LEVEL_3_1.

Contraintes tensoriels

InputGradientTensor, InputTensor et OutputGradientTensor doivent avoir les mêmes DataType, DimensionCount et Sizes.

Prise en charge de Tensor

DML_FEATURE_LEVEL_5_0 et versions ultérieures

Tenseur Type Nombre de dimensions pris en charge Types de données pris en charge
InputTensor Entrée 1 à 8 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8
InputGradientTensor Entrée 1 à 8 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8
OutputGradientTensor Output 1 à 8 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_3_1 et versions ultérieures

Tenseur Type Nombre de dimensions pris en charge Types de données pris en charge
InputTensor Entrée 1 à 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8
InputGradientTensor Entrée 1 à 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputGradientTensor Output 1 à 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8

Spécifications

   
Client minimal pris en charge Windows Build 22000
Serveur minimal pris en charge Windows Build 22000
En-tête directml.h