code: def __init__(self, in_feat, out_feat, drop_rate=0.4, bn_momentum=0.1):
      super(DownConv, self).__init__()
      self.conv1 = nn.Conv2d(
          in_feat, out_feat, kernel_size=3, padding=1
      )
      self.conv1_bn = nn.BatchNorm2d(out_feat, momentum=bn_momentum)
      self.conv1_drop = nn.Dropout2d(drop_rate)
  
      self.conv2 = nn.Conv2d(
          out_feat, out_feat, kernel_size=3, padding=1
      )
      self.conv2_bn = nn.BatchNorm2d(out_feat, momentum=bn_momentum)
      self.conv2_drop = nn.Dropout2d(drop_rate)
  
imports: import torch
  import torch.nn
  from torch.nn import Module
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new DownConv object from inherited base classes: Module with example: obj = DownConv(in_feat, out_feat, drop_rate, bn_momentum)