def METHOD_NAME(inputs: torch.tensor, threshold: float):
    """
    Args:
        inputs (`torch.FloatTensor`)
            The input matrix from which the binarizer computes the binary mask.
            This input marix is typically the weight matrix.
        threshold (`float`)
            The percentage of weights to keep (the rest is pruned).
            `threshold` is a float between 0 and 1.
    Returns:
        mask (`torch.FloatTensor`)
            Binary matrix of the same size as `inputs` acting as a mask (1 - the associated weight is
            retained, 0 - the associated weight is pruned).
    """
    # Get the subnetwork by sorting the inputs and using the top threshold %
    mask = inputs.clone()
    _, idx = inputs.abs().flatten().sort(descending=True)
    j = int(threshold * inputs.numel())
    # flat_out and mask access the same memory.
    flat_out = mask.flatten()
    flat_out[idx[j:]] = 0
    flat_out[idx[:j]] = 1
    return mask