code: def track_forward(self, *args, **kwargs):
      super().track_forward(*args, **kwargs)
      for _, ts in self._target_spaces.items():
          for _, target_space in ts.items():
              if target_space.scale is None:
                  assert target_space.tracked_max is not None
                  target_space.scale = torch.empty_like(
                      target_space.tracked_max
                  )
              if target_space.zero_point is None:
                  assert target_space.tracked_max is not None
                  target_space.zero_point = torch.empty_like(
                      target_space.tracked_max
                  )
  
imports: from __future__ import annotations
  from typing import Dict, List, overload
  import torch
  from torch import Tensor
  from ..base.compressor import Compressor, Quantizer
  from ..base.wrapper import ModuleWrapper
  from ..utils import Evaluator, _EVALUATOR_DOCSTRING
label_desc: Use image node_id 9 for calling the QATQuantizer obj's underlying member method code with example usage: obj.track_forward() without return types