jlidw / FluxEV

Code for the WSDM 2021 paper "FluxEV: A Fast and Effective Unsupervised Framework for Time-Series Anomaly Detection".

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FluxEV

The code is for our paper "FluxEV: A Fast and Effective Unsupervised Framework for Time-Series Anomaly Detection" and this paper has been accepted by WSDM 2021.

😉 About Name: "Flux" means the Fluctuation, "EV" denotes the Extreme Value.

💫 Good News: FluxEV has been integrated into OATS, a convenient Python library providing various approaches to time series anomaly detection. Thanks for their awesome work!

Requirements

  • numpy
  • numba
  • scipy
  • pandas
  • scikit-learn
  • matplotlib (plot)
  • more-itertools (plot)

Datasets

  1. KPI.
  1. Yahoo.

Instructions

preprocessing.py:

  • Fill the missing points for KPI dataset.

spot_pipe.py:

  • SPOT function is modified to be a part of FluxEV for streaming detection;
  • MOM(Method of Moments) is added as one of parameter estimation methods;
  • For the original code, please refer to SPOT (Streaming Peaks-Over-Threshold)

eval_methods.py:

main.py:

  • Implement streaming detection of FluxEV.

Run

python main.py --dataset=KPI
python main.py --dataset=Yahoo

Citation

@inproceedings{li2021fluxev,
  title={FluxEV: A Fast and Effective Unsupervised Framework for Time-Series Anomaly Detection},
  author={Li, Jia and Di, Shimin and Shen, Yanyan and Chen, Lei},
  booktitle={Proceedings of the 14th ACM International Conference on Web Search and Data Mining},
  pages={824--832},
  year={2021}
}

About

Code for the WSDM 2021 paper "FluxEV: A Fast and Effective Unsupervised Framework for Time-Series Anomaly Detection".


Languages

Language:Python 100.0%