捷徑

BackendPatternConfig

class torch.ao.quantization.backend_config.BackendPatternConfig(pattern=None)[原始碼][原始碼]

Config 物件,用於指定給定運算子模式的量化行為。有關詳細的用法範例,請參閱 BackendConfig

add_dtype_config(dtype_config)[原始碼][原始碼]

新增一組支援的資料類型,作為引數傳遞到參考模型規範中的量化運算。

回傳類型

BackendPatternConfig

classmethod from_dict(backend_pattern_config_dict)[原始碼][原始碼]

從具有以下項目的字典建立 BackendPatternConfig

“pattern”: 要配置的模式 “observation_type”: ObservationType,指定應該如何為此模式插入觀察器 “dtype_configs”: 代表 DTypeConfig 的字典列表 “root_module”: 代表此模式根的 torch.nn.Module “qat_module”: 代表此模式的 QAT 實作的 torch.nn.Module “reference_quantized_module”: 代表此模式根模組的參考量化實作的 torch.nn.Module。“fused_module”: 代表此模式的融合實作的 torch.nn.Module “fuser_method”: 指定如何融合此模式的函數 “pattern_complex_format”: 以反向巢狀元組格式指定的模式(已棄用)

回傳類型

BackendPatternConfig

set_dtype_configs(dtype_configs)[原始碼][原始碼]

設定作為引數傳遞到參考模型規範中量化運算的支援資料類型,覆寫所有先前註冊的資料類型。

回傳類型

BackendPatternConfig

set_fused_module(fused_module)[原始碼][原始碼]

設定代表此模式的融合實作的模組。

回傳類型

BackendPatternConfig

set_fuser_method(fuser_method)[原始碼][原始碼]

設定函數,該函數指定如何融合此 BackendPatternConfig 的模式。

此函數的第一個引數應為 is_qat,其餘引數應為元組模式中的項目。此函數的回傳值應為產生的融合模組。

例如,模式 (torch.nn.Linear, torch.nn.ReLU) 的 fuser 方法可以是

def fuse_linear_relu(is_qat, linear, relu)

return torch.ao.nn.intrinsic.LinearReLU(linear, relu)

有關更複雜的範例,請參閱 https://gist.github.com/jerryzh168/8bea7180a8ba3c279f2c9b050f2a69a6

回傳類型

BackendPatternConfig

set_observation_type(observation_type)[原始碼][原始碼]

設定應該如何在此模式的圖中插入觀察器。

此處的觀察類型是指觀察器 (或量化-反量化運算) 將如何放置在圖中。這用於產生後端理解的所需參考模式。諸如 linear 和 conv 之類的加權運算需要不同的觀察器 (或傳遞到參考模型中量化運算的量化參數) 用於輸入和輸出。

有兩種觀察類型

OUTPUT_USE_DIFFERENT_OBSERVER_AS_INPUT (預設值):輸出觀察器實例將與輸入不同。這是最常見的觀察類型。

OUTPUT_SHARE_OBSERVER_WITH_INPUT:輸出觀察器實例將與輸入相同。這對於像 cat 這樣的運算子很有用。

注意:這將在不久的將來被重新命名,因為我們很快會插入帶有觀察器(和偽量化)的 QuantDeQuantStubs,而不是直接使用觀察器本身。

回傳類型

BackendPatternConfig

set_pattern(pattern)[原始碼][原始碼]

設定要配置的模式 (pattern)。

該模式可以是浮點模組、函數式運算符、pytorch 運算符,或是以上各項的元組組合。元組模式被視為連續模式,目前僅支援 2 或 3 個元素的元組。

回傳類型

BackendPatternConfig

set_qat_module(qat_module)[原始碼][原始碼]

設定代表此模式 QAT 實作的模組。

回傳類型

BackendPatternConfig

set_reference_quantized_module(reference_quantized_module)[原始碼][原始碼]

設定代表此模式的根模組的參考量化實作的模組。

有關更多詳細資訊,請參閱 set_root_module()

回傳類型

BackendPatternConfig

set_root_module(root_module)[原始碼][原始碼]

設定代表此模式根的模組。

當我們在轉換階段建構參考量化模型時,根模組(例如 torch.nn.Linear 對於 torch.ao.nn.intrinsic.LinearReLU)將會被交換為相應的參考量化模組(例如 torch.ao.nn.reference.quantized.Linear)。 這允許自訂後端指定自訂參考量化模組實作,以匹配其降低的運算符的數值。 由於這是一對一的映射,因此根模組和參考量化模組都必須在同一個 BackendPatternConfig 中指定,才能進行轉換。

回傳類型

BackendPatternConfig

to_dict()[原始碼][原始碼]

將此 BackendPatternConfig 轉換為一個字典,其中包含 from_dict() 中描述的項目。

回傳類型

Dict[str, Any]

文件

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources