Simplex Convolutional Network Implementation for binary node classification.

class topomodelx.nn.simplicial.scn2.SCN2(in_channels_0, in_channels_1, in_channels_2, n_layers=2)[source]#

Simplex Convolutional Network Implementation for binary node classification.

Parameters:
in_channels_0int

Dimension of input features on nodes.

in_channels_1int

Dimension of input features on edges.

in_channels_2int

Dimension of input features on faces.

n_layersint

Amount of message passing layers.

forward(x_0, x_1, x_2, laplacian_0, laplacian_1, laplacian_2)[source]#

Forward computation.

Parameters:
x_0torch.Tensor, shape = (n_nodes, channels)

Node features.

x_1torch.Tensor, shape = (n_edges, channels)

Edge features.

x_2torch.Tensor, shape = (n_faces, channels)

Face features.

Returns:
x_0torch.Tensor, shape = (n_nodes, channels)

Final node hidden states.

x_1torch.Tensor, shape = (n_nodes, channels)

Final edge hidden states.

x_2torch.Tensor, shape = (n_nodes, channels)

Final face hidden states.