快捷方式

fake_quantize_affine

torchao.quantization.fake_quantize_affine(input: Tensor, block_size: Tuple[int, ...], scale: Tensor, zero_point: Optional[Tensor], quant_dtype: dtype, quant_min: Optional[Union[int, float]] = None, quant_max: Optional[Union[int, float]] = None, zero_point_domain: ZeroPointDomain = ZeroPointDomain.INT) Tensor[source]

用于量化感知训练 (QAT) 的通用伪量化操作。这等效于调用 quantize_affine + dequantize_affine,但不包含 dtype 转换。

参数:
  • input (torch.Tensor) – 原始 float32、float16 或 bfloat16 张量

  • block_size – (Tuple[int, …]): 量化粒度,这意味着共享相同量化参数的张量元素的大小。例如,当大小与输入张量维度相同时,我们使用逐张量量化。

  • scale (float) – 仿射量化的量化参数

  • zero_point (int) – 仿射量化的量化参数

  • quant_dtype (torch.dtype) – 用于确定和验证 quant_min 和 quant_max 值的所需量化数据类型。

  • quant_min (Optional[int]) – 输出张量的最小量化值,如果未指定,则将从 dtype 派生

  • quant_max (Optional[int]) – 输出张量的最大量化值,如果未指定,则将从 dtype 派生

  • zero_point_domain (ZeroPointDomain) – zero_point 所在的域,如果 zero_point 在整数域中,则应为整数或浮点数,在量化期间将 zero point 添加到量化的整数值;如果 zero_point 在浮点域中,则在量化期间从浮点(未量化)值中减去 zero point;默认值为 ZeroPointDomain.INT

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

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

查看资源