(self, layer, I, E, grad_F, alpha=1.0, beta=0.0, repeat=1, grad_bias=None, layer_op=None)
update_conv:

        Required Inputs:
            layer: ConvLayer object created with conv_layer()
            I: input tensor (actiavtions)
            E: error tensor (output gradient from previous layer)
            grad_F: output tensor (gradient with respect to weights)

        Compounding Options:
        alpha, beta:
            O = alpha*O + beta*O

        repeat: used in benchmarking
update_conv:
update_conv :
def update_conv(self, layer, I, E, grad_F, alpha=1.0, beta=0.0, repeat=1, grad_bias=None, layer_op=None):
        """
        update_conv:

        Required Inputs:
            layer: ConvLayer object created with conv_layer()
            I: input tensor (actiavtions)
            E: error tensor (output gradient from previous layer)
            grad_F: output tensor (gradient with respect to weights)

        Compounding Options:
        alpha, beta:
            O = alpha*O + beta*O

        repeat: used in benchmarking
        """
        assert layer.sizeI == I.size
        assert layer.sizeO == E.size
        assert layer.sizeF == grad_F.size

        if layer.NCK[0] < 4 and layer.TRS == (1, 1, 1):
            Ir = I.reshape((layer.NCK[1], -1))
            Er = E.reshape((layer.NCK[2], -1))
            Gr = grad_F.reshape((layer.NCK[1], -1))
            return self.compound_dot(A=Ir, B=Er.T, C=Gr, alpha=alpha, beta=beta, repeat=repeat)
        else:
            layer.updat_kernels.bind_params(I, E, grad_F, alpha, beta)
            return self._execute_conv("updat", layer, layer.updat_kernels, repeat)
def update_conv ( self , layer , I , E , grad_F , alpha = 1.0 , beta = 0.0 , repeat = 1 , grad_bias = None , layer_op = None ) : assert layer . sizeI == I . size assert layer . sizeO == E . size assert layer . sizeF == grad_F . size if layer . NCK [ 0 ] < 4 and layer . TRS == ( 1 , 1 , 1 ) : Ir = I . reshape ( ( layer . NCK [ 1 ] , - 1 ) ) Er = E . reshape ( ( layer . NCK [ 2 ] , - 1 ) ) Gr = grad_F . reshape ( ( layer . NCK [ 1 ] , - 1 ) ) return self . compound_dot ( A = Ir , B = Er . T , C = Gr , alpha = alpha , beta = beta , repeat = repeat ) else : layer . updat_kernels . bind_params ( I , E , grad_F , alpha , beta ) return self . _execute_conv ( "updat" , layer , layer . updat_kernels , repeat )