DML_AVERAGE_POOLING1_OPERATOR_DES C構造体 (directml.h)

入力テンソルのスライディング ウィンドウ内の要素全体の値を平均化します。

重要

この API は、DirectML スタンドアロン再頒布可能パッケージの一部として使用できます (Microsoft.AI.DirectML バージョン 1.13 以降を参照してください)。 DirectML バージョン履歴も参照してください。

構文

struct DML_AVERAGE_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;
    BOOL IncludePadding;
};

メンバー

InputTensor

型: const DML_TENSOR_DESC*

4D には { BatchCount, ChannelCount, Height, Width }、5D には { 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 の次元の数にも対応します。 この値は、StridesStartPaddingndPadding 配列のサイズも決定します。 InputTensor が 4D の場合は 2、5D テンソルの場合は 3 に設定する必要があります。

Strides

型: _Field_size_(DimensionCount) const UINT*

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

WindowSize

型: _Field_size_(DimensionCount) const UINT*

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

StartPadding

型: _Field_size_(DimensionCount) const UINT*

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

EndPadding

型: _Field_size_(DimensionCount) const UINT*

入力テンソル InputTensor の各空間次元の末尾に適用される埋め込み要素の数。 値は、DimensionCount が 2 に設定されている場合、または { Depth, Height, Width } が 3 に設定されている場合に { Height, Width } に表示されます。

Dilations

型: _Field_size_(DimensionCount) const UINT*

スライディング ウィンドウ内の要素がその値のすべての要素に対して選択される、入力テンソル InputTensor の各空間次元の値。 値は、DimensionCount が 2 に設定されている場合、または { Depth, Height, Width } が 3 に設定されている場合に { Height, Width } に表示されます。

IncludePadding

型: BOOL

スライディング ウィンドウ内のすべての要素の平均値を計算するときに、空間エッジの周囲に埋め込み要素を含めるかどうかを示します。 この値が FALSE に設定されている場合、埋め込み要素は平均計算の除数値の一部としてカウントされません。

解説

DML_AVERAGE_POOLING1_OPERATOR_DESC は、追加の定数配列膨張を除けば、DML_AVERAGE_POOLING_OPERATOR_DESC のようなものです。 Dilations が、4D 入力機能の場合は { 1,1 } に、5D 入力機能の場合は { 1,1,1 } に設定されている場合、DML_AVERAGE_POOLING1_OPERATOR_DESCDML_AVERAGE_POOLING_OPERATOR_DESC と同等です。

可用性

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

Tensor 制約

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

Tensor のサポート

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

要件

   
ヘッダー directml.h