PREM: A Simple Yet Effective Approach for Node-Level Graph Anomaly Detection

Junjun Pan, Yixin Liu, Yizhen Zheng, Shirui Pan
10/18/2023
cs.LGcs.AI

No official code found. Best implementation: CampanulaBells/PREM-GAD (13 stars, last commit 2024-05-09).

Abstract

Node-level graph anomaly detection (GAD) plays a critical role in identifying anomalous nodes from graph-structured data in various domains such as medicine, social networks, and e-commerce. However, challenges have arisen due to the diversity of anomalies and the dearth of labeled data. Existing methodologies - reconstruction-based and contrastive learning - while effective, often suffer from efficiency issues, stemming from their complex objectives and elaborate modules. To improve the efficiency of GAD, we introduce a simple method termed PREprocessing and Matching (PREM for short). Our approach streamlines GAD, reducing time and memory consumption while maintaining powerful anomaly detection capabilities. Comprising two modules - a pre-processing module and an ego-neighbor matching module - PREM eliminates the necessity for message-passing propagation during training, and employs a simple contrastive loss, leading to considerable reductions in training time and memory usage. Moreover, through rigorous evaluations of five real-world datasets, our method demonstrated robustness and effectiveness. Notably, when validated on the ACM dataset, PREM achieved a 5% improvement in AUC, a 9-fold increase in training speed, and sharply reduce memory usage compared to the most efficient baseline.

View on arXivView PDF

Code Implementations(1)

Code for IEEE ICDM 23 PREM: A Simple Yet Effective Approach for Node-Level Graph Anomaly Detection

135PythonSep 20, 20232 years ago

Similar Papers

Cite this paper

@article{pan2023prem,
  title  = {PREM: A Simple Yet Effective Approach for Node-Level Graph Anomaly Detection},
  author = {Junjun Pan and Yixin Liu and Yizhen Zheng and Shirui Pan},
  year   = {2023},
  eprint = {2310.11676},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2310.11676v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2310.11676.svg)](https://codeofpaper.com/paper/2310.11676)

Discussion