Compartilhar via


DML_MAX_POOLING_OPERATOR_DESC estrutura (directml.h)

Calcula o valor máximo entre os elementos dentro da janela deslizante sobre o tensor de entrada.

Sintaxe

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;
};

Membros

InputTensor

Tipo: const DML_TENSOR_DESC*

Um tensor de entrada de tamanhos de { BatchCount, ChannelCount, Height, Width } se InputTensor.DimensionCount for 4 e { BatchCount, ChannelCount, Depth, Height, Weight } se InputTensor.DimensionCount for 5.

OutputTensor

Tipo: const DML_TENSOR_DESC*

Um tensor de saída para o qual gravar os resultados. Os tamanhos do tensor de saída podem ser computados da seguinte maneira.

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

Tipo: UINT

O número de dimensões espaciais do tensor de entrada InputTensor, que também corresponde ao número de dimensões da janela deslizante WindowSize. Esse valor também determina o tamanho das matrizes de Strides, StartPaddinge EndPadding. Ele deve ser definido como 2 quando InputTensor for 4D e 3 quando for um tensor 5D.

Strides

Tipo: const * UINT

Os passos para as dimensões deslizantes da janela de tamanhos quando o DimensionCount é definido como 2 ou quando definido como 3.

WindowSize

Tipo: _Field_size_(DimensionCount) const UINT*

As dimensões da janela deslizante em { Height, Width } quando DimensionCount é definido como 2 ou { Depth, Height, Width } quando definido como 3.

StartPadding

Tipo: _Field_size_(DimensionCount) const UINT*

O número de elementos de preenchimento a serem aplicados ao início de cada dimensão espacial do tensor de entrada InputTensor. Os valores estão em { Height, Width } quando DimensionCount é definido como 2 ou { Depth, Height, Width } quando definido como 3.

EndPadding

Tipo: _Field_size_(DimensionCount) const UINT*

O número de elementos de preenchimento a serem aplicados ao final de cada dimensão espacial do tensor de entrada InputTensor. Os valores estão em { Height, Width } quando DimensionCount é definido como 2 ou { Depth, Height, Width } quando definido como 3.

Observações

Uma versão mais recente desse operador, DML_MAX_POOLING1_OPERATOR_DESC, foi introduzida no DML_FEATURE_LEVEL_2_0.

Disponibilidade

Este operador foi introduzido no DML_FEATURE_LEVEL_1_0.

Restrições do Tensor

InputTensor e OutputTensor devem ter o mesmo DataType e DimensionCount.

Suporte ao Tensor

DML_FEATURE_LEVEL_5_0 e superior

Tensor Tipo Contagens de dimensões com suporte Tipos de dados com suporte
InputTensor Entrada 4 a 5 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8
OutputTensor Saída 4 a 5 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_3_0 e superior

Tensor Tipo Contagens de dimensões com suporte Tipos de dados com suporte
InputTensor Entrada 4 a 5 FLOAT32, FLOAT16, INT8, UINT8
OutputTensor Saída 4 a 5 FLOAT32, FLOAT16, INT8, UINT8

DML_FEATURE_LEVEL_1_0 e superior

Tensor Tipo Contagens de dimensões com suporte Tipos de dados com suporte
InputTensor Entrada 4 a 5 FLOAT32, FLOAT16
OutputTensor Saída 4 a 5 FLOAT32, FLOAT16

Requisitos

Requisito Valor
cabeçalho directml.h