class_docstr: The GCNetHead implementation.
  
  Args:
      num_classes (int): The unique number of target classes.
      backbone_indices (tuple): Two values in the tuple indicate the indices of output of backbone.
          The first index will be taken as a deep-supervision feature in auxiliary layer;
          the second one will be taken as input of GlobalContextBlock.
      backbone_channels (tuple): The same length with "backbone_indices". It indicates the channels of corresponding index.
      gc_channels (int): The input channels to Global Context Block.
      ratio (float): It indicates the ratio of attention channels and gc_channels.
      enable_auxiliary_loss (bool, optional): A bool value indicates whether adding auxiliary loss. Default: True.
class_docstr_tok: ["The","GCNetHead","implementation",".","Args",":","num_classes","(","int",")",":","The","unique","number","of","target","classes",".","backbone_indices","(","tuple",")",":","Two","values","in","the","tuple","indicate","the","indices","of","output","of","backbone",".","The","first","index","will","be","taken","as","a","deep-supervision","feature","in","auxiliary","layer",";","the","second","one","will","be","taken","as","input","of","GlobalContextBlock",".","backbone_channels","(","tuple",")",":","The","same","length","with","``","backbone_indices","''",".","It","indicates","the","channels","of","corresponding","index",".","gc_channels","(","int",")",":","The","input","channels","to","Global","Context","Block",".","ratio","(","float",")",":","It","indicates","the","ratio","of","attention","channels","and","gc_channels",".","enable_auxiliary_loss","(","bool",",","optional",")",":","A","bool","value","indicates","whether","adding","auxiliary","loss",".","Default",":","True","."]
code: def forward(self, feat_list):
      logit_list = []
      x = feat_list[self.backbone_indices[1]]
  
      output = self.conv_bn_relu1(x)
      output = self.gc_block(output)
      output = self.conv_bn_relu2(output)
  
      output = paddle.concat([x, output], axis=1)
      output = self.conv_bn_relu3(output)
  
      output = self.dropout(output)
      logit = self.conv(output)
      logit_list.append(logit)
  
      if self.enable_auxiliary_loss:
          low_level_feat = feat_list[self.backbone_indices[0]]
          auxiliary_logit = self.auxlayer(low_level_feat)
          logit_list.append(auxiliary_logit)
  
      return logit_list
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddleseg.cvlibs import manager
  from paddleseg.models import layers
  from paddleseg.utils import utils
label_desc: Use image node_id 2 for calling the GCNetHead obj's underlying member method code with example usage: obj.forward(feat_list) and returns: logit_list