class_docstr: The UPerNetViTAdapter implementation based on PaddlePaddle.
  
  The original article refers to
  Chen, Zhe, Yuchen Duan, Wenhai Wang, Junjun He, Tong Lu, Jifeng Dai, and Yu Qiao. 
  "Vision Transformer Adapter for Dense Predictions." 
  (https://arxiv.org/abs/2205.08534).
  
  The implementation is based on https://github.com/czczup/ViT-Adapter
  
  Args:
      num_classes (int): The unique number of target classes.
      backbone (nn.Layer): The backbone network.
      backbone_indices (tuple | list): The values indicate the indices of output of backbone.
      channels (int, optional): The channels of inter layers in upernet head. Default: 512.
      pool_scales (list, optional): The scales in PPM. Default: [1, 2, 3, 6].
      dropout_ratio (float, optional): The dropout ratio for upernet head. Default: 0.1.
      aux_loss (bool, optional): A bool value indicates whether adding auxiliary loss. Default: True.
      aux_channels (int, optional): The channels of inter layers in auxiliary head. Default: 256.
      align_corners (bool, optional): An argument of F.interpolate. It should be set to False when the feature size is even,
          e.g. 1024x512, otherwise it is True, e.g. 769x769. Default: False.
      pretrained (str, optional): The path or url of pretrained model. Default: None.
class_docstr_tok: ["The","UPerNetViTAdapter","implementation","based","on","PaddlePaddle",".","The","original","article","refers","to","Chen",",","Zhe",",","Yuchen","Duan",",","Wenhai","Wang",",","Junjun","He",",","Tong","Lu",",","Jifeng","Dai",",","and","Yu","Qiao",".","``","Vision","Transformer","Adapter","for","Dense","Predictions",".","''","(","https",":","\/\/arxiv.org\/abs\/2205.08534",")",".","The","implementation","is","based","on","https",":","\/\/github.com\/czczup\/ViT-Adapter","Args",":","num_classes","(","int",")",":","The","unique","number","of","target","classes",".","backbone","(","nn.Layer",")",":","The","backbone","network",".","backbone_indices","(","tuple","|","list",")",":","The","values","indicate","the","indices","of","output","of","backbone",".","channels","(","int",",","optional",")",":","The","channels","of","inter","layers","in","upernet","head",".","Default",":","512.","pool_scales","(","list",",","optional",")",":","The","scales","in","PPM",".","Default",":","[","1",",","2",",","3",",","6","]",".","dropout_ratio","(","float",",","optional",")",":","The","dropout","ratio","for","upernet","head",".","Default",":","0.1.","aux_loss","(","bool",",","optional",")",":","A","bool","value","indicates","whether","adding","auxiliary","loss",".","Default",":","True",".","aux_channels","(","int",",","optional",")",":","The","channels","of","inter","layers","in","auxiliary","head",".","Default",":","256.","align_corners","(","bool",",","optional",")",":","An","argument","of","F.interpolate",".","It","should","be","set","to","False","when","the","feature","size","is","even",",","e.g",".","1024x512",",","otherwise","it","is","True",",","e.g",".","769x769",".","Default",":","False",".","pretrained","(","str",",","optional",")",":","The","path","or","url","of","pretrained","model",".","Default",":","None","."]
code: def forward(self, x):
      feats = self.backbone(x)
      feats = [feats[i] for i in self.backbone_indices]
      logit_list = self.head(feats)
      logit_list = [
          F.interpolate(
              logit,
              paddle.shape(x)[2:],
              mode="bilinear",
              align_corners=self.align_corners,
          )
          for logit in logit_list
      ]
      return logit_list
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddleseg import utils
  from paddleseg.cvlibs import manager
  from paddleseg.models import layers
label_desc: Use image node_id 3 for calling the UPerNetViTAdapter obj's underlying member method code with example usage: obj.forward(x) and returns: logit_list