DequantizeLinear¶
DequantizeLinear - 24¶
版本¶
域:
main起始版本:
24函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的操作符已可用于版本 24 及以上。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。x_scale 和 x_zero_point 必须具有相同的形状,以确定量化的粒度:对于逐张量/逐层量化,它们是标量;对于逐轴量化,它们是 1-D 张量;或者对于块量化,它们的秩与输入相同。有关量化粒度的详细信息,请参阅 QuantizeLinear。
x_zero_point 和 x 必须具有相同的类型。x 和 y 必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。在 float8 和 4 位类型量化的情况下,通常不使用 zero-point,但为了保持一致性,反量化公式保持不变。输出类型由属性 output_dtype 决定。如果未提供 output_dtype,则输出类型与 x_scale 相同。输出类型也决定了乘法运算的精度。
属性¶
轴 - INT(默认值为
'1')(可选) 输入张量反量化维度的轴。用于逐轴和块量化。负值表示从后往前计数维度。接受的范围是
[-r, r-1],其中r = rank(input)。block_size - INT (默认值是
'0')(可选) 量化块的大小(每个比例因子重复的次数)。仅用于块量化。块大小是一个正整数。给定
x的形状(D0, ..., Di, ..., Dn),y_scale的形状(S0, ... Si, ...Sn)且axis=i,接受的范围是[ceil(Di/Si), ceil(Di/(Si-1))-1]output_dtype - INT (默认值是
'0')(可选) 输出数据类型。如果未提供,输出数据类型将从
x_scale数据类型 (T2) 推断。
输入¶
2 到 3 个输入之间。
x (异构) - T1
要反量化的 N 维量化输入张量。
x_scale (异构) - T2
输入
x的比例因子。对于逐张量/层反量化,比例因子是标量;对于逐轴反量化,它是 1-D 张量;对于块反量化,它与输入形状相同,除了一个进行阻塞的维度。x_zero_point (可选,异构) - T1
输入
x的零点。形状必须与 x_scale 匹配。它是可选的。未指定时,零点为 0。
输出¶
y (异构) - T3
N 维全精度输出张量。它与输入
x具有相同的形状。数据类型由output_dtype属性指定,如果未提供,则由x_scale的类型决定。
类型约束¶
T1 在 (
tensor(float4e2m1),tensor(float8e4m3fn),tensor(float8e4m3fnuz),tensor(float8e5m2),tensor(float8e5m2fnuz),tensor(int16),tensor(int32),tensor(int4),tensor(int8),tensor(uint16),tensor(uint4),tensor(uint8)) 中输入“x_zero_point”和“x”的类型。
T2 在 (
tensor(bfloat16),tensor(float),tensor(float16),tensor(float8e8m0)) 中输入“x_scale”的类型。
T3 在 (
tensor(bfloat16),tensor(float),tensor(float16)) 中输出“y”的类型。
DequantizeLinear - 23¶
版本¶
域:
main起始版本:
23函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的操作符已可用于版本 23 及以上。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。x_scale 和 x_zero_point 必须具有相同的形状,以确定量化的粒度:对于逐张量/逐层量化,它们是标量;对于逐轴量化,它们是 1-D 张量;或者对于块量化,它们的秩与输入相同。有关量化粒度的详细信息,请参阅 QuantizeLinear。
x_zero_point 和 x 必须具有相同的类型。x 和 y 必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。在 float8 和 4 位类型量化的情况下,通常不使用 zero-point,但为了保持一致性,反量化公式保持不变。输出类型由属性 output_dtype 决定。如果未提供 output_dtype,则输出类型与 x_scale 相同。输出类型也决定了乘法运算的精度。
属性¶
轴 - INT(默认值为
'1')(可选) 输入张量反量化维度的轴。用于逐轴和块量化。负值表示从后往前计数维度。接受的范围是
[-r, r-1],其中r = rank(input)。block_size - INT (默认值是
'0')(可选) 量化块的大小(每个比例因子重复的次数)。仅用于块量化。块大小是一个正整数。给定
x的形状(D0, ..., Di, ..., Dn),y_scale的形状(S0, ... Si, ...Sn)且axis=i,接受的范围是[ceil(Di/Si), ceil(Di/(Si-1))-1]output_dtype - INT (默认值是
'0')(可选) 输出数据类型。如果未提供,输出数据类型将从
x_scale数据类型 (T2) 推断。
输入¶
2 到 3 个输入之间。
x (异构) - T1
要反量化的 N 维量化输入张量。
x_scale (异构) - T2
输入
x的比例因子。对于逐张量/层反量化,比例因子是标量;对于逐轴反量化,它是 1-D 张量;对于块反量化,它与输入形状相同,除了一个进行阻塞的维度。x_zero_point (可选,异构) - T1
输入
x的零点。形状必须与 x_scale 匹配。它是可选的。未指定时,零点为 0。
输出¶
y (异构) - T3
N 维全精度输出张量。它与输入
x具有相同的形状。数据类型由output_dtype属性指定,如果未提供,则由x_scale的类型决定。
类型约束¶
T1 在 (
tensor(float4e2m1),tensor(float8e4m3fn),tensor(float8e4m3fnuz),tensor(float8e5m2),tensor(float8e5m2fnuz),tensor(int16),tensor(int32),tensor(int4),tensor(int8),tensor(uint16),tensor(uint4),tensor(uint8)) 中输入“x_zero_point”和“x”的类型。
T2 在 (
tensor(bfloat16),tensor(float),tensor(float16)) 中输入“x_scale”的类型。
T3 在 (
tensor(bfloat16),tensor(float),tensor(float16)) 中输出“y”的类型。
DequantizeLinear - 21¶
版本¶
域:
mainsince_version:
21函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的操作符自 版本 21 起可用。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。x_scale 和 x_zero_point 必须具有相同的形状,以确定量化的粒度:对于逐张量/逐层量化,它们是标量;对于逐轴量化,它们是 1-D 张量;或者对于块量化,它们的秩与输入相同。有关量化粒度的详细信息,请参阅 QuantizeLinear。x_zero_point 和 x 必须具有相同的类型。x 和 y 必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。在 float8 类型量化的情况下,通常不使用 zero-point,但为了保持一致性,反量化公式保持不变,并且 x_scale 仍然决定输出类型。
属性¶
轴 - INT(默认值为
'1')(可选) 输入张量反量化维度的轴。用于逐轴和块量化。负值表示从后往前计数维度。接受的范围是
[-r, r-1],其中r = rank(input)。block_size - INT (默认值是
'0')(可选) 量化块的大小(每个比例因子重复的次数)。仅用于块量化。块大小是一个正整数。给定
x的形状(D0, ..., Di, ..., Dn),y_scale的形状(S0, ... Si, ...Sn)且axis=i,接受的范围是[ceil(Di/Si), ceil(Di/(Si-1))-1]
输入¶
2 到 3 个输入之间。
x (异构) - T1
要反量化的 N 维量化输入张量。
x_scale (异构) - T2
输入
x的比例因子。对于逐张量/层反量化,比例因子是标量;对于逐轴反量化,它是 1-D 张量;对于块反量化,它与输入形状相同,除了一个进行阻塞的维度。x_zero_point (可选,异构) - T1
输入
x的零点。形状必须与 x_scale 匹配。它是可选的。未指定时,零点为 0。
输出¶
y (异构) - T2
N 维全精度输出张量。它与输入
x具有相同的形状。
类型约束¶
T1 在 (
tensor(float8e4m3fn),tensor(float8e4m3fnuz),tensor(float8e5m2),tensor(float8e5m2fnuz),tensor(int16),tensor(int32),tensor(int4),tensor(int8),tensor(uint16),tensor(uint4),tensor(uint8)) 中输入“x_zero_point”和“x”的类型。
T2 在 (
tensor(bfloat16),tensor(float),tensor(float16)) 中“x_scale”决定输出类型。
DequantizeLinear - 19¶
版本¶
域:
mainsince_version:
19函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的操作符自 版本 19 起可用。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。x_scale 和 x_zero_point 必须具有相同的形状,并且可以是用于逐张量/逐层量化的标量,也可以是用于逐轴量化的 1-D 张量。x_zero_point 和 x 必须具有相同的类型。x 和 y 必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。在 float8e4m3fn、float8e4m3fnuz、float8e5m2、float8e5m2fnuz 量化的情况下,通常不使用 zero-point,但为了保持一致性,反量化公式保持不变,“x_scale”仍然决定输出类型。
属性¶
轴 - INT(默认值为
'1')(可选) 输入张量反量化维度的轴。仅用于逐轴量化。负值表示从后往前计数维度。接受的范围是
[-r, r-1],其中r = rank(input)。当输入秩为 1 时,应用逐张量量化,在这种情况下轴不是必需的。
输入¶
2 到 3 个输入之间。
x (异构) - T1
要反量化的 N 维量化输入张量。
x_scale (异构) - T2
输入“x”的比例因子。它可以是一个标量,表示逐张量/逐层反量化,也可以是一个 1-D 张量,用于逐轴反量化。
x_zero_point (可选,异构) - T1
输入“x”的零点。形状必须与 x_scale 匹配。它是可选的。未指定时,零点为 0。
输出¶
y (异构) - T2
N 维全精度输出张量。它与输入“x”具有相同的形状。
类型约束¶
T1 在 (
tensor(float8e4m3fn),tensor(float8e4m3fnuz),tensor(float8e5m2),tensor(float8e5m2fnuz),tensor(int32),tensor(int8),tensor(uint8)) 中将“x_zero_point”和“x”限制为 8 位整数或浮点数,或 /32 位整数张量。
T2 在 (
tensor(bfloat16),tensor(float),tensor(float16)) 中“x_scale”决定输出类型。
DequantizeLinear - 13¶
版本¶
域:
main起始版本:
13函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的运算符自 版本 13 起可用。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。x_scale 和 x_zero_point 必须具有相同的形状,并且可以是用于逐张量/逐层量化的标量,也可以是用于逐轴量化的 1-D 张量。x_zero_point 和 x 必须具有相同的类型。x 和 y 必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。
属性¶
轴 - INT(默认值为
'1')(可选) 输入张量反量化维度的轴。对于逐张量量化被忽略。负值表示从后往前计数维度。接受的范围是 [-r, r-1],其中 r = rank(input)。
输入¶
2 到 3 个输入之间。
x (异构) - T
要反量化的 N 维量化输入张量。
x_scale (异构) - tensor(float)
输入“x”的比例因子。它可以是一个标量,表示逐张量/逐层反量化,也可以是一个 1-D 张量,用于逐轴反量化。
x_zero_point (可选,异构) - T
输入“x”的零点。形状必须与 x_scale 匹配。它是可选的。未指定时,零点为 0。
输出¶
y (异构) - tensor(float)
N 维全精度输出张量。它与输入“x”具有相同的形状。
类型约束¶
T 在 (
tensor(int32),tensor(int8),tensor(uint8)) 中将“x_zero_point”和“x”限制为 8 位/32 位整数张量。
DequantizeLinear - 10¶
版本¶
域:
mainsince_version:
10函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的操作符已在 版本 10 中提供。
摘要¶
线性反量化算子。它接收一个量化张量、一个比例因子和一个零点,以计算全精度张量。反量化公式为 y = (x - x_zero_point) * x_scale。“x_scale”和“x_zero_point”都是标量。“x_zero_point”和“x”必须具有相同的类型。“x”和“y”必须具有相同的形状。在对 int32 进行反量化时,没有零点(零点应为 0)。
输入¶
2 到 3 个输入之间。
x (异构) - T
要反量化的 N 维量化输入张量。
x_scale (异构) - tensor(float)
输入“x”的比例因子。它是一个标量,表示逐张量/逐层量化。
x_zero_point (可选,异构) - T
输入“x”的零点。它是一个标量,表示逐张量/逐层量化。它是可选的。未指定时,默认值为 0。
输出¶
y (异构) - tensor(float)
N 维全精度输出张量。它与输入“x”具有相同的形状。
类型约束¶
T 在 (
tensor(int32),tensor(int8),tensor(uint8)) 中将“x_zero_point”和“x”限制为 8 位/32 位整数张量。