crypten/common/functions/regular.py [170:194]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        mean = self.mean()
    elif len(args) == 1:
        dim = args[0]
        unbiased = kwargs.get("unbiased", False)
        keepdim = kwargs.get("keepdim", False)
    elif len(args) == 2:
        dim, unbiased = args[0], args[1]
        keepdim = kwargs.get("keepdim", False)
    else:
        dim, unbiased, keepdim = args[0], args[1], args[2]

    if dim is not None:  # dimension is specified
        mean = self.mean(dim, keepdim=True)

    # Compute square error
    result = (self - mean).square()
    if dim is None:
        result = result.sum()
    else:
        result = result.sum(dim, keepdim=keepdim)

    # Determine divisor
    divisor = self.nelement() // result.nelement()
    if not unbiased:
        divisor -= 1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



crypten/gradients.py [1237:1261]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            mean = self.mean()
        elif len(args) == 1:
            dim = args[0]
            unbiased = kwargs.get("unbiased", False)
            keepdim = kwargs.get("keepdim", False)
        elif len(args) == 2:
            dim, unbiased = args[0], args[1]
            keepdim = kwargs.get("keepdim", False)
        else:
            dim, unbiased, keepdim = args[0], args[1], args[2]

        if dim is not None:  # dimension is specified
            mean = self.mean(dim, keepdim=True)

        # Compute square error
        result = (self - mean).square()
        if dim is None:
            result = result.sum()
        else:
            result = result.sum(dim, keepdim=keepdim)

        # Determine divisor
        divisor = self.nelement() // result.nelement()
        if not unbiased:
            divisor -= 1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



