class_docstr: Group of ResNet v2 Blocks.
docstr: Creates ResNetV2BlockGroup instance.
  
  Args:
      nin: number of input filters.
      nout: number of output filters.
      num_blocks: number of Resnet blocks in this group.
      stride: stride for 3x3 convolutions and projection convolutions in Resnet blocks.
      use_projection: if True then include projection convolution into each Resnet blocks.
      bottleneck: if True then make bottleneck blocks.
      normalization_fn: module which used as normalization function.
      activation_fn: activation function.
docstr_tok: ["Creates","ResNetV2BlockGroup","instance",".","Args",":","nin",":","number","of","input","filters",".","nout",":","number","of","output","filters",".","num_blocks",":","number","of","Resnet","blocks","in","this","group",".","stride",":","stride","for","3x3","convolutions","and","projection","convolutions","in","Resnet","blocks",".","use_projection",":","if","True","then","include","projection","convolution","into","each","Resnet","blocks",".","bottleneck",":","if","True","then","make","bottleneck","blocks",".","normalization_fn",":","module","which","used","as","normalization","function",".","activation_fn",":","activation","function","."]
code: def __init__(
      self,
      nin: int,
      nout: int,
      num_blocks: int,
      stride: Union[int, Sequence[int]],
      use_projection: bool,
      bottleneck: bool,
      normalization_fn: Callable[
          ..., objax.Module
      ] = objax.nn.BatchNorm2D,
      activation_fn: Callable[
          [JaxArray], JaxArray
      ] = objax.functional.relu,
  ):
      """Creates ResNetV2BlockGroup instance.
  
      Args:
          nin: number of input filters.
          nout: number of output filters.
          num_blocks: number of Resnet blocks in this group.
          stride: stride for 3x3 convolutions and projection convolutions in Resnet blocks.
          use_projection: if True then include projection convolution into each Resnet blocks.
          bottleneck: if True then make bottleneck blocks.
          normalization_fn: module which used as normalization function.
          activation_fn: activation function.
      """
      blocks = []
      for i in range(num_blocks):
          blocks.append(
              ResNetV2Block(
                  nin=(nin if i == 0 else nout),
                  nout=nout,
                  stride=(stride if i == num_blocks - 1 else 1),
                  use_projection=(i == 0 and use_projection),
                  bottleneck=bottleneck,
                  normalization_fn=normalization_fn,
                  activation_fn=activation_fn,
              )
          )
      super().__init__(blocks)
  
imports: import functools
  from typing import Callable, Sequence, Union, Optional
  from jax import numpy
  import objax
  from objax.constants import ConvPadding
  from objax.nn import Conv2D
  from objax.typing import JaxArray, ConvPaddingInt
label_desc: Use image node_id 1 to create a new ResNetV2BlockGroup object from inherited base classes: objax.nn with example: obj = ResNetV2BlockGroup(nin, nout, num_blocks, stride, use_projection, bottleneck, normalization_fn, activation_fn)