(directml.h) DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC 结构
针对 ScaleTensorZeroPointTensor
中的对应元素对 InputTensor 中的每个元素执行以下线性去量化函数,并将结果置于 OutputTensor 的相应元素中。
f(input, scale, zero_point) = (input - zero_point) * scale
量化是一种以精度为代价提高性能的常用方法。 一组 8 位 int 值的计算速度比一组 32 位浮点值更快。 取消数量化会将编码的数据转换回其域。
语法
struct DML_ELEMENT_WISE_DEQUANTIZE_LINEAR_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *ScaleTensor;
const DML_TENSOR_DESC *ZeroPointTensor;
const DML_TENSOR_DESC *OutputTensor;
};
成员
InputTensor
类型: const DML_TENSOR_DESC*
包含输入的张量。
ScaleTensor
类型: const DML_TENSOR_DESC*
包含刻度的张量。
ZeroPointTensor
类型: const DML_TENSOR_DESC*
包含用于量化的零点的张量。
OutputTensor
类型: const DML_TENSOR_DESC*
要向其写入结果的输出张量。
可用性
此运算符是在 中引入的 DML_FEATURE_LEVEL_1_0
。
张量约束
- InputTensor、 OutputTensor、 ScaleTensor 和 ZeroPointTensor 必须具有相同的 DimensionCount 和 Size。
- InputTensor 和 ZeroPointTensor 必须具有相同的 数据类型。
- OutputTensor 和 ScaleTensor 必须具有相同的 数据类型。
Tensor 支持
DML_FEATURE_LEVEL_6_2及更高版本
张 | 种类 | 支持的维度计数 | 支持的数据类型 |
---|---|---|---|
InputTensor | 输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
ScaleTensor | 输入 | 1 到 8 | FLOAT32、FLOAT16 |
ZeroPointTensor | 可选输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
OutputTensor | 输出 | 1 到 8 | FLOAT32、FLOAT16 |
DML_FEATURE_LEVEL_6_0及更高版本
张 | 种类 | 支持的维度计数 | 支持的数据类型 |
---|---|---|---|
InputTensor | 输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
ScaleTensor | 输入 | 1 到 8 | FLOAT32、FLOAT16 |
ZeroPointTensor | 输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
OutputTensor | 输出 | 1 到 8 | FLOAT32、FLOAT16 |
DML_FEATURE_LEVEL_3_0及更高版本
张 | 种类 | 支持的维度计数 | 支持的数据类型 |
---|---|---|---|
InputTensor | 输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
ScaleTensor | 输入 | 1 到 8 | FLOAT32 |
ZeroPointTensor | 输入 | 1 到 8 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
OutputTensor | 输出 | 1 到 8 | FLOAT32 |
DML_FEATURE_LEVEL_2_1及更高版本
张 | 种类 | 支持的维度计数 | 支持的数据类型 |
---|---|---|---|
InputTensor | 输入 | 4 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
ScaleTensor | 输入 | 4 | FLOAT32 |
ZeroPointTensor | 输入 | 4 | INT32、INT16、INT8、UINT32、UINT16、UINT8 |
OutputTensor | 输出 | 4 | FLOAT32 |
DML_FEATURE_LEVEL_1_0 及更高版本
张 | 种类 | 支持的维度计数 | 支持的数据类型 |
---|---|---|---|
InputTensor | 输入 | 4 | UINT8 |
ScaleTensor | 输入 | 4 | FLOAT32 |
ZeroPointTensor | 输入 | 4 | UINT8 |
OutputTensor | 输出 | 4 | FLOAT32 |
要求
要求 | 值 |
---|---|
Header | directml.h |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈