評價此頁

HistogramObserver#

class torch.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 將計算比例因子和零點。

引數
  • bins (int) – 用於直方圖的箱數

  • dtype (dtype) – quantize 節點需要的 dtype 引數,用於實現參考模型規範

  • qscheme – Quantization scheme to be used

  • reduce_range – Reduces the range of the quantized data type by 1 bit

  • eps (Tensor) – Epsilon value for float32, Defaults to torch.finfo(torch.float32).eps.

比例因子和零點的計算如下:

  1. 建立輸入張量的直方圖。

    直方圖是連續計算的,並且每個箱的範圍會隨著觀察到的新張量而改變。

  2. 在直方圖中搜索分佈以獲得最優的最小值/最大值。

    對最小值/最大值的搜尋確保了與浮點模型相比,量化誤差的最小化。

  3. 計算比例因子和零點,方法與

    MinMaxObserver