'Normalize inputs (x) over batch mean and variance.
xhat = (x - xmean) / xvar
Scale and shift normalized inputs (xhat) by learned parameters gamma and beta.
y = xhat * gamma + beta
Accumulate partial results to global mean and variance buffers used for inference.
Arguments:
inputs:
inference:  (Default value = False)
beta:  (Default value = 0.0)
Returns:
Tensor: output data'

def fprop(self, inputs, inference=False, beta=0.0):

    if ((self.inputs is None) or (self.inputs.base is not inputs)):
        self.inputs = inputs.reshape((self.nfm, (-1)))
    self.be.compound_fprop_bn(self.inputs, self.xsum, self.xvar, self.gmean, self.gvar, self.gamma, self.beta, self.y, self.eps, self.rho, self.compute_batch_sum, beta, self.relu, binary=self.binary, inference=inference, outputs=self.outputs, layer=self.nglayer)
    return self.outputs
