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 |