DML_ELEMENT_WISE_CLIP_OPERATOR_DESC structure (directml.h)
Effectue l’opération suivante pour chaque élément de InputTensor, en plaçant le résultat dans l’élément correspondant de OutputTensor. Cet opérateur restreint (ou limite) chaque élément de l’entrée dans l’intervalle fermé [Min, Max].
f(x) = max(Min, min(x, Max))
Où max(a,b) retourne la plus grande des deux valeurs, et min(a,b) retourne la plus petite des deux valeurs a,b.
Cet opérateur prend en charge l’exécution sur place, ce qui signifie que OutputTensor est autorisé à alias InputTensor pendant la liaison.
Syntaxe
struct DML_ELEMENT_WISE_CLIP_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
const DML_SCALE_BIAS *ScaleBias;
FLOAT Min;
FLOAT Max;
};
Membres
InputTensor
Type : const DML_TENSOR_DESC*
Tenseur d’entrée à partir duquel lire.
OutputTensor
Type : const DML_TENSOR_DESC*
Tenseur de sortie dans lequel écrire les résultats.
ScaleBias
Type : _Maybenull_ const DML_SCALE_BIAS*
Mise à l’échelle et biais facultatifs à appliquer à l’entrée. Le cas échéant, cela a pour effet d’appliquer la fonction g(x) = x * scale + bias
à chaque élément d’entrée avant de calculer cet opérateur.
Min
Type : FLOAT
Valeur minimale, en dessous de laquelle l’opérateur remplace la valeur par Min.
Max
Type : FLOAT
Valeur maximale, au-dessus de laquelle l’opérateur remplace la valeur par Max.
Remarques
Si le type de données tensoriel n’est pas float, min et max sont convertis en type de données tenseur avant d’appliquer l’opération de découpage (qui, pour les entiers, signifie troncation vers zéro ; et pour les valeurs à virgule flottante arrondies au pair le plus proche).
Disponibilité
Cet opérateur a été introduit dans DML_FEATURE_LEVEL_1_0
.
Contraintes tensoriels
InputTensor et OutputTensor doivent avoir les mêmes DataType, DimensionCount et Sizes.
Prise en charge des tenseurs
DML_FEATURE_LEVEL_5_0 et versions ultérieures
Tenseur | Genre | 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 |
OutputTensor | Sortie | 1 à 8 | FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_3_0 et versions ultérieures
Tenseur | Genre | 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 |
OutputTensor | Sortie | 1 à 8 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_2_1 et versions ultérieures
Tenseur | Genre | Nombre de dimensions pris en charge | Types de données pris en charge |
---|---|---|---|
InputTensor | Entrée | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
OutputTensor | Sortie | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_1_0 et versions ultérieures
Tenseur | Genre | Nombre de dimensions pris en charge | Types de données pris en charge |
---|---|---|---|
InputTensor | Entrée | 4 | FLOAT32, FLOAT16 |
OutputTensor | Sortie | 4 | FLOAT32, FLOAT16 |
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | directml.h |