对 InputTensor 中的每个元素执行收缩激活函数,将结果放入 OutputTensor 的相应元素中。
f(x) = x - Bias, if x > Threshold
x + Bias, if x < -Threshold
0, otherwise
此运算符支持就地执行,这意味着允许输出张量在绑定期间将 InputTensor 别名。
语法
struct DML_ACTIVATION_SHRINK_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
FLOAT Bias;
FLOAT Threshold;
};
成员
InputTensor
类型: const DML_TENSOR_DESC*
要从中读取的输入张量。
OutputTensor
类型: const DML_TENSOR_DESC*
要向其写入结果的输出张量。
Bias
类型: FLOAT
偏差的值。 此值的典型默认值为 0.0。
Threshold
类型: FLOAT
阈值的值。 此值的典型默认值为 0.5。
注解
可用性
此运算符是在 中引入的 DML_FEATURE_LEVEL_2_0。
张量约束
InputTensor 和 OutputTensor 必须具有相同的 DataType、 DimensionCount 和 Size。
Tensor 支持
DML_FEATURE_LEVEL_5_1 及更高版本
| 张 | 种类 | 支持的维度计数 | 支持的数据类型 |
|---|---|---|---|
| InputTensor | 输入 | 1 到 8 | FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8 |
| OutputTensor | 输出 | 1 到 8 | FLOAT32、FLOAT16、INT32、INT16、INT8、UINT32、UINT16、UINT8 |
DML_FEATURE_LEVEL_3_0及更高版本
| 张 | 种类 | 支持的维度计数 | 支持的数据类型 |
|---|---|---|---|
| InputTensor | 输入 | 1 到 8 | FLOAT32、FLOAT16 |
| OutputTensor | 输出 | 1 到 8 | FLOAT32、FLOAT16 |
DML_FEATURE_LEVEL_2_0及更高版本
| 张 | 种类 | 支持的维度计数 | 支持的数据类型 |
|---|---|---|---|
| InputTensor | 输入 | 4 到 5 | FLOAT32、FLOAT16 |
| OutputTensor | 输出 | 4 到 5 | FLOAT32、FLOAT16 |
要求
| 要求 | 值 |
|---|---|
| 最低受支持的客户端 | Windows 10版本 2004 (10.0;内部版本 19041) |
| 最低受支持的服务器 | Windows Server 版本 2004 (10.0;内部版本 19041) |
| 标头 | directml.h |