DML_AVERAGE_POOLING_GRAD_OPERATOR_DESC 構造体 (directml.h)
平均プールのバックプロパティ グラデーションを計算します ( 「DML_AVERAGE_POOLING_OPERATOR_DESC」を参照)。
次の処理を実行する、パディングとストライドが 1 の 2 x 2 DML_AVERAGE_POOLING_OPERATOR_DESCについて考えてみましょう。
InputTensor OutputTensor
[[[[1, 2, 3], AvgPool [[[[3, 4],
[4, 5, 6], --> [6, 7]]]]
[7, 8, 9]]]]
入力テンソルの各 2x2 ウィンドウは、出力の 1 つの要素を生成するように平均化されます (エッジを超える要素の場合は 0 を読み取ります)。 同様のパラメーターを指定 したDML_AVERAGE_POOLING_GRAD_OPERATOR_DESC の出力の例を次に示します。
InputGradientTensor OutputGradientTensor
[[[[1, 2], AvgPoolGrad [[[[0.25, 0.75, 0.5],
[3, 4]]]] --> [ 1, 2.5, 1.5],
[0.75, 1.75, 1]]]]
OutputGradientTensor の値は、元のDML_AVERAGE_POOLING_OPERATOR_DESC演算子中に OutputTensor に対するその要素の重み付けされたコントリビューションを表していることに注意してください。
構文
struct DML_AVERAGE_POOLING_GRAD_OPERATOR_DESC {
const DML_TENSOR_DESC *InputGradientTensor;
const DML_TENSOR_DESC *OutputGradientTensor;
UINT DimensionCount;
const UINT *Strides;
const UINT *WindowSize;
const UINT *StartPadding;
const UINT *EndPadding;
BOOL IncludePadding;
};
メンバー
InputGradientTensor
型: const DML_TENSOR_DESC*
入力されるグラデーションテンソル。 これは通常、前のレイヤーのバックプロパティの出力から取得されます。 通常、このテンソルは、前方パス内の対応するDML_AVERAGE_POOLING_OPERATOR_DESCの出力と同じサイズになります。
OutputGradientTensor
型: const DML_TENSOR_DESC*
バックプロパティされたグラデーションを含む出力テンソル。 通常、このテンソルは、前方パス内の対応するDML_AVERAGE_POOLING_OPERATOR_DESCの入力と同じサイズになります。
DimensionCount
型: UINT
Strides、WindowSize、StartPadding、および EndPadding 配列内の要素の数。 この値は、空間ディメンション数と等しい必要があります。 空間次元数は、4D テンソルが指定されている場合は 2、5D テンソルが指定されている場合は 3 です。
Strides
型: _Field_size_(DimensionCount) const UINT*
「DML_AVERAGE_POOLING_OPERATOR_DESCのストライド」を参照してください。
WindowSize
型: _Field_size_(DimensionCount) const UINT*
「DML_AVERAGE_POOLING_OPERATOR_DESCの WindowSize」を参照してください。
StartPadding
型: _Field_size_(DimensionCount) const UINT*
「 startPadding in DML_AVERAGE_POOLING_OPERATOR_DESC」を参照してください。
EndPadding
型: _Field_size_(DimensionCount) const UINT*
「DML_AVERAGE_POOLING_OPERATOR_DESCでの EndPadding」を参照してください。
IncludePadding
種類: BOOL
「DML_AVERAGE_POOLING_OPERATOR_DESCの IncludePadding」を参照してください。
可用性
この演算子は、 で DML_FEATURE_LEVEL_3_0
導入されました。
テンソル制約
InputGradientTensor と OutputGradientTensor には、同じ DataType と DimensionCount が必要です。
Tensor のサポート
テンソル | 種類 | サポートされているディメンション数 | サポートされるデータ型 |
---|---|---|---|
InputGradientTensor | 入力 | 4 から 5 | FLOAT32、FLOAT16 |
OutputGradientTensor | 出力 | 4 から 5 | FLOAT32、FLOAT16 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 ビルド 20348 |
サポートされている最小のサーバー | Windows 10 ビルド 20348 |
Header | directml.h |