class_docstr: MKL Backend
class_docstr_tok: ["MKL","Backend"]
docstr: Create a new DeconvLayer parameter object.
  This then is passed as an argument to all the convolution operations.
  
  N: Number of images in mini-batch
  C: Number of output feature maps
  K: Number of input feature maps
  
  M: Depth  of input
  P: Height of input
  Q: Width of input
  
  D: Depth  of output image
  H: Height of output image
  W: Width  of output image
  
  T: Depth  of filter kernel
  R: Height of filter kernel
  S: Width  of filter kernel
  
  padding: amount of zero-padding around the given edge
  strides: factor to step the filters by in a given direction
  dilation: dilation factor for each dimension
  
  dtype: need to know dtype to setup proper kernels and params.
docstr_tok: ["Create","a","new","DeconvLayer","parameter","object",".","This","then","is","passed","as","an","argument","to","all","the","convolution","operations",".","N",":","Number","of","images","in","mini-batch","C",":","Number","of","output","feature","maps","K",":","Number","of","input","feature","maps","M",":","Depth","of","input","P",":","Height","of","input","Q",":","Width","of","input","D",":","Depth","of","output","image","H",":","Height","of","output","image","W",":","Width","of","output","image","T",":","Depth","of","filter","kernel","R",":","Height","of","filter","kernel","S",":","Width","of","filter","kernel","padding",":","amount","of","zero-padding","around","the","given","edge","strides",":","factor","to","step","the","filters","by","in","a","given","direction","dilation",":","dilation","factor","for","each","dimension","dtype",":","need","to","know","dtype","to","setup","proper","kernels","and","params","."]
code: def deconv_layer(
      self,
      dtype,
      N,
      C,
      K,
      M,
      P,
      Q,
      T=1,
      R=1,
      S=1,
      pad_d=0,
      pad_h=0,
      pad_w=0,
      str_d=1,
      str_h=1,
      str_w=1,
      dil_d=1,
      dil_h=1,
      dil_w=1,
  ):
      """
      Create a new DeconvLayer parameter object.
      This then is passed as an argument to all the convolution operations.
  
      N: Number of images in mini-batch
      C: Number of output feature maps
      K: Number of input feature maps
  
      M: Depth  of input
      P: Height of input
      Q: Width of input
  
      D: Depth  of output image
      H: Height of output image
      W: Width  of output image
  
      T: Depth  of filter kernel
      R: Height of filter kernel
      S: Width  of filter kernel
  
      padding: amount of zero-padding around the given edge
      strides: factor to step the filters by in a given direction
      dilation: dilation factor for each dimension
  
      dtype: need to know dtype to setup proper kernels and params.
      """
      return layer_mkl.DeconvLayerMKL(
          self,
          dtype,
          N,
          C,
          K,
          M,
          P,
          Q,
          T,
          R,
          S,
          pad_d,
          pad_h,
          pad_w,
          str_d,
          str_h,
          str_w,
          dil_d,
          dil_h,
          dil_w,
      )
  
imports: from __future__ import division
  from builtins import zip
  import logging
  from neon.backends import layer_mkl
  from neon.backends.util.check_mkl import get_mkl_lib
  from neon.backends.nervanacpu import CPUTensor, NervanaCPU, CustomNumpy
  import ctypes
  from cffi import FFI
  from ctypes import c_longlong, c_float, c_double, c_int
  import numpy
  from neon.backends import math_cpu
  from neon.backends.backend import OpTreeNode
  import os
  import sys
label_desc: Use image node_id 11 for calling the NervanaMKL obj's underlying member method code with example usage: obj.deconv_layer(dtype, N, C, K, M, P, Q, T, R, S, pad_d, pad_h, pad_w, str_d, str_h, str_w, dil_d, dil_h, dil_w) and returns: layer_mkl