PyTorch quantization observer

文章详细介绍了PyTorch中的量化观察者类,包括基本类如ObserverBase、nn.ModuleBase以及标准观察者如MinMaxObserver、HistogramObserver等。这些类用于计算量化的参数,基于运行时的最小值、最大值或直方图记录。还提到了一些子标准观察者,如默认、调试和权重观察者等,适用于不同场景的量化需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PyTorch quantization observer

basic class

nameinheritdescribe
ObserverBaseABC, nn.ModuleBase observer Module
UniformQuantizationObserverBaseObserverBase

standard observer

nameinheritdescribe
MinMaxObserverUniformQuantizationObserverBasecomputing the quantization parameters based on the running min and max values
MovingAverageMinMaxObserverMinMaxObservercomputing the quantization parameters based on the moving average of the min and max values
PerChannelMinMaxObserverUniformQuantizationObserverBasecomputing the quantization parameters based on the running per channel min and max values
MovingAveragePerChannelMinMaxObserverPerChannelMinMaxObservercomputing the quantization parameters based on the running per channel min and max values
HistogramObserverUniformQuantizationObserverBaserecords the running histogram of tensor values along with min/max values.
PlaceholderObserverObserverBasedoesn’t do anything and just passes its configuration to the quantized module’s .from_float().
RecordingObserverObserverBasemainly for debug and records the tensor values during runtime.
NoopObserverObserverBasedoesn’t do anything and just passes its configuration to the quantized module’s .from_float().
FixedQParamsObserverObserverBase
ReuseInputObserverObserverBase

substandard observer

nameinheritdescribe
default_observerMinMaxObserverquant_min=0,
quant_max=127
default_placeholder_observerPlaceholderObserverDefault placeholder observer, usually used for quantization to torch.float16.
default_debug_observerRecordingObserverDefault debug-only observer.
default_weight_observerMinMaxObserverdtype=torch.qint8,
qscheme=torch.per_tensor_symmetric
default_histogram_observerHistogramObserverquant_min=0,
quant_max=127
default_per_channel_weight_observerPerChannelMinMaxObserverdtype=torch.qint8,
qscheme=torch.per_channel_symmetric
default_dynamic_quant_observerPlaceholderObserverdtype=torch.float,
compute_dtype=torch.quint8
default_float_qparams_observerPerChannelMinMaxObserverdtype=torch.quint8,
qscheme=torch.per_channel_affine_float_qparams,
ch_axis=0
weight_observer_range_neg_127_to_127MinMaxObserverdtype=torch.qint8,
qscheme=torch.per_tensor_symmetric,
quant_min=-127,
quant_max=127,
eps=2 ** -12
per_channel_weight_observer_range_neg_127_to_127MinMaxObserverdtype=torch.qint8,
qscheme=torch.per_channel_symmetric,
quant_min=-127,
quant_max=127,
eps=2 ** -12
default_float_qparams_observer_4bitPerChannelMinMaxObserverdtype=torch.quint4x2, qscheme=torch.per_channel_affine_float_qparams,
ch_axis=0
default_fixed_qparams_range_neg1to1_observerFixedQParamsObserverscale=2.0 / 256.0,
zero_point=128,
dtype=torch.quint8,
quant_min=0,
quant_max=255
default_fixed_qparams_range_0to1_observerFixedQParamsObserverscale=1.0 / 256.0,
zero_point=0,
dtype=torch.quint8,
quant_min=0,
quant_max=255
default_symmetric_fixed_qparams_observerdefault_fixed_qparams_range_neg1to1_observer
default_affine_fixed_qparams_observerdefault_fixed_qparams_range_0to1_observer
default_reuse_input_observerReuseInputObserver
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_leoatliang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值