quantize_dynamic¶
- class torch.ao.quantization.quantize_dynamic(model, qconfig_spec=None, dtype=torch.qint8, mapping=None, inplace=False)[source][source]¶
將浮點模型轉換為動態 (即僅權重) 量化模型。
用動態僅權重量化版本替換指定的模組,並輸出量化模型。
對於最簡單的用法,請提供可為 float16 或 qint8 的 dtype 參數。 預設情況下,僅權重量化適用於具有大權重尺寸的層,即 Linear 和 RNN 變體。
可以使用 qconfig 和 mapping 進行細粒度控制,它們的作用與 quantize() 類似。如果提供了 qconfig,則忽略 dtype 參數。
- 參數
model – 輸入模型
qconfig_spec –
以下任一項:
一個字典,它將子模組的名稱或類型映射到量化配置。qconfig 適用於給定模組的所有子模組,除非指定了子模組的 qconfig(當子模組已經具有 qconfig 屬性時)。字典中的條目需要是 QConfig 實例。
一組類型和/或子模組名稱,用於應用動態量化,在這種情況下,dtype 參數用於指定位寬。
inplace – 就地執行模型轉換,原始模組會被修改
mapping – 將子模組的類型映射到需要替換子模組的相應動態量化版本的類型