def bprop(self, error):
        if not self.deltas:
            self.deltas = error.reshape((self.nfm, -1))

        # autodiff will automatically cache and reuse the object
        # if we know the `error` buffer at init, we can also create the autodiff
        # object at layer's init
        ad = Autodiff(self.fprop_op_tree, self.be, next_error=self.deltas)

        # back propagate
        ad.back_prop_grad([self.x, self.gamma, self.beta],
                          [self.deltas, self.grad_gamma, self.grad_beta])

        return error
Save message to a file for debugging
dataset/ETHPy150Open NervanaSystems/neon/neon/layers/layer.py/BatchNormAutodiff.bprop--crossover with--dataset/ETHPy150Open Pylons/pyramid_mailer/pyramid_mailer/mailer.py/DebugMailer._send