directml.h (DML_ELEMENT_WISE_CLIP_GRAD1_OPERATOR_DESC 結構)
計算 DML_OPERATOR_ELEMENT_WISE_CLIP1的反向傳播漸層。
f(x, gradient) = if x <= Min then 0
if x >= Max then 0
else then gradient
此運算子支援就地執行,這表示在系結期間允許 OutputTensor 將 InputTensor 別名化。
語法
struct DML_ELEMENT_WISE_CLIP_GRAD1_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *InputGradientTensor;
const DML_TENSOR_DESC *OutputGradientTensor;
DML_TENSOR_DATA_TYPE MinMaxDataType;
DML_SCALAR_UNION Min;
DML_SCALAR_UNION Max;
};
成員
InputTensor
類型:const DML_TENSOR_DESC*
輸入特徵張量。 這通常與 InputTensor 提供的張量相同,以在轉送中 DML_OPERATOR_ELEMENT_WISE_CLIP1 。
InputGradientTensor
類型:const DML_TENSOR_DESC*
傳入漸層張量。 這通常是從前一層反向傳播的輸出取得。 一般而言,此張量的大小會與正向傳遞中對應DML_OPERATOR_ELEMENT_WISE_CLIP1的輸出相同。
OutputGradientTensor
類型:const DML_TENSOR_DESC*
包含反向漸層的輸出張量。 一般而言,此張量的大小會與正向傳遞中對應DML_OPERATOR_ELEMENT_WISE_CLIP1的輸入相同。
MinMaxDataType
Min和Max成員的資料類型,必須符合OutputTensor.DataType。
Min
類型: DML_SCALAR_UNION
最小值。 如果 x 位於或低於此值,則漸層結果為 0。 MinMaxDataType 決定如何解譯欄位。
Max
類型: DML_SCALAR_UNION
最大值。 如果 x 位於或高於此值,則漸層結果為 0。 MinMaxDataType 決定如何解譯欄位。
備註
可用性
此運算子是在 DML_FEATURE_LEVEL_5_0中引進。
Tensor 條件約束
InputGradientTensor、 InputTensor和 OutputGradientTensor 必須具有相同 的 DataType、 DimensionCount和 大小。
Tensor 支援
張 | 種類 | 支援的維度計數 | 支援的資料類型 |
---|---|---|---|
InputTensor | 輸入 | 1 到 8 | FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8 |
InputGradientTensor | 輸入 | 1 到 8 | FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8 |
OutputGradientTensor | 輸出 | 1 到 8 | FLOAT32、FLOAT16、INT64、INT32、INT16、INT8、UINT64、UINT32、UINT16、UINT8 |
規格需求
標頭 | directml.h |