code: def __init__(self, in_channels, out_channels):
      super(FactorizedReduction, self).__init__()
      self.relu = nn.ReLU()
      self.path_1 = nn.Sequential(
          OrderedDict(
              [
                  (
                      "avgpool",
                      nn.AvgPool2d(
                          1, stride=2, count_include_pad=False
                      ),
                  ),
                  (
                      "conv",
                      nn.Conv2d(
                          in_channels,
                          out_channels // 2,
                          kernel_size=1,
                          bias=False,
                      ),
                  ),
              ]
          )
      )
      self.path_2 = nn.Sequential(
          OrderedDict(
              [
                  ("pad", nn.ZeroPad2d((0, 1, 0, 1))),
                  (
                      "avgpool",
                      nn.AvgPool2d(
                          1, stride=2, count_include_pad=False
                      ),
                  ),
                  (
                      "conv",
                      nn.Conv2d(
                          in_channels,
                          out_channels // 2,
                          kernel_size=1,
                          bias=False,
                      ),
                  ),
              ]
          )
      )
      self.final_path_bn = nn.BatchNorm2d(out_channels, eps=0.001)
  
imports: from collections import OrderedDict
  import torch
  import torch.nn
  import torch.utils.model_zoo
label_desc: Use image node_id 1 to create a new FactorizedReduction object from inherited base classes: nn with example: obj = FactorizedReduction(in_channels, out_channels)