class_docstr: Convolution block with Batch Normalization and ReLU activation.
class_docstr_tok: ["Convolution","block","with","Batch","Normalization","and","ReLU","activation","."]
code: def __init__(
      self,
      in_channels,
      out_channels,
      kernel_size=3,
      stride=1,
      padding=1,
      activation: str = ACT_RELU,
      dilation=1,
      normalization: str = NORM_BATCH,
  ):
      super(BiFPNConvBlock, self).__init__()
  
      self.conv = nn.Conv2d(
          in_channels,
          out_channels,
          kernel_size,
          stride=stride,
          padding=padding,
          bias=False,
      )
      self.bn = instantiate_normalization_block(
          normalization, out_channels
      )
      self.act = instantiate_activation_block(activation, inplace=True)
  
imports: from typing import List, Tuple, Union, Type, Callable
  import torch
  import torch.nn
  import torch.nn.functional
  from torch import Tensor
  from pytorch_toolbelt.modules.activations import ACT_RELU, instantiate_activation_block
  from pytorch_toolbelt.modules.simple import conv1x1
  from pytorch_toolbelt.modules.dsconv import DepthwiseSeparableConv2dBlock
  from pytorch_toolbelt.modules.interfaces import AbstractDecoder, FeatureMapsSpecification
  from pytorch_toolbelt.modules.normalization import NORM_BATCH, instantiate_normalization_block
label_desc: Use image node_id 1 to create a new BiFPNConvBlock object from inherited base classes: nn with example: obj = BiFPNConvBlock(in_channels, out_channels, kernel_size, stride, padding, activation, dilation, normalization)