class_docstr: The SETR Naive Head implementation.
  
  Args:
      num_classes (int): The unique number of target classes.
      backbone_indices (tuple): A tuple indicates the indices of output of backbone.
          It can be either one or two values, if two values, the first index will be taken as
          a deep-supervision feature in auxiliary layer; the second one will be taken as
          input of pixel representation. If one value, it is taken by both above.
      in_channels (int): The number of input channels. Default: 10.
      lr_multiple (int, optional): The leanring rate multiple of head parameters. Default: 10.
class_docstr_tok: ["The","SETR","Naive","Head","implementation",".","Args",":","num_classes","(","int",")",":","The","unique","number","of","target","classes",".","backbone_indices","(","tuple",")",":","A","tuple","indicates","the","indices","of","output","of","backbone",".","It","can","be","either","one","or","two","values",",","if","two","values",",","the","first","index","will","be","taken","as","a","deep-supervision","feature","in","auxiliary","layer",";","the","second","one","will","be","taken","as","input","of","pixel","representation",".","If","one","value",",","it","is","taken","by","both","above",".","in_channels","(","int",")",":","The","number","of","input","channels",".","Default",":","10.","lr_multiple","(","int",",","optional",")",":","The","leanring","rate","multiple","of","head","parameters",".","Default",":","10","."]
code: def __init__(
      self, num_classes, backbone_indices, in_channels, lr_multiple=10
  ):
      super().__init__()
  
      self.cls_head_norm = nn.LayerNorm(
          normalized_shape=in_channels, epsilon=1e-6
      )
      self.cls_head = nn.Sequential(
          layers.ConvBNReLU(
              in_channels=in_channels, out_channels=256, kernel_size=1
          ),
          nn.Conv2D(
              in_channels=256, out_channels=num_classes, kernel_size=1
          ),
      )
  
      aux_head_nums = len(backbone_indices) - 1
      self.aux_head_norms = nn.LayerList(
          [nn.LayerNorm(normalized_shape=in_channels, epsilon=1e-6)]
          * aux_head_nums
      )
      self.aux_heads = nn.LayerList(
          [
              nn.Sequential(
                  layers.ConvBNReLU(
                      in_channels=in_channels,
                      out_channels=256,
                      kernel_size=1,
                  ),
                  nn.Conv2D(
                      in_channels=256,
                      out_channels=num_classes,
                      kernel_size=1,
                  ),
              )
          ]
          * aux_head_nums
      )
  
      self.in_channels = in_channels
      self.lr_multiple = lr_multiple
      self.backbone_indices = backbone_indices
      self.init_weight()
  
imports: import paddle.nn
  import paddle.nn.functional
  import paddle
  from paddleseg.cvlibs import manager, param_init
  from paddleseg.models import layers
  from paddleseg.utils import utils
label_desc: Use image node_id 1 to create a new NaiveHead object from inherited base classes: nn with example: obj = NaiveHead(num_classes, backbone_indices, in_channels, lr_multiple)