'bprop for deconv is equivalent to fprop for conv.
fprop_conv takes input and output as "I" and "O".
for deconv, fprop_conv will take error as input and delta as output
Arguments:
error (Tensor): deltas back propagated from the adjacent higher layer
alpha (float, optional): scale to apply to input for activation
gradient bprop.  Defaults to 1.0
beta (float, optional): scale to apply to output activation
gradient bprop.  Defaults to 0.0
Returns:
Tensor: deltas to propagate to the adjacent lower layer'

@Layer.accumulates
def bprop(self, error, alpha=1.0, beta=0.0):

    if self.deltas:
        self.be.fprop_conv(self.nglayer, error, self.W, self.deltas, alpha=alpha, beta=beta)
    self.be.update_conv(self.nglayer, error, self.inputs, self.dW)
    return self.deltas
