class_docstr: Deep layer aggregation network with deconv layers(smaller strides) which produce larger
  feature map.
  
  Parameters
  ----------
  base_network : str
      Name of the base feature extraction network, must be DLA networks.
  pretrained_base : bool
      Whether load pretrained base network.
  down_ratio : int
      The downsampling ratio of the network, must be one of [2, 4, 8, 16].
  last_level : int
      Index of the last output.
  out_channel : int
      The channel number of last output. If `0`, will use the channels of the first input.
  use_dcnv2 : bool
      Whether use ModulatedDeformableConvolution(DCN version 2).
  norm_layer : nn.HybridBlock, default is BatchNorm
      The norm layer type.
  norm_kwargs : dict
      Extra arguments to norm layer.
class_docstr_tok: ["Deep","layer","aggregation","network","with","deconv","layers","(","smaller","strides",")","which","produce","larger","feature","map",".","Parameters","--","--","--","--","--","base_network",":","str","Name","of","the","base","feature","extraction","network",",","must","be","DLA","networks",".","pretrained_base",":","bool","Whether","load","pretrained","base","network",".","down_ratio",":","int","The","downsampling","ratio","of","the","network",",","must","be","one","of","[","2",",","4",",","8",",","16","]",".","last_level",":","int","Index","of","the","last","output",".","out_channel",":","int","The","channel","number","of","last","output",".","If","`","0","`",",","will","use","the","channels","of","the","first","input",".","use_dcnv2",":","bool","Whether","use","ModulatedDeformableConvolution","(","DCN","version","2",")",".","norm_layer",":","nn.HybridBlock",",","default","is","BatchNorm","The","norm","layer","type",".","norm_kwargs",":","dict","Extra","arguments","to","norm","layer","."]
code: def __init__(
      self,
      base_network,
      pretrained_base,
      down_ratio,
      last_level,
      out_channel=0,
      use_dcnv2=False,
      norm_layer=nn.BatchNorm,
      norm_kwargs=None,
      **kwargs,
  ):
      super(DeconvDLA, self).__init__(**kwargs)
      assert down_ratio in [2, 4, 8, 16]
      self.first_level = int(np.log2(down_ratio))
      self.last_level = last_level
      self.base = get_model(
          base_network, pretrained=pretrained_base, use_feature=True
      )
      channels = self.base.channels
      scales = [
          2**i for i in range(len(channels[self.first_level :]))
      ]
      self.dla_up = DLAUp(
          self.first_level,
          channels[self.first_level :],
          scales,
          use_dcnv2=use_dcnv2,
          norm_layer=norm_layer,
          norm_kwargs=norm_kwargs,
      )
  
      if out_channel == 0:
          out_channel = channels[self.first_level]
  
      self.ida_up = IDAUp(
          out_channel,
          channels[self.first_level : self.last_level],
          [2**i for i in range(self.last_level - self.first_level)],
          use_dcnv2=use_dcnv2,
          norm_layer=norm_layer,
          norm_kwargs=norm_kwargs,
      )
  
imports: from __future__ import absolute_import
  import warnings
  import numpy
  from mxnet.context import cpu
  from mxnet.gluon import nn
  from mxnet.gluon import contrib
  from .deconv_resnet import BilinearUpSample
  from ..model_zoo import get_model
label_desc: Use image node_id 1 to create a new DeconvDLA object from inherited base classes: nn with example: obj = DeconvDLA(base_network, pretrained_base, down_ratio, last_level, out_channel, use_dcnv2, norm_layer, norm_kwargs)