/usr/local/lib64/python3.6/site-packages/torch/ao/quantization/__pycache__
Edit: /usr/local/lib64/python3.6/site-packages/torch/ao/quantization/__pycache__/qconfig.cpython-36.pyc (8584B)
3
Eg- @ s d dl mZ d dlmZmZmZ d dlZd dljZd dl m
Z
mZmZm
Z
mZmZmZmZ ddlmZmZmZmZmZmZmZmZmZmZ G dd dedd d
gZeeedZeeedZeeedZ G d
d dedd d
gZ!e!eedZ"e!ej#ej$dej#ej%ddZ&e!ej#ej%dej#ej%ddZ'e!eedZ(e!eedZ)eee
dZ*eejj+e
dZ,eeejj+dZ-eeedZ.dddZ/dddZ0eeee!f ejj1ddddZ2eee!df Z3e3eej1df edddZ4e3e3dddZ5dS ) )
namedtuple)UnionOptionalAnyN)FakeQuantizedefault_fake_quant%default_per_channel_weight_fake_quantdefault_weight_fake_quantdefault_fused_act_fake_quantdefault_fused_wt_fake_quantFusedMovingAvgObsFakeQuantize'default_fused_per_channel_wt_fake_quant )
HistogramObserverMovingAverageMinMaxObserverPlaceholderObserverdefault_debug_observerdefault_dynamic_quant_observerdefault_float_qparams_observerdefault_observer#default_per_channel_weight_observerdefault_placeholder_observerdefault_weight_observerc s e Zd ZdZ fddZ ZS )QConfiga
Describes how to quantize a layer or a part of the network by providing
settings (observer classes) for activations and weights respectively.
Note that QConfig needs to contain observer **classes** (like MinMaxObserver) or a callable that returns
instances on invocation, not the concrete observer instances themselves.
Quantization preparation function will instantiate observers multiple times for each of the layers.
Observer classes have usually reasonable default arguments, but they can be overwritten with `with_args`
method (that behaves like functools.partial):
my_qconfig = QConfig(activation=MinMaxObserver.with_args(dtype=torch.qint8),
weight=default_observer.with_args(dtype=torch.qint8))
c s4 t |tjst |tjr tdtt| j| ||S )NzHQConfig received observer instance, please pass observer class instead. zLUse MyObserver.with_args(x=1) to override arguments to constructor if neededzQConfig received observer instance, please pass observer class instead. Use MyObserver.with_args(x=1) to override arguments to constructor if needed)
isinstancennModule
ValueErrorsuperr __new__)cls
activationweight) __class__ I/usr/local/lib64/python3.6/site-packages/torch/ao/quantization/qconfig.pyr / s zQConfig.__new__)__name__
__module____qualname____doc__r
__classcell__r$ r$ )r# r% r s r r! r" )r! r" )r" r! c s. e Zd ZdZejjejjf fdd Z ZS )QConfigDynamica
Describes how to dynamically quantize a layer or a part of the network by providing
settings (observer classes) for weights.
It's like QConfig, but for dynamic quantization.
Note that QConfigDynamic needs to contain observer **classes** (like MinMaxObserver) or a callable that returns
instances on invocation, not the concrete observer instances themselves.
Quantization function will instantiate observers multiple times for each of the layers.
Observer classes have usually reasonable default arguments, but they can be overwritten with `with_args`
method (that behaves like functools.partial):
my_qconfig = QConfigDynamic(weight=default_observer.with_args(dtype=torch.qint8))
c s( t |tjrtdtt| j| ||S )NzOQConfigDynamic received observer instance, please pass observer class instead. zLUse MyObserver.with_args(x=1) to override arguments to constructor if neededzQConfigDynamic received observer instance, please pass observer class instead. Use MyObserver.with_args(x=1) to override arguments to constructor if needed)r r r r r r+ r )r r! r" )r# r$ r% r P s zQConfigDynamic.__new__) r&