class_docstr: Quantized counterpart of the nn.Linear module that applies QuantNoise during training.
  
  Args:
      - in_features: input features
      - out_features: output features
      - bias: bias or not
      - p: amount of noise to inject (0 = no quantization, 1 = quantize all the weights)
      - bits: number of bits
      - method: choose among {"tensor", "histogram", "channel"}
      - update_step: recompute scale and zero_point every update_steps iterations
  
  Remarks:
      - We use the straight-through estimator so that the gradients
        back-propagate nicely in the network, this is implemented with
        the detach() trick.
      - Parameters scale and zero_point are recomputed every update_step
        forward pass to reduce the overhead
      - At test time, the weights are fully quantized
code: def extra_repr(self):
      return "in_features={}, out_features={}, bias={}, quant_noise={}, bits={}, method={}".format(
          self.in_features,
          self.out_features,
          self.bias is not None,
          self.p,
          self.bits,
          self.method,
      )
  
file_path: fairseq/fairseq/modules/quantization/scalar/modules/qlinear.py
imports: import torch
  import torch.nn
  import torch.nn.functional
  from ..ops import emulate_int
label_desc: Use image node_id 4 for calling the IntLinear obj's underlying member method code with example usage: obj.extra_repr() and returns: str