class_docstr: This layer randomly applies a list of modules during training.
  
  Args:
      module_list (List): List of modules
      keep_p (Optional[float]): Keep P modules from the list during training. Default: 0.8 (or 80%)
code: def __repr__(self):
      format_string = "{}(apply_k (N={})={}, ".format(
          self.__class__.__name__, len(self.module_list), self.keep_k
      )
      for layer in self.module_list:
          format_string += "\n\t {}".format(layer)
      format_string += "\n)"
      return format_string
  
file_path: ml-cvnets/cvnets/layers/random_layers.py
imports: import random
  from typing import List, Optional
  from torch import Tensor
  from cvnets.layers.base_layer import BaseLayer
  from utils.math_utils import bound_fn
label_desc: Use image node_id 3 for calling the RandomApply obj's underlying member method code with example usage: obj.__repr__() and returns: format_string