Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vypočítá přechody backpropagation pro DML_RESAMPLE2_OPERATOR_DESC.
DML_RESAMPLE2_OPERATOR_DESC škáluje libovolné dimenze vstupního tensoru pomocí vzorkování nejbližšího souseda nebo bilineární interpolace. Vzhledem k tomu, InputGradientTensor se stejnými velikostmi jako výstupekvivalentního DML_RESAMPLE2_OPERATOR_DESC, tento operátor vytvoří OutputGradientTensor se stejnými velikostmi jako vstupDML_RESAMPLE2_OPERATOR_DESC.
Představte si například DML_RESAMPLE2_OPERATOR_DESC , která provádí měřítko nejbližšího souseda o šířce 1,5x a výšku 0,5x:
InputTensor OutputTensor
[[1, 2], Resample [1, 1, 2]
[3, 4]] -->
Všimněte si, jak 0. prvek vstupního tensoru (s hodnotou 1) přispívá ke dvěma prvkům ve výstupu; první prvek (s hodnotou 2) přispívá k jednomu prvku ve výstupu; a 2. a 3. prvky (s hodnotami 3 a 4) nepřispívají k žádným prvkům výstupu.
Odpovídající DML_RESAMPLE_GRAD1_OPERATOR_DESC by provedl následující:
InputGradientTensor OutputGradientTensor
[4, 5, 6] ResampleGrad [[9, 6],
--> [0, 0]]
Všimněte si, že hodnoty v OutputGradientTensor představují vážené příspěvky tohoto prvku do OutputTensor během původního DML_RESAMPLE2_OPERATOR_DESC operátoru.
Důležité
Toto rozhraní API je k dispozici jako součást samostatného distribuovatelného balíčku DirectML (viz Microsoft.AI.DirectML verze 1.9 a novější. Podívejte se také na historii verzí DirectML.
Syntaxe
struct DML_RESAMPLE_GRAD1_OPERATOR_DESC
{
const DML_TENSOR_DESC* InputGradientTensor;
const DML_TENSOR_DESC* OutputGradientTensor;
DML_INTERPOLATION_MODE InterpolationMode;
DML_AXIS_DIRECTION RoundingDirection;
UINT DimensionCount;
_Field_size_(DimensionCount) const FLOAT* Scales;
_Field_size_(DimensionCount) const FLOAT* InputPixelOffsets;
_Field_size_(DimensionCount) const FLOAT* OutputPixelOffsets;
};
Členové
InputGradientTensor
Typ: const DML_TENSOR_DESC*
Vstupní přechodový tenzor. Obvykle se získá z výstupu zpětného šíření předchozí vrstvy. Obvykle by tento tensor měl stejné velikosti jako výstup odpovídajících DML_RESAMPLE2_OPERATOR_DESC v předávacím průchodu.
OutputGradientTensor
Typ: const DML_TENSOR_DESC*
Výstupní tensor obsahující backpropagované přechody. Obvykle by tento tensor měl stejné velikosti jako vstup odpovídajících DML_RESAMPLE2_OPERATOR_DESC v předávacím průchodu.
InterpolationMode
Viz DML_RESAMPLE2_OPERATOR_DESC::InterpolationMode.
RoundingDirection
Typ: DML_AXIS_DIRECTION
Viz DML_RESAMPLE2_OPERATOR_DESC::RoundingDirection.
DimensionCount
Typ: UINT
Počet prvků v polích Scales, InputPixelOffsets a OutputPixelOffsets . Tato hodnota se musí shodovat s hodnotou DimensionCount zadanou v InputGradientTensoru a OutputGradientTensor.
Scales
Typ: _Field_size_(DimensionCount) const FLOAT*
Viz DML_RESAMPLE2_OPERATOR_DESC::Scales.
InputPixelOffsets
Typ: _Field_size_(DimensionCount) const FLOAT*
Viz DML_RESAMPLE2_OPERATOR_DESC::InputPixelOffsets.
OutputPixelOffsets
Typ: _Field_size_(DimensionCount) const FLOAT*
Viz DML_RESAMPLE2_OPERATOR_DESC::OutputPixelOffsets.
Poznámky
Tento operátor je ekvivalentní DML_RESAMPLE_GRAD_OPERATOR_DESC , pokud je interpolačnímode nastaven na DML_INTERPOLATION_MODE_LINEAR; nebo pokud je InterpolationMode nastavena na DML_INTERPOLATION_MODE_NEAREST_NEIGHBOR a RoundingDirection na DML_AXIS_DIRECTION_DECREASING a OutputPixelOffsets jsou upraveny další -0,5.
Dostupnost
Tento operátor byl zaveden v DML_FEATURE_LEVEL_5_1.
Omezení Tensoru
InputGradientTensor a OutputGradientTensor musí mít stejný datový typ a dimenziCount.
Podpora tensoru
| Tenzor | Laskavý | Podporované počty dimenzí | Podporované datové typy |
|---|---|---|---|
| VstupníGradientTensor | Vstup | 1 až 4 | FLOAT32, FLOAT16 |
| OutputGradientTensor | Výstup | 1 až 4 | FLOAT32, FLOAT16 |
Požadavky
| Záhlaví | directml.h |