class_docstr: (convolution => [BN] => ReLU) * 2
code: def __init__(self, in_channels, out_channels, mid_channels=None):
      super().__init__()
      if not mid_channels:
          mid_channels = out_channels
      self.double_conv = nn.Sequential(
          nn.Conv2d(
              in_channels, mid_channels, kernel_size=3, padding=1
          ),
          nn.BatchNorm2d(mid_channels),
          nn.ReLU(inplace=True),
          nn.Conv2d(
              mid_channels, out_channels, kernel_size=3, padding=1
          ),
          nn.BatchNorm2d(out_channels),
          nn.ReLU(inplace=True),
      )
  
imports: import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new DoubleConv object from inherited base classes: nn with example: obj = DoubleConv(in_channels, out_channels, mid_channels)