topobench.transforms.liftings.base module#

Abstract class for topological liftings.

class AbstractLifting(feature_lifting=None, **kwargs)#

Bases: BaseTransform

Abstract class for topological liftings.

Parameters:
feature_liftingstr, optional

The feature lifting method to be used. Default is ‘ProjectionSum’.

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting=None, **kwargs)#
forward(data)#

Apply the full lifting (topology + features) to the input data.

Parameters:
datatorch_geometric.data.Data

The input data to be lifted.

Returns:
torch_geometric.data.Data

The lifted data.

abstract lift_topology(data)#

Lift the topology of a graph to higher-order topological domains.

Parameters:
datatorch_geometric.data.Data

The input data to be lifted.

Returns:
dict

The lifted topology.

abstractmethod(funcobj)#

A decorator indicating abstract methods.

Requires that the metaclass is ABCMeta or derived from it. A class that has a metaclass derived from ABCMeta cannot be instantiated unless all of its abstract methods are overridden. The abstract methods can be called using any of the normal ‘super’ call mechanisms. abstractmethod() may be used to declare abstract methods for properties and descriptors.

Usage:

class C(metaclass=ABCMeta):

@abstractmethod def my_abstract_method(self, …):