class_docstr: FPN_CARAFE is a more flexible implementation of FPN. It allows more
  choice for upsample methods during the top-down pathway.
  
  It can reproduce the performance of ICCV 2019 paper
  CARAFE: Content-Aware ReAssembly of FEatures
  Please refer to https://arxiv.org/abs/1905.02188 for more details.
  
  Args:
      in_channels (list[int]): Number of channels for each input feature map.
      out_channels (int): Output channels of feature pyramids.
      num_outs (int): Number of output stages.
      start_level (int): Start level of feature pyramids.
          (Default: 0)
      end_level (int): End level of feature pyramids.
          (Default: -1 indicates the last level).
      norm_cfg (dict): Dictionary to construct and config norm layer.
      activate (str): Type of activation function in ConvModule
          (Default: None indicates w/o activation).
      order (dict): Order of components in ConvModule.
      upsample (str): Type of upsample layer.
      upsample_cfg (dict): Dictionary to construct and config upsample layer.
      init_cfg (dict or list[dict], optional): Initialization config dict.
          Default: None
class_docstr_tok: ["FPN_CARAFE","is","a","more","flexible","implementation","of","FPN",".","It","allows","more","choice","for","upsample","methods","during","the","top-down","pathway",".","It","can","reproduce","the","performance","of","ICCV","2019","paper","CARAFE",":","Content-Aware","ReAssembly","of","FEatures","Please","refer","to","https",":","\/\/arxiv.org\/abs\/1905.02188","for","more","details",".","Args",":","in_channels","(","list","[","int","]",")",":","Number","of","channels","for","each","input","feature","map",".","out_channels","(","int",")",":","Output","channels","of","feature","pyramids",".","num_outs","(","int",")",":","Number","of","output","stages",".","start_level","(","int",")",":","Start","level","of","feature","pyramids",".","(","Default",":","0",")","end_level","(","int",")",":","End","level","of","feature","pyramids",".","(","Default",":","-1","indicates","the","last","level",")",".","norm_cfg","(","dict",")",":","Dictionary","to","construct","and","config","norm","layer",".","activate","(","str",")",":","Type","of","activation","function","in","ConvModule","(","Default",":","None","indicates","w\/o","activation",")",".","order","(","dict",")",":","Order","of","components","in","ConvModule",".","upsample","(","str",")",":","Type","of","upsample","layer",".","upsample_cfg","(","dict",")",":","Dictionary","to","construct","and","config","upsample","layer",".","init_cfg","(","dict","or","list","[","dict","]",",","optional",")",":","Initialization","config","dict",".","Default",":","None"]
docstr: Initialize the weights of module.
docstr_tok: ["Initialize","the","weights","of","module","."]
code: def init_weights(self):
      """Initialize the weights of module."""
      super(FPN_CARAFE, self).init_weights()
      for m in self.modules():
          if isinstance(m, (nn.Conv2d, nn.ConvTranspose2d)):
              xavier_init(m, distribution="uniform")
      for m in self.modules():
          if isinstance(m, CARAFEPack):
              m.init_weights()
  
file_path: mmdetection/mmdet/models/necks/fpn_carafe.py
imports: import torch.nn
  from mmcv.cnn import ConvModule, build_upsample_layer
  from mmcv.ops.carafe import CARAFEPack
  from mmengine.model import BaseModule, ModuleList, xavier_init
  from mmdet.registry import MODELS
label_desc: Use image node_id 2 for calling the FPN_CARAFE obj's underlying member method code with example usage: obj.init_weights() without return types