DML_MAX_POOLING_OPERATOR_DESC構造体 (directml.h)

入力テンソル上のスライディング ウィンドウ内の要素の最大値を計算します。

構文

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

メンバー

InputTensor

型: const DML_TENSOR_DESC*

InputTensor.DimensionCount が 4 の場合、および InputTensor.DimensionCount が 5 の場合は、サイズ{ BatchCount, ChannelCount, Height, Width }入力テンソル{ BatchCount, ChannelCount, Depth, Height, Weight }

OutputTensor

型: const DML_TENSOR_DESC*

結果を書き込む出力テンソル。 出力テンソルのサイズは、次のように計算できます。

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

型: UINT

入力テンソル InputTensor の空間ディメンションの数。スライディング ウィンドウ WindowSize のディメンションの数にも対応します。 この値は、StridesStartPadding、EndPadding 配列のサイズも決定します。 InputTensor が 4D の場合は 2、5D テンソルの場合は 3 に設定する必要があります。

Strides

型: const UINT*

DimensionCount が 2 に設定されている場合、または { Depth, Height, Width } 3 に設定されている場合のスライディング ウィンドウのサイズ{ Height, Width }のストライド。

WindowSize

型: _Field_size_(DimensionCount) const UINT*

DimensionCount が 2 に設定されている場合、または { Depth, Height, Width } 3 に設定されている場合のスライディング ウィンドウ{ Height, Width }のディメンション。

StartPadding

型: _Field_size_(DimensionCount) const UINT*

入力テンソル InputTensor の各空間ディメンションの先頭に適用される埋め込み要素の数。 値は、DimensionCount{ Height, Width } 2 に設定されている場合、または { Depth, Height, Width } 3 に設定されている場合は です。

EndPadding

型: _Field_size_(DimensionCount) const UINT*

入力テンソル InputTensor の各空間ディメンションの末尾に適用されるパディング要素の数。 値は、DimensionCount{ Height, Width } 2 に設定されている場合、または { Depth, Height, Width } 3 に設定されている場合は です。

注釈

この演算子の新しいバージョン である DML_MAX_POOLING1_OPERATOR_DESC が で DML_FEATURE_LEVEL_2_0導入されました。

可用性

この演算子は で DML_FEATURE_LEVEL_1_0導入されました。

テンソル制約

InputTensorOutputTensor には、同じ DataTypeDimensionCount が必要です。

Tensor のサポート

DML_FEATURE_LEVEL_5_0以上

テンソル 種類 サポートされているディメンション数 サポートされるデータ型
InputTensor 入力 4 から 5 FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8
OutputTensor 出力 4 から 5 FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8

DML_FEATURE_LEVEL_3_0以上

テンソル 種類 サポートされているディメンション数 サポートされるデータ型
InputTensor 入力 4 から 5 FLOAT32、FLOAT16、INT8、UINT8
OutputTensor 出力 4 から 5 FLOAT32、FLOAT16、INT8、UINT8

DML_FEATURE_LEVEL_1_0以上

テンソル 種類 サポートされているディメンション数 サポートされるデータ型
InputTensor 入力 4 から 5 FLOAT32、FLOAT16
OutputTensor 出力 4 から 5 FLOAT32、FLOAT16

要件

要件
Header directml.h