Partager via


structure DML_ELEMENT_WISE_POW_OPERATOR_DESC (directml.h)

Calcule chaque élément d’InputTensor déclenché à la puissance de l’élément exponentTensor correspondant, en plaçant le résultat dans l’élément correspondant de OutputTensor.

f(input, exponent) = pow(input, exponent)

Les bases négatives sont prises en charge pour les exposants avec des valeurs intégrales (bien que le type de données puisse toujours être float), sinon cet opérateur retourne NaN.

Lorsque le tenseur d’entrée et le tenseur exposant ont tous deux un type de données intégral, cet opérateur garantit des résultats exacts.

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_POW_OPERATOR_DESC {
  const DML_TENSOR_DESC *InputTensor;
  const DML_TENSOR_DESC *ExponentTensor;
  const DML_TENSOR_DESC *OutputTensor;
  const DML_SCALE_BIAS  *ScaleBias;
};

Membres

InputTensor

Type : const DML_TENSOR_DESC*

Tenseur contenant les valeurs d’entrée.

ExponentTensor

Type : const DML_TENSOR_DESC*

Tenseur contenant les valeurs de l’exposant.

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.

Notes

Jusqu’à ce DML_FEATURE_LEVEL_3_0que , ExponentTensordoit correspondre au type d’InputTensor.

Consultez DML_ELEMENT_WISE_CONSTANT_POW_OPERATOR_DESC pour un opérateur POW qui accepte une FLOAT constante pour l’exposant.

Disponibilité

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

Contraintes tensoriels

  • ExponentTensor, InputTensor et OutputTensor doivent avoir les mêmes DimensionCount et Sizes.
  • InputTensor et OutputTensor doivent avoir le même DataType.

Prise en charge de Tensor

DML_FEATURE_LEVEL_3_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, INT32, INT16, INT8, UINT32, UINT16, UINT8
ExponentTensor Entrée 1 à 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Output 1 à 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_1_0 et versions ultérieures

Tenseur Type Nombre de dimensions pris en charge Types de données pris en charge
InputTensor Entrée 4 FLOAT32, FLOAT16
ExponentTensor Entrée 4 FLOAT32, FLOAT16
OutputTensor Output 4 FLOAT32, FLOAT16

Spécifications

   
En-tête directml.h

Voir aussi

DML_ELEMENT_WISE_CONSTANT_POW_OPERATOR_DESC