A collection of data mining algorithms on big graphs and time series
spartan2 is a collection of data mining algorithms on big graphs and
time series, providing three basic tasks: anomaly detection,
forecast, and summarization. (see readthedocs, and tutorials )
Graphs and time series are fundamental representations of many key applications
in a wide range of
In practice, we find that thinking graphs and time series as matrices or tensors
can enable us to find efficient (near linear), interpretable, yet accurate solutions in many applications.
Therefore, our goal is developping a collectioin of algorithms on graphs and time series based
on tensors (matrix is a 2-mode tensor).
In real world, those tensors are sparse, and we
are required to make use of the sparsity to develop efficient algorithms.
That is why we name the package as
spartan: sparse tensor analytics.
The package named spartan can be imported and run independently as a usual python package.
Everything in package spartan is viewed as a tensor (sparse).
This project requires Python 3.7 and upper.
We suggest recreating the experimental environment using Anaconda through the following steps.
Install the appropriate version for Anaconda from here - https://www.anaconda.com/distribution/
Create a new conda environment named “spartan”
conda create -n spartan python=3.7
conda activate spartan
If you are a normal USER,
# install spartan using pip
pip install spartan2
If you want to contribute, or prefer to run directly on the code,
bash
git clone git@github.com:BGT-M/spartan2.git
bash
# [not recommended]# pip install --user --requirement requirements
# using conda tool
conda install --force-reinstall -y --name spartan -c conda-forge --file requirements
bash
# this may not work in ubuntu 18.04
python setup.py install
bash
# in parent directory of spartan2
pip install -e spartan2
bash
export PYTHONPATH=/<dir to spartan2>/spartan2:$PYTHONPATH
python
import sys
sys.path.append("/<dir to spartan2>/spartan2")
bash
#find directory of site-packages
python -c 'import site; print(site.getsitepackages())'
#add \<name\>.pth file in your site-packages directory with string '/<dir to spartan2>/spartan2'
Type | Abbr | Paper | Year | Tutorials |
---|---|---|---|---|
Graph | spartan.HoloScope | [1] HoloScope: Topology-and-Spike Aware Fraud Detection [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGsqJs:AAGBfm0AAAAAYl-qsJvi9t90zhgcm20QFQKe3In-ak_4&scisig=AAGBfm0AAAAAYl-qsM3_hRgnbhToH1xl6vPPvAqAWWLW&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] [2] A Contrast Metric for Fraud Detection in Rich Graphs [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGtTfw:AAGBfm0AAAAAYl-rVfy-DhMFowBZIcvf2j6FxHdf9SG0&scisig=AAGBfm0AAAAAYl-rVXIObYCkVW7zzyvR2vsg82rxVu6_&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] |
2017 2019 |
HoloScope |
Graph | spartan.Eigenspokes | [3] Eigenspokes: Surprising patterns and scalable community chipping in large graphs [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGt2fg:AAGBfm0AAAAAYl-rwfiY3cBc4sbe0DQ1zI_5vOZKZvsL&scisig=AAGBfm0AAAAAYl-rwct94h11DB0JGGOlhtyVDzOQAmGu&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2010 | Eigenspokes |
Graph | spartan.EagleMine | [4] EagleMine: Vision-guided Micro-clusters recognition and collective anomaly detection [pdf] scholar.google.com/&output=citation&scisdr=CgWn_i8VELHrwZFKzN0:AAGBfm0AAAAAYmtP1N0ivIme2D7w_PpQzjQM0RrCiupy&scisig=AAGBfm0AAAAAYmtP1AdwcwDSfhqh4qF0K9GQ4d5BlUny&scisf=4&ct=citation&cd=-1&hl=en">[bib] Beyond outliers and on to micro-clusters: Vision-guided anomaly detection [pdf] scholar.google.com/&output=citation&scisdr=CgWn_i8VELHrwZFXGyM:AAGBfm0AAAAAYmtSAyOFZbSm7Ykzu0wLEaHiH5dEg_D5&scisig=AAGBfm0AAAAAYmtSAxPgpRdIquO8yiF4Bdzv-LYmjVoW&scisf=4&ct=citation&cd=-1&hl=en">[bib] |
2021 2019 |
EagleMine |
Graph | spartan.Fraudar | [5] Fraudar: Bounding graph fraud in the face of camouflage [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGt9Xc:AAGBfm0AAAAAYl-r7Xd-6mLNmUbQxg1uayrYJlURHVOp&scisig=AAGBfm0AAAAAYl-r7ZEcoy8XyrI0yhyABnm50HdYj0K_&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2016 | Fraudar |
Graph | spartan.DPGS | [6] DPGS: Degree-Preserving Graph Summarization [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqHZY:AAGBfm0AAAAAYl-sBZaRFQmrJx5N_kAREk-gKm7YYNQa&scisig=AAGBfm0AAAAAYl-sBe3YdPWS2HKGLhYpRWVXVfEH_vx3&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2021 | DPGS |
Graph | spartan.EigenPulse | [7] EigenPulse: Detecting Surges in Large Streaming Graphs with Row Augmentation [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqDxA:AAGBfm0AAAAAYl-sFxCgazegMNgTpiRIfnS3yTB2KylB&scisig=AAGBfm0AAAAAYl-sF6gcDlB_MvXV40kKvjGAnfG2BIgr&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2019 | EigenPulse |
Graph | spartan.FlowScope | [8] FlowScope: Spotting Money Laundering Based on Graphs [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqN-8:AAGBfm0AAAAAYl-sL-9q0VZ0BrLYhf2l74rXRQoP8cuE&scisig=AAGBfm0AAAAAYl-sL-jeaAspS90ZoR9rxklbdNUCiSIm&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2020 | FlowScope |
Graph | spartan.kGrass | [9] GraSS: Graph structure summarization [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqWMA:AAGBfm0AAAAAYl-sQMD14UtTxhKsp_oA7zSIRy-WadA2&scisig=AAGBfm0AAAAAYl-sQAjwBpfLFRBFBnaUfLl-bmfRGHGW&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2010 | kGrass |
Graph | spartan.IAT | [10] RSC: Mining and modeling temporal activity in social media [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqRdo:AAGBfm0AAAAAYl-sXdqwuLOSp8pBWvdIWdIar1cvgRXw&scisig=AAGBfm0AAAAAYl-sXY0yOktkYEcOeKED3TJiYjFYxv9-&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2015 | IAT |
Graph | spartan.CubeFlow | [11] CubeFlow: Money Laundering Detection with Coupled Tensors [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqZM4:AAGBfm0AAAAAYl-sfM5bxT4PH7UnPWisGJ_GqiyJaHtA&scisig=AAGBfm0AAAAAYl-sfPaRdTlmv1K-LEIjcEPbDXsVWqRh&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2021 | CubeFlow |
Graph | spartan.SpecGreedy | [12] Specgreedy: unified dense subgraph detection [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqlq0:AAGBfm0AAAAAYl-sjq1OnEb4MYGD5IRKP4ZHfqBZ2WRS&scisig=AAGBfm0AAAAAYl-sjo13h7RhyfCbKY6bJUIT804zBoLl&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2020 | SpecGreedy |
Graph | spartan.MonLAD | [13] MonLAD: Money Laundering Agents Detection in Transaction Streams [pdf] | 2022 | MonLAD |
Time Series | spartan.BeatLex | [14] BEATLEX: Summarizing and Forecasting Time Series with Patterns [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGq0d8:AAGBfm0AAAAAYl-syd9yVZFzWiYMiHdbUG0Otq_40L_4&scisig=AAGBfm0AAAAAYl-syQvhHWrRiDudGxesup58a12Rb2fj&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] | 2017 | Beatlex |
Time Series | spartan.BeatGAN | [15] BeatGAN: Anomalous Rhythm Detection using Adversarially Generated Time Series [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGqwVQ:AAGBfm0AAAAAYl-s2VSO3uxiyQMF9ttr8Cvvwj2034HZ&scisig=AAGBfm0AAAAAYl-s2Vv9GFSCyVpThmaCvfxrxGjIuU6L&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] [16] Time Series Anomaly Detection with Adversarial Reconstruction Networks [pdf] scholar.google.com/&output=citation&scisdr=CgVSaNk4EIGjstGq_0M:AAGBfm0AAAAAYl-s50Orj2CzeO_ef9IUAjpK3Q5xFBuk&scisig=AAGBfm0AAAAAYl-s56FvzCW7mHJ5VTdWoDSDQF8HsvTu&scisf=4&ct=citation&cd=-1&hl=zh-CN">[bib] |
2019 2022 |
BeatGAN |
Wenjie Feng, Shenghua Liu, Christos Faloutsos, Bryan Hooi, Huawei Shen, and Xueqi Cheng. EagleMine: Vision-guided Micro-clusters recognition and collective anomaly detection, Future Generation Computer Systems, Vol 115, Feb 2021, pp.236-250.
Wenjie Feng, Shenghua Liu, Christos Faloutsos, Bryan Hooi, Huawei Shen, Xueqi Cheng, Beyond outliers and on to micro-clusters: Vision-guided anomaly detection, In Proc. of the 23rd Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD 2019), 2019, Macau, China, pp541-554.