PyGOD: A Python Library for Graph Outlier Detection
Authors: Kay Liu, Yingtong Dou, Xueying Ding, Xiyang Hu, Ruitong Zhang, Hao Peng, Lichao Sun, Philip S. Yu
JMLR 2024 | Venue PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | PyGOD already supports more than fifteen representative algorithms as shown in Table 1. Additionally, we provide unit tests with cross-platform continuous integration along with code coverage and maintainability checks. Code Demo 1: Using DOMINANT (Ding et al., 2019a) on Cora (Morris et al., 2020). eval_f1(data.y.bool(), pred) # evaluate by F1 eval_roc_auc(data.y.bool(), score) # evaluate by AUC |
| Researcher Affiliation | Collaboration | 1University of Illinois Chicago, 2Visa Research, 3Carnegie Mellon University, 4Arizona State University, 5Alibaba Group, 6Kunming University of Science and Technology, 7Shantou University, 8Lehigh University |
| Pseudocode | No | The paper does not contain structured pseudocode or algorithm blocks. Code Demo 1 shows an example of Python usage, not an algorithm's pseudocode. |
| Open Source Code | Yes | To facilitate accessibility, PyGOD is released under a BSD 2-Clause license at https://pygod.org and at the Python Package Index (PyPI). |
| Open Datasets | Yes | data = load_data("inj_cora") # load built-in dataset ... Code Demo 1: Using DOMINANT (Ding et al., 2019a) on Cora (Morris et al., 2020). |
| Dataset Splits | No | The paper mentions loading a built-in dataset (inj_cora) and an API design that includes `predict on test data`, but it does not provide specific details on how this dataset is split into training, validation, or testing sets (e.g., percentages, sample counts, or methodology). |
| Hardware Specification | No | PyGOD builds for Python 3.8+ and depends on the popular PyTorch (Paszke et al., 2019) and PyTorch Geometric (PyG) (Fey and Lenssen, 2019) packages for graph learning on both CPUs and GPUs. No specific hardware models (e.g., specific CPU or GPU models) are mentioned. |
| Software Dependencies | No | PyGOD builds for Python 3.8+ and depends on the popular PyTorch (Paszke et al., 2019) and PyTorch Geometric (PyG) (Fey and Lenssen, 2019) packages for graph learning on both CPUs and GPUs. Additionally, PyGOD uses NumPy (Harris et al., 2020), SciPy (Virtanen et al., 2020), and scikit-learn (Pedregosa et al., 2011), and NetworkX (Hagberg et al., 2008) for data manipulation. While Python 3.8+ is mentioned, specific version numbers for the other listed libraries are not provided for the PyGOD implementation itself. |
| Experiment Setup | Yes | Code Demo 1: model = DOMINANT(num_layers=4) # initialize the detector |