class_docstr: Apply posterize operation.
  
  Args:
      initial_magnitude: the initial magnitude.
      initial_probability: the initial probability. If None, the augmentation will be randomly
          applied according to he augmentation sampling range.
      magnitude_range: the sampling range for random sampling and clamping the optimized magnitude.
      temperature: temperature for RelaxedBernoulli distribution used during training.
      symmetric_megnitude: if to randomly assign the magnitude as negative or not.
  
  Note:
      STE gradient estimator applied for back propagation.
class_docstr_tok: ["Apply","posterize","operation",".","Args",":","initial_magnitude",":","the","initial","magnitude",".","initial_probability",":","the","initial","probability",".","If","None",",","the","augmentation","will","be","randomly","applied","according","to","he","augmentation","sampling","range",".","magnitude_range",":","the","sampling","range","for","random","sampling","and","clamping","the","optimized","magnitude",".","temperature",":","temperature","for","RelaxedBernoulli","distribution","used","during","training",".","symmetric_megnitude",":","if","to","randomly","assign","the","magnitude","as","negative","or","not",".","Note",":","STE","gradient","estimator","applied","for","back","propagation","."]
code: def __init__(
      self,
      initial_magnitude: Optional[float] = 4.0,
      initial_probability: float = 0.5,
      magnitude_range: Tuple[float, float] = (1.0, 8.0),
      temperature: float = 0.1,
      symmetric_megnitude: bool = False,
  ) -> None:
      super().__init__(
          K.RandomPosterize(
              magnitude_range,
              same_on_batch=False,
              p=initial_probability,
          ),
          initial_magnitude=[("bits_factor", initial_magnitude)],
          temperature=temperature,
          symmetric_megnitude=symmetric_megnitude,
          magnitude_fn=Posterize._process_magnitude,
          gradient_estimator=STEFunction,
      )
  
imports: from typing import Optional, Tuple
  import kornia.augmentation
  from kornia.augmentation.auto.operations.base import OperationBase
  from kornia.core import Tensor
  from kornia.grad_estimator import STEFunction
label_desc: Use image node_id 2 to create a new Posterize object from inherited base classes: OperationBase with example: obj = Posterize(initial_magnitude, initial_probability, magnitude_range, temperature, symmetric_megnitude)