0 purchases
UGFraud 0.1.1.3
An Unsupervised Graph-based Toolbox for Fraud Detection
Introduction:
UGFraud is an unsupervised graph-based fraud detection toolbox that integrates several state-of-the-art graph-based fraud detection algorithms. It can be applied to bipartite graphs (e.g., user-product graph), and it can estimate the suspiciousness of both nodes and edges. The implemented models can be found here.
The toolbox incorporates the Markov Random Field (MRF)-based algorithm, dense-block detection-based algorithm, and SVD-based algorithm. For MRF-based algorithms, the users only need the graph structure and the prior suspicious score of the nodes as the input. For other algorithms, the graph structure is the only input.
Meanwhile, we have a deep graph-based fraud detection toolbox which implements state-of-the-art graph neural network-based fraud detectors.
We welcome contributions on adding new fraud detectors and extending the features of the toolbox. Some of the planned features are listed in TODO list.
If you use the toolbox in your project, please cite the paper below and the algorithms you used :
@inproceedings{dou2020robust,
title={Robust Spammer Detection by Nash Reinforcement Learning},
author={Dou, Yingtong and Ma, Guixiang and Yu, Philip S and Xie, Sihong},
booktitle={Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery \& Data Mining},
year={2020}
}
Useful Resources
DGFraud: A Deep Graph-based Fraud Detection Toolbox
Graph-based Fraud Detection Paper List
Awesome Fraud Detection Papers
Attack and Defense Papers on Graph Data
PyOD: A Python Toolbox for Scalable Outlier Detection (Anomaly Detection)
PyODD: An End-to-end Outlier Detection System
DGL: Deep Graph Library
Outlier Detection DataSets (ODDS)
Table of Contents
Installation
User Guide
Implemented Models
Model Comparison
TODO List
How to Contribute
Installation
You can install UGFraud from pypi:
pip install UGFraud
or download and install from github:
git clone https://github.com/safe-graph/UGFraud.git
cd UGFraud
python setup.py install
Dataset
The demo data is not the intact data (rating and date information are missing). The rating information is only used in ZooBP demo. If you need the intact date to play demo, please email [email protected] to download the intact data from Yelp Spam Review Dataset. The metadata.gz file in /UGFraud/Yelp_Data/YelpChi includes:
user_id: 38063 number of users
product_id: 201 number of products
rating: from 1.0 (low) to 5.0 (high)
label: -1 is not spam, 1 is spam
date: data creation time
User Guide
Running the example code
You can find the implemented models in /UGFraud/Demo directory. For example, you can run fBox using:
python eval_fBox.py
Running on your datasets
Have a look at the /UGFraud/Demo/data_to_network_graph.py to convert your own data into a graph (networkx graph.
In order to use your own data, you have to provide the following information at least:
a dict of dict:
'user_id':{
'product_id':
{
'label': 1
}
a dict of prior
You can use dict_to networkx(graph_dict) function from /Utils/helper.py file to convert your graph_dict into a networkx graph.
For more detial, please see data_to_network_graph.py.
The structure of code
The /UGFraud repository is organized as follows:
Demo/ contains the implemented models and the corresponding example code;
Detector/ contains the basic models;
Yelp_Data/ contains the necessary dataset files;
Utils/ contains the every help functions.
Implemented Models
Model
Paper
Venue
Reference
SpEagle
Collective Opinion Spam Detection: Bridging Review Networks and Metadata
KDD 2015
BibTex
GANG
GANG: Detecting Fraudulent Users in Online Social Networks via Guilt-by-Association on Directed Graph
ICDM 2017
BibTex
fBox
Spotting Suspicious Link Behavior with fBox: An Adversarial Perspective
ICDM 2014
BibTex
Fraudar
FRAUDAR: Bounding Graph Fraud in the Face of Camouflage
KDD 2016
BibTex
ZooBP
ZooBP: Belief Propagation for Heterogeneous Networks
VLDB 2017
BibTex
SVD
Singular value decomposition and least squares solutions
-
BibTex
Prior
Evaluating suspicioueness based on prior information
-
-
Model Comparison
Model
Application
Graph Type
Model Type
SpEagle
Review Spam
Tripartite
MRF
GANG
Social Sybil
Bipartite
MRF
fBox
Social Fraudster
Bipartite
SVD
Fraudar
Social Fraudster
Bipartite
Dense-block
ZooBP
E-commerce Fraud
Tripartite
MRF
SVD
Dimension Reduction
Bipartite
SVD
TODO List
Homogeneous graph implementation
How to Contribute
You are welcomed to contribute to this open-source toolbox. Currently, you can create issues or send email to [email protected] for inquiry.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.