Freigeben über


DML_LP_POOLING_OPERATOR_DESC Struktur (directml.h)

Berechnet den lp-normalisierten Wert über die Elemente innerhalb des Gleitfensters über den Eingabe-Tensor.

Syntax

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

Angehörige

InputTensor

Typ: DML_TENSOR_DESC*

Ein Eingabe-Tensor mit Größen{ BatchCount, ChannelCount, Height, Width } für 4D und { BatchCount, ChannelCount, Depth, Height, Width } für 5D.

OutputTensor

Typ: DML_TENSOR_DESC*

Der Ausgabe-Tensor, in den geschrieben werden soll. Die Größen des Ausgabe-Tensors können wie folgt berechnet werden.

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

Typ: UINT-

Die Anzahl der räumlichen Dimensionen des Eingabe-Tensors InputTensor, die auch der Anzahl der Dimensionen des gleitenden Fensters WindowSizeentspricht. Dieser Wert bestimmt auch die Größe der Strides, StartPaddingund EndPadding Arrays. Es sollte auf 2 festgelegt werden, wenn InputTensor- 4D ist, und 3, wenn es sich um einen 5D-Tensor handelt.

Strides

Typ: _Field_size_(DimensionCount) UINT-*

Ein Array, das die Strides für die Gleitfensterabmessungen von Größen enthält, { Height, Width }, wenn die DimensionCount- auf 2 festgelegt ist, oder { Depth, Height, Width }, wenn sie auf 3 festgelegt ist.

WindowSize

Typ: _Field_size_(DimensionCount) UINT-*

Ein Array, das die Dimensionen des Gleitfensters in { Height, Width }enthält, wenn DimensionCount- auf 2 festgelegt ist, oder { Depth, Height, Width }, wenn er auf 3 festgelegt ist.

StartPadding

Typ: _Field_size_(DimensionCount) UINT-*

Ein Array, das die Anzahl der Abstandselemente enthält, die am Anfang jeder räumlichen Dimension des Eingabe-Tensors InputTensor-angewendet werden sollen. Die Werte sind in { Height, Width }, wenn DimensionCount- auf 2 festgelegt ist, oder { Depth, Height, Width }, wenn sie auf 3 festgelegt ist.

EndPadding

Typ: _Field_size_(DimensionCount) UINT-*

Ein Array, das die Anzahl der Abstandselemente enthält, die am Ende jeder räumlichen Dimension des Eingabe-Tensors InputTensorangewendet werden sollen. Die Werte sind in { Height, Width }, wenn DimensionCount- auf 2 festgelegt ist, oder { Depth, Height, Width }, wenn sie auf 3 festgelegt ist.

P

Typ: UINT-

Der Wert der P Variablen in der Lp-Normalisierungsfunktion Y = (X1^P + X2^P + ... + Xn^P) ^ (1/P), wobei X1Xn, um die einzelnen Werte im Gleitfenster darzustellen. In gängigen Anwendungsfällen wird dieser Wert entweder auf 1 oder 2 festgelegt, was entweder die L1- oder L2-Normalisierung darstellt.

Verfügbarkeit

Dieser Operator wurde in DML_FEATURE_LEVEL_1_0eingeführt.

Tensoreinschränkungen

InputTensor- und OutputTensor- müssen denselben DataType- und DimensionCount-aufweisen.

Tensorunterstützung

Tensor Art Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 bis 5 FLOAT32, FLOAT16
OutputTensor Ausgabe 4 bis 5 FLOAT32, FLOAT16

Anforderungen

Anforderung Wert
Header- directml.h