DML_RESAMPLE_GRAD_OPERATOR_DESC 구조체(directml.h)
Resample에 대한 백프로포지션 그라데이션을 계산합니다( DML_RESAMPLE1_OPERATOR_DESC 참조).
DML_RESAMPLE1_OPERATOR_DESC 가장 가까운 인접 샘플링 또는 쌍선형 보간을 사용하여 입력 텐서의 임의 차원을 다시 조정합니다. 동일한 DML_RESAMPLE1_OPERATOR_DESC 출력과 크기가 같은 InputGradientTensor가 있는 경우 이 연산자는 DML_RESAMPLE1_OPERATOR_DESC입력과 동일한 크기의 OutputGradientTensor를 생성합니다.
예를 들어 너비가 1.5배, 높이가 0.5배인 가장 가까운 인접 크기 조정을 수행하는 DML_RESAMPLE1_OPERATOR_DESC 생각해 보세요.
InputTensor OutputTensor
[[1, 2], Resample [1, 1, 2]
[3, 4]] -->
입력 텐서의 0번째 요소(값 1)가 출력의 두 요소에 기여하고, 1차 요소(값 2)가 출력의 한 요소에 기여하고, 2번째 및 3번째 요소(값 3 및 4)가 출력의 요소에 기여하지 않는지 확인합니다.
해당 DML_RESAMPLE_GRAD_OPERATOR_DESC 다음을 수행합니다.
InputGradientTensor OutputGradientTensor
[4, 5, 6] ResampleGrad [[9, 6],
--> [0, 0]]
OutputGradientTensor의 값은 원래 DML_RESAMPLE1_OPERATOR_DESC 연산자 동안 해당 요소의 가중치 기여 OutputTensor로 나타냅니다.
구문
struct DML_RESAMPLE_GRAD_OPERATOR_DESC {
const DML_TENSOR_DESC *InputGradientTensor;
const DML_TENSOR_DESC *OutputGradientTensor;
DML_INTERPOLATION_MODE InterpolationMode;
UINT DimensionCount;
const FLOAT *Scales;
const FLOAT *InputPixelOffsets;
const FLOAT *OutputPixelOffsets;
};
멤버
InputGradientTensor
형식: const DML_TENSOR_DESC*
들어오는 그라데이션 텐서입니다. 이는 일반적으로 이전 계층의 백프로포지션 출력에서 가져옵니다. 일반적으로 이 텐서의 크기는 전달 패스의 해당 DML_RESAMPLE1_OPERATOR_DESC출력과 같습니다.
OutputGradientTensor
형식: const DML_TENSOR_DESC*
백프로파일된 그라데이션을 포함하는 출력 텐서입니다. 일반적으로 이 텐서의 크기는 전달 패스에 있는 해당 DML_RESAMPLE1_OPERATOR_DESC입력과 같습니다.
InterpolationMode
DML_RESAMPLE1_OPERATOR_DESCInterpolationMode를 참조하세요.
DimensionCount
형식: UINT
Scales, InputPixelOffsets 및 OutputPixelOffsets 배열의 요소 수입니다. 이 값은 InputGradientTensor 및 OutputGradientTensor에 제공된 DimensionCount와 같아야 합니다.
Scales
형식: _Field_size_(DimensionCount) const FLOAT*
DML_RESAMPLE1_OPERATOR_DESC크기 조정을 참조하세요.
InputPixelOffsets
형식: _Field_size_(DimensionCount) const FLOAT*
DML_RESAMPLE1_OPERATOR_DESCInputPixelOffsets를 참조하세요.
OutputPixelOffsets
형식: _Field_size_(DimensionCount) const FLOAT*
DML_RESAMPLE1_OPERATOR_DESCOutputPixelOffsets를 참조하세요.
가용성
이 연산자는 에서 DML_FEATURE_LEVEL_3_0
도입되었습니다.
텐서 제약 조건
InputGradientTensor 및 OutputGradientTensor 에는 동일한 DataType 및 DimensionCount가 있어야 합니다.
텐서 지원
DML_FEATURE_LEVEL_5_1 이상
텐서 | Kind | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|
InputGradientTensor | 입력 | 1~4개 | FLOAT32, FLOAT16 |
OutputGradientTensor | 출력 | 1~4개 | FLOAT32, FLOAT16 |
DML_FEATURE_LEVEL_3_0 이상
텐서 | Kind | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|
InputGradientTensor | 입력 | 4 | FLOAT32, FLOAT16 |
OutputGradientTensor | 출력 | 4 | FLOAT32, FLOAT16 |
요구 사항
지원되는 최소 클라이언트 | Windows 10 빌드 20348 |
지원되는 최소 서버 | Windows 10 빌드 20348 |
머리글 | directml.h |