graph2mat.bindings.torch.modules.graph2mat

Torch wrappers for Graph2Mat.

Classes

TorchGraph2Mat(*args, numpy[, ...])

Wrapper for Graph2Mat to make it use torch instead of numpy.

class graph2mat.bindings.torch.modules.graph2mat.TorchGraph2Mat(*args, numpy: ~types.ModuleType = <module 'torch' from '/opt/hostedtoolcache/Python/3.11.11/x64/lib/python3.11/site-packages/torch/__init__.py, self_interactions_list=torch.nn.modules.container.ModuleList, interactions_dict=torch.nn.modules.container.ModuleDict, **kwargs)[source]

Bases: Graph2Mat, Module

Wrapper for Graph2Mat to make it use torch instead of numpy.

It also makes Graph2Mat a torch.nn.Module, and it makes it store the list of node block functions as a torch.nn.ModuleList and the dictionary of edge block functions as a torch.nn.ModuleDict.

Parameters:

**kwargs – Additional arguments passed to the Graph2Mat class.

See also

Graph2Mat

The class that TorchGraph2Mat extends. Its documentation contains a more detailed explanation of the inner workings of the class.

__init__(*args, numpy: ~types.ModuleType = <module 'torch' from '/opt/hostedtoolcache/Python/3.11.11/x64/lib/python3.11/site-packages/torch/__init__.py, self_interactions_list=torch.nn.modules.container.ModuleList, interactions_dict=torch.nn.modules.container.ModuleDict, **kwargs)[source]
basis_table: BasisTableWithEdges

The table holding all information about the basis. This is an internal table created by the module from unique_basis, but it should probably be equal to the basis table that you use to process your data.

interactions: Dict[Tuple[int, int], MatrixBlock]

Dictionary of interaction functions (which compute edge blocks).

self_interactions: List[MatrixBlock]

List of self interaction functions (which compute node blocks).

training: bool