class_docstr: RandAugment data augmentation method based on
  `"RandAugment: Practical automated data augmentation with a reduced search space"
  <https://arxiv.org/abs/1909.13719>`_.
  If the image is torch Tensor, it should be of type torch.uint8, and it is expected
  to have [..., 1 or 3, H, W] shape, where ... means an arbitrary number of leading dimensions.
  If img is PIL Image, it is expected to be in mode "L" or "RGB".
  
  Args:
      num_ops (int): Number of augmentation transformations to apply sequentially.
      magnitude (int): Magnitude for all the transformations.
      num_magnitude_bins (int): The number of different magnitude values.
      interpolation (InterpolationMode): Desired interpolation enum defined by
          :class:`torchvision.transforms.InterpolationMode`. Default is ``InterpolationMode.NEAREST``.
          If input is Tensor, only ``InterpolationMode.NEAREST``, ``InterpolationMode.BILINEAR`` are supported.
      fill (sequence or number, optional): Pixel fill value for the area outside the transformed
          image. If given a number, the value is used for all bands respectively.
code: def __init__(
      self,
      num_ops: int = 2,
      magnitude: int = 9,
      num_magnitude_bins: int = 31,
      interpolation: InterpolationMode = InterpolationMode.NEAREST,
      fill: Optional[List[float]] = None,
  ) -> None:
      super().__init__()
      self.num_ops = num_ops
      self.magnitude = magnitude
      self.num_magnitude_bins = num_magnitude_bins
      self.interpolation = interpolation
      self.fill = fill
  
imports: import math
  from enum import Enum
  from typing import Dict, List, Optional, Tuple
  import torch
  from torch import Tensor
  from .None import functional, InterpolationMode
label_desc: Use image node_id 1 to create a new RandAugment object from inherited base classes: torch.nn with example: obj = RandAugment(num_ops, magnitude, num_magnitude_bins, interpolation, fill)