直方图观察器
- classtorch.ao.quantization.observer.HistogramObserver(bins=2048, dtype=torch.quint8, qscheme=torch.per_tensor_affine, reduce_range=False, quant_min=None, quant_max=None, factory_kwargs=None, eps=1.1920928955078125e-07, is_dynamic=False, **kwargs)[源代码]
-
该模块记录了张量值的运行直方图,并计算最小值和最大值。函数
calculate_qparams
用于计算比例因子和零点。- 参数
缩放比例和零点的计算方式如下:
-
- 创建传入输入的直方图。
-
直方图会持续计算,并且每当观察到新的张量时,每个区间(bin)的范围都会发生变化。
-
- 在直方图中查找数据分布,以确定最佳的最小值和最大值。
-
寻找最小和最大值可以确保量化误差相对于浮点模型达到最小。
-
- 按照之前的方式计算缩放比例和零点
-
MinMaxObserver