当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.raw_ops.QuantizedMatMulWithBiasAndReluAndRequantize用法及代码示例


执行 a 与矩阵 b 的量化矩阵乘法,并带有偏差

用法

tf.raw_ops.QuantizedMatMulWithBiasAndReluAndRequantize(
    a, b, bias, min_a, max_a, min_b, max_b, min_freezed_output, max_freezed_output,
    Toutput=tf.dtypes.quint8, transpose_a=False, transpose_b=False,
    input_quant_mode='MIN_FIRST', name=None
)

add and relu 和 requantize fusion。

输入必须是二维矩阵和一维偏置向量。并且a的内部维度(如果transpose_a非零则转置后)必须匹配b的外部维度(如果transposed_b非零则转置后)。然后对矩阵乘法结果使用偏差值进行广播加法运算。偏差大小必须与 b 的内部尺寸相匹配。然后进行 relu 激活以获得非负结果。然后进行重新量化操作以获得最终的 uint8 结果。

参数:a:ATensor.必须是以下类型之一:qint8,quint8,qint32,qint16,quint16.要相乘的矩阵。必须是类型的二维张量quint8. b:ATensor.必须是以下类型之一:qint8,quint8,qint32,qint16,quint16.要相乘的矩阵,必须是类型的二维张量qint8.偏差:ATensor.必须是以下类型之一:float32,qint32.尺寸与内部尺寸匹配的一维偏置张量b(转置后如果transposed_b是非零)。 min_a:ATensor类型float32.最低量化的浮点值a值代表。 max_a:ATensor类型float32.最高量化的浮点值a值代表。 min_b:ATensor类型float32.最低量化的浮点值b值代表。 max_b:ATensor类型float32.最高量化的浮点值b值代表。 min_freezed_output:ATensor类型float32.重新量化后的最高量化输出值的浮点值。 max_freezed_output:ATensor类型float32. T输出:可选tf.dtypes.DType从:tf.qint8, tf.quint8, tf.qint32, tf.qint16, tf.quint16.默认为tf.quint8. transpose_a:可选bool.默认为False.如果是真的,a在乘法之前转置。 transpose_b:可选bool.默认为False.如果是真的,b在乘法之前转置。 input_quant_mode:可选string从:"MIN_FIRST", "SCALED".默认为"MIN_FIRST".输入数据量化模式。 MIN_FIRST(默认)或 SCALED。 name:操作的名称(可选)。

返回:Tensor 对象的元组(输出,min_out,max_out)。

out:A `Tensor` of type `Toutput`.
min_out:A `Tensor` of type `float32`.
max_out:A `Tensor` of type `float32`.

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.raw_ops.QuantizedMatMulWithBiasAndReluAndRequantize。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。