/ Machine Learning

A Python Toolkit for Scalable Outlier Detection

A Python Toolkit for Scalable Outlier Detection

Python Outlier Detection (PyOD)

Build Status & Code Coverage & Maintainability

PyOD is a comprehensive and scalable Python toolkit for detecting outlying objects in multivariate data. This exciting yet challenging field is commonly referred as Outlier Detection or Anomaly Detection. Since 2017, PyOD has been successfully used in various academic researches and commercial products . PyOD is featured for:

  • Unified APIs, detailed documentation, and interactive examples across various algorithms.
  • Advanced models, including Neural Networks/Deep Learning and Outlier Ensembles.
  • Optimized performance with JIT and parallelization when possible, using numba and joblib.
  • Compatible with both Python 2 & 3 (scikit-learn compatible as well).

Important Notes: PyOD contains some neural network based models, e.g., AutoEncoders, which are implemented in keras. However, PyOD would NOT install Keras and/or TensorFlow automatically. This reduces the risk of damaging your local installations. So you should install keras and back-end libraries like TensorFlow, if you want to use neural net based models. An instruction is provided: issue19b.

GitHub