DML_DEPTH_TO_SPACE_OPERATOR_DESC 구조체(directml.h)
깊이에서 공간 데이터 블록으로 데이터를 다시 정렬(음소거)합니다. 연산자는 깊이 차원의 값이 공간 블록에서 높이 및 너비 차원으로 이동하는 입력 텐서의 복사본을 출력합니다.
이것은 DML_SPACE_TO_DEPTH_OPERATOR_DESC 역 변환입니다.
구문
struct DML_DEPTH_TO_SPACE_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
UINT BlockSize;
};
멤버
InputTensor
형식: const DML_TENSOR_DESC*
읽을 텐서입니다. 입력 텐서의 차원은 입니다 { BatchCount, InputChannelCount, InputHeight, InputWidth }
.
OutputTensor
형식: const DML_TENSOR_DESC*
결과를 쓸 텐서입니다. 출력 텐서의 차원은 입니다 { BatchCount, OutputChannelCount, OutputHeight, OutputWidth }
. 여기서:
- OutputChannelCount는 InputChannelCount /(BlockSize BlockSize * )로 계산됩니다.
- OutputHeight는 InputHeight * BlockSize로 계산됩니다.
- OutputWidth는 InputWidth * BlockSize로 계산됩니다.
BlockSize
형식: UINT
이동된 블록의 너비와 높이입니다.
예제
BlockSize: 2
InputTensor: (Sizes:{1, 8, 2, 3}, DataType:UINT32)
[[[[0, 1, 2],
[3, 4, 5]],
[[9, 10, 11],
[12, 13, 14]],
[[18, 19, 20],
[21, 22, 23]],
[[27, 28, 29],
[30, 31, 32]],
[[36, 37, 38],
[39, 40, 41]],
[[45, 46, 47],
[48, 49, 50]],
[[54, 55, 56],
[57, 58, 59]],
[[63, 64, 65],
[66, 67, 68]]]]
OutputTensor: (Sizes:{1, 2, 4, 6}, DataType:UINT32)
[[[[ 0, 18, 1, 19, 2, 20],
[36, 54, 37, 55, 38, 56],
[ 3, 21, 4, 22, 5, 23],
[39, 57, 40, 58, 41, 59]],
[[ 9, 27, 10, 28, 11, 29],
[45, 63, 46, 64, 47, 65],
[12, 30, 13, 31, 14, 32],
[48, 66, 49, 67, 50, 68]]]]
설명
이 연산자의 최신 버전인 DML_DEPTH_TO_SPACE1_OPERATOR_DESC 에 DML_FEATURE_LEVEL_2_1
도입되었습니다.
가용성
이 연산자는 에서 DML_FEATURE_LEVEL_1_0
도입되었습니다.
텐서 제약 조건
InputTensor 및 OutputTensor 에는 동일한 DataType이 있어야 합니다.
텐서 지원
DML_FEATURE_LEVEL_5_0 이상
텐서 | 종류 | 차원 | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|---|
InputTensor | 입력 | { BatchCount, InputChannelCount, InputHeight, InputWidth } | 4 | FLOAT64, FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
OutputTensor | 출력 | { BatchCount, OutputChannelCount, OutputHeight, OutputWidth } | 4 | FLOAT64, FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_2_1 이상
텐서 | 종류 | 차원 | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|---|
InputTensor | 입력 | { BatchCount, InputChannelCount, InputHeight, InputWidth } | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
OutputTensor | 출력 | { BatchCount, OutputChannelCount, OutputHeight, OutputWidth } | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_1_0 이상
텐서 | 종류 | 차원 | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|---|
InputTensor | 입력 | { BatchCount, InputChannelCount, InputHeight, InputWidth } | 4 | FLOAT32, FLOAT16 |
OutputTensor | 출력 | { BatchCount, OutputChannelCount, OutputHeight, OutputWidth } | 4 | FLOAT32, FLOAT16 |
요구 사항
요구 사항 | 값 |
---|---|
헤더 | directml.h |