Partager via


structure DML_AVERAGE_POOLING1_OPERATOR_DESC (directml.h)

Moyenne des valeurs entre les éléments de la fenêtre glissante sur le capteur d’entrée.

Important

Cette API est disponible dans le cadre du package redistribuable autonome DirectML (voir Microsoft.AI.DirectML version 1.13 et ultérieures. Consultez également l’historique des versions DirectML.

Syntaxe

struct DML_AVERAGE_POOLING1_OPERATOR_DESC
{
    const DML_TENSOR_DESC* InputTensor;
    const DML_TENSOR_DESC* OutputTensor;
    UINT DimensionCount;
    _Field_size_(DimensionCount) const UINT* Strides;
    _Field_size_(DimensionCount) const UINT* WindowSize;
    _Field_size_(DimensionCount) const UINT* StartPadding;
    _Field_size_(DimensionCount) const UINT* EndPadding;
    _Field_size_(DimensionCount) const UINT* Dilations;
    BOOL IncludePadding;
};

Membres

InputTensor

Type : const DML_TENSOR_DESC*

Un capteur d’entrée de tailles{ BatchCount, ChannelCount, Height, Width } pour 4D et { BatchCount, ChannelCount, Depth, Height, Weight } pour 5D.

OutputTensor

Type : const DML_TENSOR_DESC*

Description du capteur de sortie. Les tailles du capteur de sortie peuvent être calculées comme suit.

OutputTensor->Sizes[0] = InputTensor->Sizes[0];
OutputTensor->Sizes[1] = InputTensor->Sizes[1];

for (UINT i = 0; i < DimensionCount; ++i) {
    UINT PaddedSize = InputTensor->Sizes[i + 2] + StartPadding[i] + EndPadding[i];
    OutputTensor->Sizes[i + 2] = (PaddedSize - WindowSizes[i]) / Strides[i] + 1;
}

DimensionCount

Type : UINT

Nombre de dimensions spatiales de l’input tensor InputTensor, qui correspond également au nombre de dimensions de la fenêtre glissante WindowSize. Cette valeur détermine également la taille des tableaux Strides, StartPadding et EndPadding . Elle doit être définie sur 2 lorsque InputTensor est 4D et 3 lorsqu’il s’agit d’un capteur 5D.

Strides

Type : _Field_size_(DimensionCount) const UINT*

Les pas pour les dimensions de fenêtre glissante { Height, Width } de tailles lorsque DimensionCount est défini sur 2, ou { Depth, Height, Width } lorsqu’ils sont définis sur 3.

WindowSize

Type : _Field_size_(DimensionCount) const UINT*

Dimensions de la fenêtre glissante dans { Height, Width } laquelle DimensionCount est défini sur 2, ou { Depth, Height, Width } lorsqu’elle est définie sur 3.

StartPadding

Type : _Field_size_(DimensionCount) const UINT*

Nombre d’éléments de remplissage à appliquer au début de chaque dimension spatiale du tensor InputTensor d’entrée. Les valeurs se trouvent { Height, Width } lorsque DimensionCount est défini sur 2 ou { Depth, Height, Width } quand la valeur est 3.

EndPadding

Type : _Field_size_(DimensionCount) const UINT*

Nombre d’éléments de remplissage à appliquer à la fin de chaque dimension spatiale du tensor InputTensor d’entrée. Les valeurs se trouvent { Height, Width } lorsque DimensionCount est défini sur 2 ou { Depth, Height, Width } quand la valeur est 3.

Dilations

Type : _Field_size_(DimensionCount) const UINT*

Valeurs de chaque dimension spatiale de l’input tensor InputTensor par laquelle un élément de la fenêtre glissante est sélectionné pour chaque élément de cette valeur. Les valeurs se trouvent { Height, Width } lorsque DimensionCount est défini sur 2 ou { Depth, Height, Width } quand la valeur est 3.

IncludePadding

Type : BOOL

Indique s’il faut inclure les éléments de remplissage autour des bords spatiaux lors du calcul de la valeur moyenne sur tous les éléments de la fenêtre glissante. Lorsque la valeur est définie sur FALSE, les éléments de remplissage ne sont pas comptabilisés dans le cadre de la valeur de diviseur du calcul de moyenne.

Remarques

DML_AVERAGE_POOLING1_OPERATOR_DESC est semblable à DML_AVERAGE_POOLING_OPERATOR_DESC, sauf avec des dilations de tableaux constantes supplémentaires. Lorsque la dilation est définie sur { 1,1 } pour l’entrée 4D, ou { 1,1,1 } pour les fonctionnalités d’entrée 5D, DML_AVERAGE_POOLING1_OPERATOR_DESC est equvaleur pour DML_AVERAGE_POOLING_OPERATOR_DESC.

Disponibilité

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

Contraintes Tensor

InputTensor et OutputTensor doivent avoir le même DataType et DimensionCount.

Prise en charge de Tensor

Tenseur Genre Nombres de dimensions pris en charge Types de données pris en charge
InputTensor Entrée 4 à 5 FLOAT32, FLOAT16
Tenseur de sortie Sortie 4 à 5 FLOAT32, FLOAT16

Spécifications

   
En-tête directml.h