Wrappers#
Abstract class that provides an interface to handle the network output.
- class topobenchmarkx.nn.wrappers.base.AbstractWrapper(backbone, **kwargs)[source]#
Abstract class that provides an interface to handle the network output.
- Parameters:
- backbonetorch.nn.Module
Backbone model.
- **kwargsdict
Additional arguments for the class. It should contain the following keys: - out_channels (int): Number of output channels. - num_cell_dimensions (int): Number of cell dimensions.
- abstract forward(batch)[source]#
Forward pass for the model.
- Parameters:
- batchtorch_geometric.data.Data
Batch object containing the batched data.
- residual_connection(model_out, batch)[source]#
Residual connection for the model.
This method sums, for the embeddings of the cells of any rank, the output of the model with the input embeddings and applies layer normalization.
- Parameters:
- model_outdict
Dictionary containing the model output.
- batchtorch_geometric.data.Data
Batch object containing the batched data.
- Returns:
- dict
Dictionary containing the updated model output.
CAN wrapper module.
- class topobenchmarkx.nn.wrappers.cell.can_wrapper.CANWrapper(backbone, **kwargs)[source]#
Wrapper for the CAN model.
This wrapper defines the forward pass of the model. The CAN model returns the embeddings of the cells of rank 1. The embeddings of the cells of rank 0 are computed as the sum of the embeddings of the cells of rank 1 connected to them.
Wrapper for the CCCN model.
- class topobenchmarkx.nn.wrappers.cell.cccn_wrapper.CCCNWrapper(backbone, **kwargs)[source]#
Wrapper for the CCCN model.
This wrapper defines the forward pass of the model. The CCCN model returns the embeddings of the cells of rank 1. The embeddings of the cells of rank 0 are computed as the sum of the embeddings of the cells of rank 1 connected to them.
Wrapper for the CCXN model.
- class topobenchmarkx.nn.wrappers.cell.ccxn_wrapper.CCXNWrapper(backbone, **kwargs)[source]#
Wrapper for the CCXN model.
This wrapper defines the forward pass of the model. The CCXN model returns the embeddings of the cells of rank 0, 1, and 2.
Wrapper for the CWN model.
- class topobenchmarkx.nn.wrappers.cell.cwn_wrapper.CWNWrapper(backbone, **kwargs)[source]#
Wrapper for the CWN model.
This wrapper defines the forward pass of the model. The CWN model returns the embeddings of the cells of rank 0, 1, and 2.
Wrapper for the GNN models.
- class topobenchmarkx.nn.wrappers.graph.gnn_wrapper.GNNWrapper(backbone, **kwargs)[source]#
Wrapper for the GNN models.
This wrapper defines the forward pass of the model. The GNN models return the embeddings of the cells of rank 0.
Wrapper for the hypergraph models.
- class topobenchmarkx.nn.wrappers.hypergraph.hypergraph_wrapper.HypergraphWrapper(backbone, **kwargs)[source]#
Wrapper for the hypergraph models.
This wrapper defines the forward pass of the model. The hypergraph model return the embeddings of the cells of rank 0, and 1 (the hyperedges).
Wrapper for the SAN model.
- class topobenchmarkx.nn.wrappers.simplicial.san_wrapper.SANWrapper(backbone, **kwargs)[source]#
Wrapper for the SAN model.
This wrapper defines the forward pass of the model. The SAN model returns the embeddings of the cells of rank 1. The embeddings of the cells of rank 0 are computed as the sum of the embeddings of the cells of rank 1 connected to them.
Wrapper for the SCCN model.
- class topobenchmarkx.nn.wrappers.simplicial.sccn_wrapper.SCCNWrapper(backbone, **kwargs)[source]#
Wrapper for the SCCN model.
This wrapper defines the forward pass of the model. The SCCN model returns the embeddings of the cells of any rank.
Wrapper for the SCCNN model.
- class topobenchmarkx.nn.wrappers.simplicial.sccnn_wrapper.SCCNNWrapper(backbone, **kwargs)[source]#
Wrapper for the SCCNN model.
This wrapper defines the forward pass of the model. The SCCNN model returns the embeddings of the cells of rank 0, 1, and 2.
Wrapper for the SCNW model.
- class topobenchmarkx.nn.wrappers.simplicial.scn_wrapper.SCNWrapper(backbone, **kwargs)[source]#
Wrapper for the SCNW model.
This wrapper defines the forward pass of the model. The SCNW model returns the embeddings of the cells of rank 0, 1, and 2.
- forward(batch)[source]#
Forward pass for the SCNW wrapper.
- Parameters:
- batchtorch_geometric.data.Data
Batch object containing the batched data.
- Returns:
- dict
Dictionary containing the updated model output.
- normalize_matrix(matrix)[source]#
Normalize the input matrix.
The normalization is performed using the diagonal matrix of the inverse square root of the sum of the absolute values of the rows.
- Parameters:
- matrixtorch.sparse.FloatTensor
Input matrix to be normalized.
- Returns:
- torch.sparse.FloatTensor
Normalized matrix.