DML_AVERAGE_POOLING_OPERATOR_DESC 구조체(directml.h)
입력 텐서를 통해 슬라이딩 윈도우 내의 요소에 걸쳐 값을 평균합니다.
구문
struct DML_AVERAGE_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;
BOOL IncludePadding;
};
멤버
InputTensor
형식: const DML_TENSOR_DESC*
4D 및 { BatchCount, ChannelCount, Depth, Height, Weight }
5D에 대한 크기의{ BatchCount, ChannelCount, Height, Width }
입력 텐서입니다.
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의 차원 수에도 해당합니다. 이 값은 Strides, StartPadding 및 EndPadding 배열의 크기도 결정합니다. InputTensor가 4D일 때는 2로, 5D 텐서인 경우 3으로 설정해야 합니다.
Strides
형식: _Field_size_(DimensionCount) const UINT*
DimensionCount가 2로 설정되거나 { Depth, Height, Width }
3으로 설정된 경우 크기의 { Height, Width }
슬라이딩 윈도우 크기에 대한 보폭입니다.
WindowSize
형식: _Field_size_(DimensionCount) const UINT*
DimensionCount가 2로 { Height, Width }
설정되거나 { Depth, Height, Width }
3으로 설정된 경우 의 슬라이딩 윈도우 크기입니다.
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으로 설정된 경우 값이 에 있습니다.
IncludePadding
형식: BOOL
슬라이딩 윈도우 내의 모든 요소에서 평균 값을 계산할 때 공간 가장자리 주위에 안쪽 여백 요소를 포함할지 여부를 나타냅니다. 값이 FALSE로 설정되면 패딩 요소는 평균 계산의 제수 값의 일부로 계산되지 않습니다.
가용성
이 연산자는 에서 DML_FEATURE_LEVEL_1_0
도입되었습니다.
텐서 제약 조건
InputTensor 및 OutputTensor 에는 동일한 DataType 및 DimensionCount가 있어야 합니다.
텐서 지원
텐서 | 종류 | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|
InputTensor | 입력 | 4~5 | FLOAT32, FLOAT16 |
OutputTensor | 출력 | 4~5 | FLOAT32, FLOAT16 |
요구 사항
요구 사항 | 값 |
---|---|
헤더 | directml.h |