快捷方式

FakeQuantize

class torch.ao.quantization.fake_quantize.FakeQuantize(observer=<class 'torch.ao.quantization.observer.MovingAverageMinMaxObserver'>, quant_min=None, quant_max=None, is_dynamic=False, **observer_kwargs)[源代码]

在训练期间模拟量化和反量化操作。

此模块的输出由以下公式给出

x_out = (
  clamp(round(x/scale + zero_point), quant_min, quant_max) - zero_point
) * scale
  • is_dynamic 指示伪量化是动态量化算子的占位符(choose_qparams -> q -> dq)还是静态量化算子的占位符(q -> dq)

  • scale 定义用于量化的比例因子。

  • zero_point 指定浮点型中 0 映射到的量化值

  • fake_quant_enabled 控制在张量上应用伪量化的操作,请注意,统计信息仍然可以更新。

  • observer_enabled 控制在张量上收集统计信息的操作

  • dtype 指定使用伪量化模拟的量化数据类型,

    允许的值为 torch.qint8 和 torch.quint8。

参数
  • observer (模块) – 用于观察输入张量上的统计信息并计算比例和零点的模块。

  • observer_kwargs (可选) – 观察者模块的参数

变量

activation_post_process (模块) – 用户提供的模块,用于收集输入张量上的统计信息并提供计算比例和零点的方法。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源