QATModule#

class QATModule(**kwargs)[源代码]#

浮点数量化相关 Module 的基类。主要用于 QAT 和 Calibration.

使用 from_float_module 从浮点数型 Module 中生成实例。或使用 quantize_qat 来自动递归进行此操作。

可之后使用 quantize 将该模块转为 QuantizedModule 用于部署。

apply_quant_activation(target)[源代码]#

target 上根据 qconfig 应用权重 observer 以及 fake_quant.

apply_quant_bias(target, inp, w_qat)[源代码]#

使用 fake_quant_bias 来处理 target. 只有当 act_fake_quantweight_fake_quant 都启动时合法。

apply_quant_weight(target)[源代码]#

target 上根据 qconfig 应用权重 observer 以及 fake_quant.

abstract classmethod from_float_module(float_module)[源代码]#

返回从浮点型 Module 实例转换而来的 QATModule 实例。

get_activation_dtype()[源代码]#

按照 qconfig 指定的方法,从 qconfig 中获取激活值的量化数据类型。

get_activation_qparams()[源代码]#

获取激活值的量化参数。

get_weight_dtype()[源代码]#

qconfig 中获取权重的量化数据类型。

get_weight_qparams()[源代码]#

获取权重的量化参数。

set_qconfig(qconfig)[源代码]#

使用 qconfig 更改量化相关配置。包含权重和激活值的 observer 和 fake_quant 。