Streamlined Graph Learning with PyG. We choose to develop PyGOD on top of the popular PyG Llibrary for multiple reasons. First, this reduces the complexity in processing graph data for users.
That is, PyGOD only requires the input data to be in the standard graph data format in PyGPyG data object: https://pytorch-geometric.readthedocs.io/en/latest/modules/data.html.
Notably, different detection models need distinct information from a PyG graph.
Within the implementation of each detection model, we design an abstract process_graph method to extract necessary information, e.g., the adjacency matrix, node, and edge attributes, etc., for the underlying detection algorithm.
Second, most of the detection algorithms share common backbones (see Table REF ) like graph convolutional neural networks (GCN) [1]} and graph autoencoders [2]}, where PyG already provides optimized implementation.
Third, PyG is the most popular GNN libraries with advanced functions like graph sampling and distributed training. Under the PyG framework, we enable and implement mini-batch and/or sampling for selected models to accommodate the learning with large graphs as shown in Table REF .
