topobench.transforms.liftings package#

This module implements the liftings for the topological transforms.

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.

class CellComplexLifting(feature_lifting='ProjectionSum', **kwargs)#

Bases: AbstractLifting

Abstract class for lifting cell complexes to other domains.

Parameters:
feature_liftingstr, optional

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

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', **kwargs)#
class CombinatorialLifting(feature_lifting='ProjectionSum', **kwargs)#

Bases: AbstractLifting

Abstract class for lifting combinatorial complexes to other domains.

Parameters:
feature_liftingstr, optional

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

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', **kwargs)#
class GraphLifting(feature_lifting='ProjectionSum', preserve_edge_attr=False, **kwargs)#

Bases: AbstractLifting

Abstract class for lifting graph topologies to other domains.

Parameters:
feature_liftingstr, optional

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

preserve_edge_attrbool, optional

Whether to preserve edge attributes. Default is False.

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', preserve_edge_attr=False, **kwargs)#
class HypergraphLifting(feature_lifting='ProjectionSum', **kwargs)#

Bases: AbstractLifting

Abstract class for lifting hypergraphs to other domains.

Parameters:
feature_liftingstr, optional

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

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', **kwargs)#
class PointCloudLifting(feature_lifting='ProjectionSum', **kwargs)#

Bases: AbstractLifting

Abstract class for lifting point clouds to other topological domains.

Parameters:
feature_liftingstr, optional

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

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', **kwargs)#
class SimplicialLifting(feature_lifting='ProjectionSum', **kwargs)#

Bases: AbstractLifting

Abstract class for lifting simplicial complexes to other domains.

Parameters:
feature_liftingstr, optional

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

**kwargsoptional

Additional arguments for the class.

__init__(feature_lifting='ProjectionSum', **kwargs)#

Subpackages#

Submodules#