Freigeben über


DML_LP_POOLING1_OPERATOR_DESC-Struktur (directml.h)

Berechnet den LP-normalisierten Wert über die Elemente innerhalb des gleitenden Fensters über den Eingabetensor.

Wichtig

Diese API ist als Teil des eigenständigen weiterverteilbare Pakets DirectML verfügbar (siehe Microsoft.AI.DirectML , Version 1.13 und höher). Siehe auch DirectML-Versionsverlauf.

Syntax

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

Member

InputTensor

Typ: const DML_TENSOR_DESC*

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

OutputTensor

Typ: const DML_TENSOR_DESC*

Eine Beschreibung des Ausgabe-Tensors, 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 Zahl der räumlichen Dimensionen des Eingabe-Tensor InputTensor, der auch der Zahl der Dimensionen des gleitenden Fensters WindowSize entspricht. Dieser Wert bestimmt auch die Größe der Arrays Strides, StartPadding und EndPadding. Er sollte auf 2 festgelegt werden, wenn InputTensor 4D ist, und 3, wenn es sich um einen 5D-Tensor handelt.

Strides

Typ: _Field_size_(DimensionCount) const UINT*

Eine Matrix mit den Fortschritten für die Größendimensionen des gleitenden Fensters { Height, Width }, wenn DimensionCount auf 2 festgelegt ist, oder { Depth, Height, Width } wenn er auf 3 festgelegt ist.

WindowSize

Typ: _Field_size_(DimensionCount) const UINT*

Eine Matrix mit den Dimensionen für das gleitende Fenster in { Height, Width }, wenn DimensionCount auf 2 festgelegt ist, oder { Depth, Height, Width } wenn er auf 3 festgelegt ist.

StartPadding

Typ: _Field_size_(DimensionCount) const UINT*

Eine Matrix mit der Anzahl der Auffüllungselemente, die am Anfang jeder räumlichen Dimension des Eingabe-Tensor InputTensor angewendet werden sollen. Die Werte befinden sich in { Height, Width } wenn DimensionCount auf 2 festgelegt ist oder { Depth, Height, Width } wenn sie auf 3 festgelegt ist.

EndPadding

Typ: _Field_size_(DimensionCount) const UINT*

Eine Matrix mit der Anzahl der Auffüllungselemente, die am Ende jeder räumlichen Dimension des Eingabe-Tensor InputTensor angewendet werden sollen. Die Werte befinden sich in { Height, Width } wenn DimensionCount auf 2 festgelegt ist oder { Depth, Height, Width } wenn sie auf 3 festgelegt ist.

Dilations

Typ: _Field_size_(DimensionCount) const UINT*

Die Werte für jede räumliche Dimension des Eingabe-Tensor InputTensor, mit dem ein Element innerhalb des gleitenden Fensters für jedes Element dieses Werts ausgewählt wird. Die Werte befinden sich 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 X1 bis Xn die einzelnen Werte im gleitenden Fenster darstellen. In gängigen Anwendungsfällen wird dieser Wert entweder auf 1 oder 2 festgelegt, was entweder die L1- oder L2-Normalisierung darstellt.

Hinweise

DML_LP_POOLING1_OPERATOR_DESC ist wie DML_LP_POOLING_OPERATOR_DESC, mit Ausnahme einer zusätzlichen Konstanten–Matrix Dilation. Wenn Dilations für 4D-Eingaben auf { 1,1 } oder { 1,1,1 } für 5D-Eingabefeatures festgelegt sind, ist DML_LP_POOLING1_OPERATOR_DESC äquivalent für DML_LP_POOLING_OPERATOR_DESC.

Verfügbarkeit

Dieser Operator wurde in DML_FEATURE_LEVEL_6_2 eingeführt.

Tensor-Einschränkungen

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

Tensor-Unterstützung

Tensor Variante Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 bis 5 FLOAT32, FLOAT16
OutputTensor Output 4 bis 5 FLOAT32, FLOAT16

Anforderungen

   
Übergeordnet directml.h