Compartilhar via


estrutura DML_LP_POOLING_OPERATOR_DESC (directml.h)

Calcula o valor normalizado em Lp entre os elementos dentro da janela deslizante sobre o tensor de entrada.

Sintaxe

struct DML_LP_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;
  UINT                  P;
};

Membros

InputTensor

Tipo: const DML_TENSOR_DESC*

Um tensor de entrada com tamanhos de { BatchCount, ChannelCount, Height, Width } para 4D e { BatchCount, ChannelCount, Depth, Height, Width } para 5D.

OutputTensor

Tipo: const DML_TENSOR_DESC*

O tensor de saída no qual gravar. 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: _Field_size_(DimensionCount) const UINT*

Uma matriz que contém 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*

Uma matriz que contém 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*

Uma matriz que contém 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*

Uma matriz que contém 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.

P

Tipo: UINT

O valor da variável P na função Lp-normalization Y = (X1^P + X2^P + ... + Xn^P) ^ (1/P), em que X1 para Xn representando cada um dos valores dentro da janela deslizante. Em casos de uso comuns, esse valor é definido como 1 ou 2, representando a normalização L1 ou L2, respectivamente.

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

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