快捷方式

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)[原始碼][原始碼]

該模組記錄 tensor 值的執行直方圖以及 min/max 值。calculate_qparams 將計算 scale 和 zero_point。

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

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

  • qscheme – 要使用的量化方案

  • reduce_range – 將量化資料型別的範圍減小 1 位

  • eps (Tensor) – float32 的 Epsilon 值,預設為 torch.finfo(torch.float32).eps

scale 和 zero point 的計算如下

  1. 建立輸入資料的直方圖。

    直方圖持續計算,每個 bin 的範圍隨每個新觀察到的 tensor 而變化。

  2. 在直方圖中搜索最優 min/max 值。

    min/max 值的搜尋確保了相對於浮點模型的量化誤差最小化。

  3. 以與以下方式相同的方式計算 scale 和 zero point:

    MinMaxObserver

文件

查閱 PyTorch 的全面開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源