code: def __init__(
      self, ndim, stride=1, pad=0, outsize=None, dilate=1, groups=1
  ):
      self.ndim = ndim
      self.stride = conv_nd.as_tuple(stride, ndim)
      self.pad = conv_nd.as_tuple(pad, ndim)
      if outsize is not None:
          assert len(outsize) == ndim
      self.outs = outsize
      self.dilate = conv_nd.as_tuple(dilate, ndim)
      self.groups = groups
  
imports: import numpy
  from six import moves
  import chainer
  from chainer import backend
  from chainer.backends import cuda
  from chainer import configuration
  from chainer import function_node
  from chainer.functions.connection import convolution_2d
  from chainer.functions.connection import convolution_nd
  from chainer import utils
  from chainer.utils import conv
  from chainer.utils import conv_nd
  from chainer.utils import type_check
  import chainerx
label_desc: Use image node_id 1 to create a new DeconvolutionND object from inherited base classes: function_node with example: obj = DeconvolutionND(ndim, stride, pad, outsize, dilate, groups)