class_docstr: This is the configuration class to store the configuration of an [`UperNetForSemanticSegmentation`]. It is used to
  instantiate an UperNet model according to the specified arguments, defining the model architecture. Instantiating a
  configuration with the defaults will yield a similar configuration to that of the UperNet
  [openmmlab/upernet-convnext-tiny](https://huggingface.co/openmmlab/upernet-convnext-tiny) architecture.
  
  Configuration objects inherit from [`PretrainedConfig`] and can be used to control the model outputs. Read the
  documentation from [`PretrainedConfig`] for more information.
  
  Args:
      backbone_config (`PretrainedConfig` or `dict`, *optional*, defaults to `ResNetConfig()`):
          The configuration of the backbone model.
      hidden_size (`int`, *optional*, defaults to 512):
          The number of hidden units in the convolutional layers.
      initializer_range (`float`, *optional*, defaults to 0.02):
          The standard deviation of the truncated_normal_initializer for initializing all weight matrices.
      pool_scales (`Tuple[int]`, *optional*, defaults to `[1, 2, 3, 6]`):
          Pooling scales used in Pooling Pyramid Module applied on the last feature map.
      use_auxiliary_head (`bool`, *optional*, defaults to `True`):
          Whether to use an auxiliary head during training.
      auxiliary_loss_weight (`float`, *optional*, defaults to 0.4):
          Weight of the cross-entropy loss of the auxiliary head.
      auxiliary_channels (`int`, *optional*, defaults to 256):
          Number of channels to use in the auxiliary head.
      auxiliary_num_convs (`int`, *optional*, defaults to 1):
          Number of convolutional layers to use in the auxiliary head.
      auxiliary_concat_input (`bool`, *optional*, defaults to `False`):
          Whether to concatenate the output of the auxiliary head with the input before the classification layer.
      loss_ignore_index (`int`, *optional*, defaults to 255):
          The index that is ignored by the loss function.
  
  Examples:
  
  ```python
  >>> from transformers import UperNetConfig, UperNetForSemanticSegmentation
  
  >>> # Initializing a configuration
  >>> configuration = UperNetConfig()
  
  >>> # Initializing a model (with random weights) from the configuration
  >>> model = UperNetForSemanticSegmentation(configuration)
  
  >>> # Accessing the model configuration
  >>> configuration = model.config
  ```
class_docstr_tok: ["This","is","the","configuration","class","to","store","the","configuration","of","an","[","`","UperNetForSemanticSegmentation","`","]",".","It","is","used","to","instantiate","an","UperNet","model","according","to","the","specified","arguments",",","defining","the","model","architecture",".","Instantiating","a","configuration","with","the","defaults","will","yield","a","similar","configuration","to","that","of","the","UperNet","[","openmmlab\/upernet-convnext-tiny","]","(","https",":","\/\/huggingface.co\/openmmlab\/upernet-convnext-tiny",")","architecture",".","Configuration","objects","inherit","from","[","`","PretrainedConfig","`","]","and","can","be","used","to","control","the","model","outputs",".","Read","the","documentation","from","[","`","PretrainedConfig","`","]","for","more","information",".","Args",":","backbone_config","(","`","PretrainedConfig","`","or","`","dict","`",",","*","optional","*",",","defaults","to","`","ResNetConfig","(",")","`",")",":","The","configuration","of","the","backbone","model",".","hidden_size","(","`","int","`",",","*","optional","*",",","defaults","to","512",")",":","The","number","of","hidden","units","in","the","convolutional","layers",".","initializer_range","(","`","float","`",",","*","optional","*",",","defaults","to","0.02",")",":","The","standard","deviation","of","the","truncated_normal_initializer","for","initializing","all","weight","matrices",".","pool_scales","(","`","Tuple","[","int","]","`",",","*","optional","*",",","defaults","to","`","[","1",",","2",",","3",",","6","]","`",")",":","Pooling","scales","used","in","Pooling","Pyramid","Module","applied","on","the","last","feature","map",".","use_auxiliary_head","(","`","bool","`",",","*","optional","*",",","defaults","to","`","True","`",")",":","Whether","to","use","an","auxiliary","head","during","training",".","auxiliary_loss_weight","(","`","float","`",",","*","optional","*",",","defaults","to","0.4",")",":","Weight","of","the","cross-entropy","loss","of","the","auxiliary","head",".","auxiliary_channels","(","`","int","`",",","*","optional","*",",","defaults","to","256",")",":","Number","of","channels","to","use","in","the","auxiliary","head",".","auxiliary_num_convs","(","`","int","`",",","*","optional","*",",","defaults","to","1",")",":","Number","of","convolutional","layers","to","use","in","the","auxiliary","head",".","auxiliary_concat_input","(","`","bool","`",",","*","optional","*",",","defaults","to","`","False","`",")",":","Whether","to","concatenate","the","output","of","the","auxiliary","head","with","the","input","before","the","classification","layer",".","loss_ignore_index","(","`","int","`",",","*","optional","*",",","defaults","to","255",")",":","The","index","that","is","ignored","by","the","loss","function",".","Examples",":","``","`","python",">",">",">","from","transformers","import","UperNetConfig",",","UperNetForSemanticSegmentation",">",">",">","#","Initializing","a","configuration",">",">",">","configuration","=","UperNetConfig","(",")",">",">",">","#","Initializing","a","model","(","with","random","weights",")","from","the","configuration",">",">",">","model","=","UperNetForSemanticSegmentation","(","configuration",")",">",">",">","#","Accessing","the","model","configuration",">",">",">","configuration","=","model.config","``","`"]
code: def __init__(
      self,
      backbone_config=None,
      hidden_size=512,
      initializer_range=0.02,
      pool_scales=[1, 2, 3, 6],
      use_auxiliary_head=True,
      auxiliary_loss_weight=0.4,
      auxiliary_in_channels=384,
      auxiliary_channels=256,
      auxiliary_num_convs=1,
      auxiliary_concat_input=False,
      loss_ignore_index=255,
      **kwargs,
  ):
      super().__init__(**kwargs)
  
      if backbone_config is None:
          logger.info(
              "`backbone_config` is `None`. Initializing the config with the default `ResNet` backbone."
          )
          backbone_config = CONFIG_MAPPING["resnet"](
              out_features=["stage1", "stage2", "stage3", "stage4"]
          )
      elif isinstance(backbone_config, dict):
          backbone_model_type = backbone_config.get("model_type")
          config_class = CONFIG_MAPPING[backbone_model_type]
          backbone_config = config_class.from_dict(backbone_config)
  
      self.backbone_config = backbone_config
      self.hidden_size = hidden_size
      self.initializer_range = initializer_range
      self.pool_scales = pool_scales
      self.use_auxiliary_head = use_auxiliary_head
      self.auxiliary_loss_weight = auxiliary_loss_weight
      self.auxiliary_in_channels = auxiliary_in_channels
      self.auxiliary_channels = auxiliary_channels
      self.auxiliary_num_convs = auxiliary_num_convs
      self.auxiliary_concat_input = auxiliary_concat_input
      self.loss_ignore_index = loss_ignore_index
  
imports: from ...configuration_utils import PretrainedConfig
  from ...utils import logging
  from ..auto.configuration_auto import CONFIG_MAPPING
label_desc: Use image node_id 1 to create a new UperNetConfig object from inherited base classes: PretrainedConfig with example: obj = UperNetConfig(backbone_config, hidden_size, initializer_range, pool_scales, use_auxiliary_head, auxiliary_loss_weight, auxiliary_in_channels, auxiliary_channels, auxiliary_num_convs, auxiliary_concat_input, loss_ignore_index)