class_docstr: This class implements the `ResNet architecture <https://arxiv.org/pdf/1512.03385.pdf>`_
  
  .. note::
      Our ResNet implementation is different from the original implementation in two ways:
      1. First 7x7 strided conv is replaced with 3x3 strided conv
      2. MaxPool operation is replaced with another 3x3 strided depth-wise conv
docstr: Computes the stochastic depth probability for a particular block in the network
docstr_tok: ["Computes","the","stochastic","depth","probability","for","a","particular","block","in","the","network"]
code: def _block_stochastic_depth_prob(
      self,
      stochastic_depth_prob: float,
      idx: int,
      start_idx: int,
      net_num_blocks: int,
  ):
      """Computes the stochastic depth probability for a particular block in the network"""
      return round(
          stochastic_depth_prob
          * (idx + start_idx)
          / (net_num_blocks - 1),
          4,
      )
  
file_path: ml-cvnets/cvnets/models/classification/resnet.py
imports: import argparse
  from functools import partial
  from typing import Dict, List, Tuple
  import numpy
  from torch import nn
  from cvnets.layers import ConvLayer2d, Dropout, GlobalPool, Identity, LinearLayer
  from cvnets.models import MODEL_REGISTRY
  from cvnets.models.classification.base_image_encoder import BaseImageEncoder
  from cvnets.models.classification.config.resnet import get_configuration
  from cvnets.modules import BasicResNetBlock, BottleneckResNetBlock
label_desc: Use image node_id 2 for calling the ResNet obj's underlying member method code with example usage: obj._block_stochastic_depth_prob(stochastic_depth_prob, idx, start_idx, net_num_blocks) and returns: round