FakeQuantMovingAverageAbsMax

class paddle.nn.quant.quant_layers. FakeQuantMovingAverageAbsMax ( name: str | None = None, moving_rate: float = 0.9, quant_bits: int = 8, dtype: DTypeLike = 'float32', reduce_type: Literal['max'] | None = None ) [source]

FakeQuantMovingAverageAbsMax layer does the moving_average_abs_max quant and then dequant. Its computational formula is described as below:

scale=(moving_rateaccum+max(abs(x)))/(moving_ratestate+1) range=2bit_length11 Out=round(X/scalerange)scale/range

forward ( input: Tensor ) Tensor

forward

Defines the computation performed at every call. Should be overridden by all subclasses.

Parameters
  • *inputs (tuple) – unpacked tuple arguments

  • **kwargs (dict) – unpacked dict arguments