code: def build_decoder(
      self,
      arch="ppm_bilinear_deepsup",
      fc_dim=512,
      num_classes=150,
      weights="",
      use_softmax=False,
  ):
      if arch == "c1_bilinear_deepsup":
          net_decoder = C1BilinearDeepSup(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
          )
      elif arch == "c1_bilinear":
          net_decoder = C1Bilinear(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
          )
      elif arch == "ppm_bilinear":
          net_decoder = PPMBilinear(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
          )
      elif arch == "ppm_bilinear_deepsup":
          net_decoder = PPMBilinearDeepsup(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
          )
      elif arch == "upernet_lite":
          net_decoder = UPerNet(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
              fpn_dim=256,
          )
      elif arch == "upernet":
          net_decoder = UPerNet(
              num_class=num_classes,
              fc_dim=fc_dim,
              use_softmax=use_softmax,
              fpn_dim=512,
          )
      else:
          raise Exception("Architecture undefined!")
  
      net_decoder.apply(self.weights_init)
      if len(weights) > 0:
          print("Loading weights for net_decoder")
          net_decoder.load_state_dict(
              torch.load(
                  weights, map_location=lambda storage, loc: storage
              ),
              strict=False,
          )
      return net_decoder
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from .None import seg_resnet
  from .None import seg_resnext
label_desc: Use image node_id 3 for calling the ModelBuilder obj's underlying member method code with example usage: obj.build_decoder(arch, fc_dim, num_classes, weights, use_softmax) and returns: net_decoder