structure DML_MAX_POOLING_OPERATOR_DESC (directml.h)
Calcule la valeur maximale entre les éléments de la fenêtre glissante sur le capteur d’entrée.
Syntaxe
struct DML_MAX_POOLING_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
UINT DimensionCount;
const UINT *Strides;
const UINT *WindowSize;
const UINT *StartPadding;
const UINT *EndPadding;
};
Membres
InputTensor
Type : const DML_TENSOR_DESC*
Un tensoriel d’entrée de Sizes{ BatchCount, ChannelCount, Height, Width }
si InputTensor.DimensionCount est 4, et { BatchCount, ChannelCount, Depth, Height, Weight }
si InputTensor.DimensionCount est 5.
OutputTensor
Type : const DML_TENSOR_DESC*
Un tensoriel de sortie dans lequel écrire les résultats. 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 lainput tensor
Strides
Type : const UINT*
Les pas pour les dimensions de fenêtre glissante de tailles
WindowSize
Type : _Field_size_(DimensionCount) const UINT*
Les dimensions de la fenêtre glissante dans { Height, Width }
lorsque DimensionCount a la valeur 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 capteur d’entrée InputTensor. Les valeurs sont dans { Height, Width }
lorsque DimensionCount a la valeur 2 ou { Depth, Height, Width }
lorsqu’elle est définie sur 3.
EndPadding
Type : _Field_size_(DimensionCount) const UINT*
Nombre d’éléments de remplissage à appliquer à la fin de chaque dimension spatiale du capteur d’entrée InputTensor. Les valeurs sont dans { Height, Width }
lorsque DimensionCount a la valeur 2 ou { Depth, Height, Width }
lorsqu’elle est définie sur 3.
Remarques
Une version plus récente de cet opérateur, DML_MAX_POOLING1_OPERATOR_DESC, a été introduite dans DML_FEATURE_LEVEL_2_0
.
Disponibilité
Cet opérateur a été introduit dans DML_FEATURE_LEVEL_1_0
.
Contraintes Tensor
InputTensor et OutputTensor doivent avoir les mêmes DataType et DimensionCount.
Prise en charge de Tensor
DML_FEATURE_LEVEL_5_0 et versions ultérieures
Tenseur | Gentil | Nombres de dimensions pris en charge | Types de données pris en charge |
---|---|---|---|
InputTensor | Entrée | 4 à 5 | FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
OutputTensor | Sortie | 4 à 5 | FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_3_0 et versions ultérieures
Tenseur | Gentil | Nombres de dimensions pris en charge | Types de données pris en charge |
---|---|---|---|
InputTensor | Entrée | 4 à 5 | FLOAT32, FLOAT16, INT8, UINT8 |
OutputTensor | Sortie | 4 à 5 | FLOAT32, FLOAT16, INT8, UINT8 |
DML_FEATURE_LEVEL_1_0 et versions ultérieures
Tenseur | Gentil | Nombres de dimensions pris en charge | Types de données pris en charge |
---|---|---|---|
InputTensor | Entrée | 4 à 5 | FLOAT32, FLOAT16 |
OutputTensor | Sortie | 4 à 5 | FLOAT32, FLOAT16 |
Exigences
Exigence | Valeur |
---|---|
d’en-tête | directml.h |