Skip to content

cylinder_patch_based_geometric_compression

Bases: geometric_compression

The cylinder patch based geometric compression function.

It performs the data compression based on cylinder geometric patch shapes and provided compression metric. This class inherits from the geometric_compression class, and only redefines the initialization method.

...

Attributes:

Name Type Description
metric Callable[[Tensor], Tensor]

The geometric compression metric.

name str, default = 'cylinder_patch_based_geometric_compression'

Name of the compression function.

p_r int

Radius of the circular surface of the cylinder shape.

p_d int

Depth of the cylinder patch along the negative direction.

p_d_prime int, default = None

Depth of the cylinder patch along the positive direction.

Methods:

Name Description
__init__

It performs the initialization of the compression function based on the provided metric and cylinder patch shapes.

Source code in tinybig/compression/geometric_compression.py
class cylinder_patch_based_geometric_compression(geometric_compression):
    """
        The cylinder patch based geometric compression function.

        It performs the data compression based on cylinder geometric patch shapes and provided compression metric.
        This class inherits from the geometric_compression class, and only redefines the initialization method.

        ...

        Attributes
        ----------
        metric: Callable[[torch.Tensor], torch.Tensor]
            The geometric compression metric.
        name: str, default = 'cylinder_patch_based_geometric_compression'
            Name of the compression function.
        p_r: int
            Radius of the circular surface of the cylinder shape.
        p_d: int
            Depth of the cylinder patch along the negative direction.
        p_d_prime: int, default = None
            Depth of the cylinder patch along the positive direction.

        Methods
        ----------
        __init__
            It performs the initialization of the compression function based on the provided metric and cylinder patch shapes.
    """
    def __init__(
        self,
        metric: Callable[[torch.Tensor], torch.Tensor],
        p_r: int, p_d: int, p_d_prime: int = None,
        name: str = 'cylinder_patch_based_geometric_compression',
        *args, **kwargs
    ):
        """
            The initialization method of the cylinder patch based geometric compression function.

            It initializes the cylinder compression function based on the provided cylinder patch shape
            of the data segments to be compressed in the provided grid structure.

            Parameters
            ----------
            metric: Callable[[torch.Tensor], torch.Tensor]
                The geometric compression metric.
            name: str, default = 'cylinder_patch_based_geometric_compression'
                Name of the compression function.
            p_r: int
                Radius of the circular surface of the cylinder shape.
            p_d: int
                Depth of the cylinder patch along the negative direction.
            p_d_prime: int, default = None
                Depth of the cylinder patch along the positive direction.

            Returns
            ----------
            transformation
                The cylinder geometric compression function.
        """
        patch = cylinder(p_r=p_r, p_d=p_d, p_d_prime=p_d_prime)
        super().__init__(name=name, metric=metric, patch=patch, *args, **kwargs)

__init__(metric, p_r, p_d, p_d_prime=None, name='cylinder_patch_based_geometric_compression', *args, **kwargs)

The initialization method of the cylinder patch based geometric compression function.

It initializes the cylinder compression function based on the provided cylinder patch shape of the data segments to be compressed in the provided grid structure.

Parameters:

Name Type Description Default
metric Callable[[Tensor], Tensor]

The geometric compression metric.

required
name str

Name of the compression function.

'cylinder_patch_based_geometric_compression'
p_r int

Radius of the circular surface of the cylinder shape.

required
p_d int

Depth of the cylinder patch along the negative direction.

required
p_d_prime int

Depth of the cylinder patch along the positive direction.

None

Returns:

Type Description
transformation

The cylinder geometric compression function.

Source code in tinybig/compression/geometric_compression.py
def __init__(
    self,
    metric: Callable[[torch.Tensor], torch.Tensor],
    p_r: int, p_d: int, p_d_prime: int = None,
    name: str = 'cylinder_patch_based_geometric_compression',
    *args, **kwargs
):
    """
        The initialization method of the cylinder patch based geometric compression function.

        It initializes the cylinder compression function based on the provided cylinder patch shape
        of the data segments to be compressed in the provided grid structure.

        Parameters
        ----------
        metric: Callable[[torch.Tensor], torch.Tensor]
            The geometric compression metric.
        name: str, default = 'cylinder_patch_based_geometric_compression'
            Name of the compression function.
        p_r: int
            Radius of the circular surface of the cylinder shape.
        p_d: int
            Depth of the cylinder patch along the negative direction.
        p_d_prime: int, default = None
            Depth of the cylinder patch along the positive direction.

        Returns
        ----------
        transformation
            The cylinder geometric compression function.
    """
    patch = cylinder(p_r=p_r, p_d=p_d, p_d_prime=p_d_prime)
    super().__init__(name=name, metric=metric, patch=patch, *args, **kwargs)